php 自定义复杂MD5加密函数_PHP教程
虽然说md5的密文是有限的,不过其数量为6.3340286662973277706162286946812e+49 ,如果对这个数字没感觉,你可以想象一下一亿的五次方再乘个几千万就差不多了。。。。。
以前接触过不少程序(当菜鸟黑客的那段时光……),大部分程序加密方式都是“md5”,而且是纯加密,本来这也没有错,以为md5算法毕竟没有被破解,但是随着特征字符串的收集,使用纯md5加密已经越来越危险。
自己写程序一般习惯加上特征字符串再MD5,自以为万无一失,但是今天发现cmd5居然可以破解这种加密方式,当然前提是要知道特征字符串,虽然我的更为复杂,不过出于防范心理,还是对加密函数进行了复杂化。
代码如下 | 复制代码 |
function md123($sstr) { $md_asc=”"; $mds=md5(“qwEqw”.$sstr.”2ddsdf”); $mds=md5(“rtrTtyr”.$mds.”zcv34r”); for($i=1;$i $md_asc.=168/ord(substr($mds,$i,1)); } return md5($md_asc); } |
这样通过随即字符串和ascii ,使密码安全性得到进一步提高,在通过ord的时候,一个简单的1已经被转换成了一下字符:
1.73195876288662.94736842105261.66336633663373.1111
1111111113.23076923076923.16981132075471.731958762
88661.683.42857142857142.94736842105261.681.681.6470
5882352943.11111111111111.66336633663372.94736842
105263.42857142857141.66336633663373.1698113207547
3.16981132075473.11111111111111.69696969696971.681.7
1428571428573.16981132075471.71428571428573.294117
64705881.681.64705882352941.69696969696971.64705882
352946ccc2eceada95b64bc7f55c07c2a6af6
这样再进行MD5加密,就安全了,如果这样还被破解了,那就用面条上吊吧
推荐阅读
-
php 自定义复杂MD5加密函数_PHP教程
-
php中可能用来加密字符串的函数[base64_encode、urlencode、sha1]_PHP教程
-
PHP中生成UUID自定义函数分享,phpuuid自定义函数_PHP教程
-
php 自定义函数_PHP教程
-
迅速掌握PHP JSON加密函数运用技巧_PHP教程
-
PHP中加密解密函数与DES加密解密实例,phpdes加密解密实例_PHP教程
-
PHP实现手机号码中间四位用星号(*)隐藏的自定义函数分享,手机号码星号_PHP教程
-
php-简单对称加密算法和字符串与十六进制之间的互转函数,php-十六进制_PHP教程
-
PHP移动互联网开发笔记(4)——自定义函数及数组_PHP教程
-
一个简单的php加密解密函数(动态加密)_PHP教程