<?php 

//1:被泄密的事件:CSDN,天涯社区,冠希哥

//2:常见加密算法:md5(),Crypt(),Sha1(),URL(),Base64()

//MD5()加密:单向加密        md5($str[,true])

$str="imooc";

echo md5($str);         //返回数字字母的组合

echo "<hr/>";

echo md5($str,true);    //这样会返回16位2进制数

//注:

echo "注册成功,3秒钟后跳转到登陆页面";

echo "<meta  http-equiv='refresh'  content='3;url=login.html'/>";

header("content-type:text/html;charset=utf-8");

//为了安全可以多次md5,不容易被猜测到。

echo md5(md5($str,true));

//crypt加密算法:单向加密    crypt($str[,2位干扰串]);

echo crypt($str);      //$s..adhasf$sdhfsdfsdfdsgdgjd/dfdh,刷新便更改

echo "<hr/>";

echo crypt($str,im);    //imAqJS/wYeLho,不变

crypt()支持6种算法标准,具体查看php手册。

//sha1加密算法:与md5差不多,返回40位,md5返回32位,单向加密      sha1($str[,参数:返回20位原始二进制数据]);   

echo sha1($str);

注:加密算法可以合并使用,如:

echo md5(sha1($str));

//URL编码加密技术,常用作对网址进行编码,双向的!!!!!!!

echo urlencode("http:www.baidu.com");

echo urldecode("http://www.baidu.comsadgsafdbfdf$dsf%jsfdj%");

$str="a  b  c  d";    //空格->加号    -_.之外的非字母数字字符->%后跟上2位十六进制数!!!!!!!!!!!!!!!!!!!!!!

echo urldecode($str);     //a+b+c+d

//注:与urlencode,urldecode相似的加密技术:rawurlencode()/rawurldecode()!!!!!!!!!!!!!!!!!!!!!   

//它将空格变成%20!!!!!!!!!!!!!!!!!其它的一样!!!!

//Base64编码加密技术(视频,图片,中文,数字都可以)       base64_encode($data)/base64_decode($data[,false]);

//非ASCII--------------------->ASCII数据

$data="慕课网男神";

echo base64_encode($data);

echo base64_decode($data);

//得到图片的二进制编码:!!!!!!!!!!!!!!!!!!!!!!

$data=file_get_contents($filename);

echo base64_encode($data);

//或者

<img src="data:p_w_picpath/jpeg;base64,base64编码后的字符"   atl=""  />

<img src="data:;base64,base64编码后的字符"   atl=""  />

//信息加密技术总结

/*分类:单项散列加密(单向,不定长信息到定长信息)

        对称加密(加解密秘钥相同)

        非对称加密(加解密秘钥不同,公钥,私钥)

*/

?>