PHP加密技术
- md5加密技术(单向加密)
- MD5($string)返回32位字符16进制整数的密文
- Md5($string,true)返回16字节的原始二进制密文
- 单纯使用Md5()加密已经不安全了,可以使用MD5(md5($string,true))方式来加密
- Crypt加密技术(单项加密)
- Crypt($string,’$salt’)基于标准des算法的散列值加密“.0-9A-Za-z”字符中的两个字符作为盐值
- Crypt($string,’$1$string$’)基于md5的散列用$1 $开始的12字符的盐值串
- Crypt还有很多加密算法 这里列举两个,其余的去php手册查询
- Sha1加密技术(单向加密)
- Sha1($string) 返回40字符的十六进制密文
- Sha1($string,true) 返回20字符的原始密文
- Sha1也不安全常用 sha1(sha1($string,true))加密
- urlencode加密技术(双向加密)
- Urlencode() 会把空格转换为+
- Urldecode()
- Rawurlencode() 会把空格转换为%20
- Rawurldecode()
/**
* ? => %3F
* = => %3d
* 空格 => +(urlencode) / %20(rawurlencode)
* % => %25
* & => %26
* \ => %5C
* + => %2B
**/
- base64加密技术
- Base64_encode() 把任何二进制字符编码到可打印的64个字符中
- Base64_decode()解码
- Base64多用在处理图片上
$filename="PHPerJiang.jpg";
$data=file_get_contents($filename);//获得图片的内容
$imgDate=base64_encode($data); //把任何二进制字符编码到可打印的64个字符之中
echo '<hr/>';
echo "<image src='data:;base64,$imgDate' alt=''></image>";//图片的的输出格式 ,直接用base64输出图片
echo '<hr/>';
echo "<image src='data:image/jpeg;base64,$imgDate' alt=''></image>";
/**
* 信息加密技术:
* 单项散列加密技术 单向不可逆
* 对称加密技术 双向可逆需要密钥
* 非对称加密技术 双向可逆需要公钥和私钥
*/