PHP加密技术

来源:互联网 发布:音频切换矩阵 编辑:程序博客网 时间:2024/05/29 17:31

单向加密

crypt(str,salt)函数

是一种单项加密函数,密文不可还原为明文,若省略salt参数,每次会生成一个随机干扰码
echo crypt("test str","tm");

md5(str,raw_output)函数

很多网站用户注册是使用md5加密,将用户注册的密码加密为md5保存至数据库,用户登陆的时候再把输入的密码转换成md5值与数据库比较。整个过程程序自身都不知道用户真实密码,保证了用户的个人隐私
返回把内容加密为128位的大整数,raw_output默认为false,若设为true则返回一个二进制密文
echo md5("test str");

sha1(str,raw_output)函数

返回加密后40位16进制整数,raw_output默认为false,如果参数为true则返回20位
echo sha1("123");

php加密扩展库

Mcrypt扩展库

1.Mcrypt库安装
找到PHP主目录下libmcrypt.dll,复制到系统目录Windows \ system32下,然后在php.ini文件中找到“;extension=php_mcrypt.dll”“;extension=php_mhash.dll”,去掉其中的分号,然后重启服务器就可以了
$en_dir = mcrypt_list_algorithms();//获取所有支持的算法,以数组返回echo "【mcrypt加密算法】--------------<br>";foreach($en_dir as $value){echo $value."<br>";}$mo_dir = mcrypt_list_modes();//获取所有支持的模式,以数组返回echo "【mcrypt加密模式】--------------<br>";foreach($mo_dir as $value){echo $value."<br>";}//mcrypt加密过程$str = "这是加密内容"; //加密内容$key = "key:1111"; //密钥$cipher = MCRYPT_DES; //设置加密算法$modes = MCRYPT_MODE_ECB; //设置加密模式$iv = mcrypt_create_iv(mcrypt_get_iv_size($cipher,$modes),MCRYPT_RAND);//定义初始化向量,系统随机$str_encrypt = mcrypt_encrypt($cipher,$key,$str,$modes,$iv);//开始加密echo "加密后:".$str_encrypt."<br>";$str_decrypt = mcrypt_decrypt($cipher,$key,$str_encrypt,$modes,$iv);//解密echo "解密后:".$str_decrypt."<br>";

Mhash扩展库


原创粉丝点击