php如何使用Aes进行加密

php可以查看用户的标识判断用户是否登录,但是此标识可以修改,修改之后就可以获取到修改的用户所有信息,因此我们需要对值进行加密。下面就跟着小编一起去看看如何使用Aes进行加密。

php如何使用Aes进行加密

在项目中,尤其是pc端的时候,我们在用户登录后会给前端返回一个标识,来判断用户是否登录,这个标识大多数都是用户的id。

image.png但是这里存在很大的弊端,那就是这个值可以修改,假如说把我这个值一修改,我就可以获取到修改的用户的所有信息,可怕吧!

那么今天就使用aes进行加密处理一下

key = '1234567891112121';    }    /**     * 加密     * @param String input 加密的字符串     * @param String key   解密的key     * @return HexString     */    public function encrypt($input = '') {        $size = mcrypt_get_block_size(MCRYPT_RIJNDAEL_128, MCRYPT_MODE_ECB);        $input = $this->pkcs5_pad($input, $size);        $td = mcrypt_module_open(MCRYPT_RIJNDAEL_128, '', MCRYPT_MODE_ECB, '');        $iv = mcrypt_create_iv(mcrypt_enc_get_iv_size($td), MCRYPT_RAND);        mcrypt_generic_init($td, $this->key, $iv);        $data = mcrypt_generic($td, $input);        mcrypt_generic_deinit($td);        mcrypt_module_close($td);        $data = base64_encode($data);                return $data;    }    /**     * 填充方式 pkcs5     * @param String text  原始字符串     * @param String blocksize   加密长度     * @return String     */    private function pkcs5_pad($text, $blocksize) {        $pad = $blocksize - (strlen($text) % $blocksize);        return $text . str_repeat(chr($pad), $pad);    }    /**     * 解密     * @param String input 解密的字符串     * @param String key   解密的key     * @return String     */    public function decrypt($sStr) {        $decrypted= mcrypt_decrypt(MCRYPT_RIJNDAEL_128,$this->key,base64_decode($sStr), MCRYPT_MODE_ECB);        $dec_s = strlen($decrypted);        $padding = ord($decrypted[$dec_s-1]);        $decrypted = substr($decrypted, 0, -$padding);        return $decrypted;    }}

登录后复制

这是一个aes的工具类。注意一下,这个值需要我们来自改,而且是16位,这样我们用户在登录时会把id返回给前端。

image.png            

立即学习“PHP免费学习笔记(深入)”;

首先在控制器引入

image.png                                           

然后进行实例化

image.png            用户在登录成功后我们把这个值给加密返回前端

image.png

这个u_id就是加密后的值

image.png                          然后我们在comment文件设置这俩个方法,这俩个方法是对参数进行统一处理,那么我么那就在这里判断一下,凡是用到用户id的接口把用户id进行解密即可

image.png

推荐学习:php视频教程

以上就是php如何使用Aes进行加密的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2516967.html

(0)
上一篇 2025年3月5日 15:58:10
下一篇 2025年2月23日 14:07:19

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • php提示Array怎么办

    本文将讲解数组当成了字符串使用,php提示array to string conversion的两种解决方法。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。 第一种 这种场景比较少,大多数都是新手才会犯,也很容易发现解决错…

    2025年3月5日
    200
  • php如何压缩图片保持大小不变

    压缩方法:1、使用getimagesize()函数获取图像信息;2、将原图复制到图片载体上,使用imagecopyresampled()函数按比例压缩,并保持清晰度和图片长宽不变;3、使用saveImage()保存图片。 本教程操作环境:w…

    2025年3月5日
    200
  • linux如何配置php环境变量

    设置方法:1、打开profile配置文件;2、执行“export PATH=$PATH:/路径”命令添加PHP运行目录;3、使用“:wq”命令保存配置并退出;4、执行“source /etc/profile”命令使添加的配置生效。 本文操作…

    2025年3月5日
    200
  • 如何将PHP数组数据转换为json

    在php中,可以使用json_encode()函数来将数组数据转换成json。json_encode()函数可以对变量进行json编码,如果转换成功则返回json数据,反之则返回false。 本教程操作环境:windows7系统、PHP7.…

    2025年3月5日
    200
  • php错误日志怎么看

    查看方法:1、配置“php.ini”文件;2、使用phpinfo()命令查看错误日志地址;3、使用“vi /etc/php.ini”命令查看日志位置;4、使用“tail -f -50 /var/php_errors.log”查看日志。 本教…

    2025年3月5日
    200
  • 在PHP中如何为匿名函数指定this

        关于闭包匿名函数,在js中有个很典型的问题就是要给它绑定一个 this 作用域。其实这个问题在php中也是存在的,比如下面这段代码: $func = function($say){    echo $this->name, ‘…

    2025年3月5日
    200
  • 如何利用PHP来输出一个杨辉三角

        杨辉三角以正整数构成,数字左右对称,每行由1开始逐渐变大,然后变小,回到1;杨辉三角的每一个数是它的左上方和右上方的数的和,我们可以将其理解为一个二维数组,通过两次循环来输出数据。 1、什么是杨辉三角?     杨辉三角是二项式系数…

    2025年3月5日
    200
  • php怎么自动跳转到指定页面

    在php中,可以利用header()函数来自动跳转到指定页面;只需要在PHP文档的最开头添加“header(“location:指定页面的地址”)”或“header(‘Refresh:时间数值,Url=指…

    2025年3月5日
    200
  • PHP如何进行模糊查询

    模糊查询的方法:1、使用SQL匹配模式,操作符使用“LIKE”或“NOT LIKE”,匹配时,不区分大小写;2、使用正则表达式匹配模式,操作符使用“REGEXP”或“NOT REGEXP”,正则表达式可出现在匹配字段的任意位置。 本教程操作…

    2025年3月5日 编程技术
    200
  • php时间如何转化为星期几

    转换方法:1、使用date()和“strtotime(指定日期)”将日期转换成表示星期的数字;2、定义“array(“日”,”一”,”二”,”三&#8221…

    2025年3月5日
    200

发表回复

登录后才能评论