php加密算法的实例介绍
admin
2023-07-02 03:03:12
0

#加密算法

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

$password='hugehugehuge';

$pwd='hugehuge';

//MD5加密,单向加密算法,两个参数,1必写,要加密的字符串,

//2第二个参数是bool值,为真, MD5 报文摘要将以16字节长度的原始二进制格式返回。返回32位字符串

echo 'md5默认调用:
';

echo md5($password);

echo "
";

echo 'md5配置第二个参数调用:
';

echo md5($password,true);

//cryp,单向加密算法,两个参数,1.参数要加密的明文,它也只使用该明文的开始 8 个字符

//2。加密的干扰串,默认是两位,如果不写,则由系统随机生成两位字符,也叫做盐值或密钥。

echo '
';

echo '


';

echo "CRYPT加密算法
";

echo crypt($password);

echo '
';

echo crypt($password,'hu');

if(CRYPT_STD_DES){//CRYPTDES标准算法

echo '
标准算法,只取两位字符串作为干扰串';

echo '
';

echo crypt($password,'this is a test');

echo '
pwd:';

echo crypt($pwd,'this is a test');

echo '看两个结果是否一样
';

}

if(CRYPT_MD5){//md5加密

echo '
md5加密算法,第二个参数以$1$开头,以$结尾,最多12位作为干扰串包括$1$';

echo "
";

echo crypt($password,'$1$hellohellohello$');

echo "
pwd:";

echo crypt($pwd,'$1$hellohellohello$');

}

//sha1加密算法,返回40位长度的字符串,单向加密算法

echo '


sha1默认调用:
';

echo sha1($password);

echo "
";

echo 'md5配置第二个参数调用:
';

echo sha1($password,true);

//url加密和解密

//urlencode,传入字符串中除了-_.之外的所有非字母数字字符串都将

//被替换成百分号(%)后跟两位16进制数,空格则编码为加号(+)

echo '


url加密和解密
';

$url1='this is a url';

echo urlencode($url1);

echo '
';

$url2='www.qdweb.com?username=2+3%4 huge &king # or \1=1';

echo urlencode($url2);

/*

常用的转换

?变成 %3F

=变成 %3D

空格 变成 +

% 变成 %25

& 变成 %26

\ 变成 %5C

+ 变成 %2B

*/

echo '
urldecode的一个用处:合并参数,
';

if(!empty($_GET)){

print_r($_GET);

}

echo '
';

$url3='http://www.qdweb.com/jiami.php?username=huge&age=24';

echo 'urldecode合并参数';

$baidu='http://www.baidu.com/s?wd=%E6%85%95%E8%AF%BE%E7%BD%91%20immoc&ie=utf-8&tn=baiduhome_pg&f=8&rsv_bp=1&rsv_spt=1&rsv_sug3=6&rsv_sug4=109&rsv_sug1=3&rsv_n=2&inputT=8408&rsv_sug=1&bs=immoc%20%20%E6%85%95%E8%AF%BE%E7%BD%91';

echo '
';

echo 'rawurlencode:';

//按照RFC1738进行编码,将空格转换20%,其他同上

echo rawurlencode($url2);

#解码

$url='this is a test!';

$enurl=urlencode($url);

echo '
urlencode编码后:'.$enurl;

$deurl=urldecode($enurl);

echo '
urlencode解码后:'.$deurl;

#解码

$url='this is a test!';

$enurl=rawurlencode($url);

echo '
rawurlencode编码后:'.$enurl;

$deurl=rawurldecode($enurl);

echo '
rawurlencode反编码后:'.$deurl;

//urldecode也可以将20%解码成空格

$deurl=urldecode($enurl);

echo '
urlencode解码rawurlencode编码后的字符串:'.$deurl;

//base64_encode(),使用base64对传入字符串进行编码

//一般用在邮件中,对二进制图片进行编码

$data='虎哥是男神!!';

echo '


base64_encode加密后:';

$endata=base64_encode($data);

echo $endata;

//base64_decode(data,bool strict),对使用MIME base64编码的数据进行解码

//如果输入的数据超出了base64字母表,则返回false

echo '
base64_decode解密后:';

echo base64_decode($endata);

?>

相关内容

热门资讯

美国计划加速从欧洲撤军 【文/观察者网 王恺雯】德国《星期日世界报》(Welt am Sonntag)5月30日报道,五角大...
日本何时道歉?解放军代表当场质... 【环球时报-环球网报道 记者 郭媛丹 苏雅瑄】31日上午,解放军专家学者代表团成员、国防大学沈志雄大...
攻坚百年工程,港珠澳大桥工程总... 5月30日,是第十个全国科技工作者日。中央宣传部、中国科协于29日向全社会发布“最美科技工作者”。于...
一个因煤矿改变命运的村社:12... 极目新闻记者 张皓位于鄂尔多斯市伊金霍洛旗札萨克镇的乌兰陶勒盖村七社,是地处黄河“几字弯”腹地的一个...
华为徐直军“感谢”美国制裁:使... 感谢IT之家网友 的线索投递! 5 月 31 日消息,据钛媒体报道,华为副董事长、轮值董事长徐直军...
万向一二三申请高镍三元材料改性... 国家知识产权局信息显示,万向一二三股份公司申请一项名为“高镍三元材料改性方法和具有氮氧包覆层的高镍正...
滑坡发生前,社区书记多看一眼救... 5月27日傍晚,湖北恩施市舞阳坝街道官坡社区园艺场上空传来一声巨响,约6000立方米的土石倾泻而下,...
芬尼能源取得电器盒座及热泵专利... 国家知识产权局信息显示,广东芬尼能源技术有限公司取得一项名为“一种电器盒座及热泵”的专利,授权公告号...
数日前起火的广州长江(中国)轻... 5月31日上午,有网友发视频称,广州长江(中国)轻纺城北区发生火情。多名网友发布的视频显示,一栋印有...
原创 就... 看见中国神舟在太空顺利会师,印度又开始蠢蠢欲动了吗? 5月24日晚,中国神舟二十三号载人飞船在酒...