PHP加密技术概要

xiaoxiao2021-02-28  105

单向加密

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");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>";  

 

转载请注明原文地址: https://www.6miu.com/read-61397.html

最新回复(0)