Maison  >  Article  >  php教程  >  可解密的md6(think_encrypt和think_decrypt改良版)

可解密的md6(think_encrypt和think_decrypt改良版)

WBOY
WBOYoriginal
2016-06-07 11:41:532371parcourir

一直想要md5那种加密等长,又能解密的对称加密解密方法,于是有了md6。
第一步,去OT扣来think_encrypt和think_decrypt函数。
第二步,打造自己的md6:function md6($str='',$de=false){<br>     $key=('yourkey');<br>     $char=('MDAwMDAwMDAwM');<br>     if($str!=''){ <br>         if($de){<br>             $str=$char.$str;<br>             $str=think_decrypt($str,$key);<br>         }else{<br>             $str=think_encrypt($str,$key);<br>             $str=str_replace($char, '',$str);<br>         }<br>     }<br>     return $str;<br> }用法举例:function test(){<br>   $str= '';<br>   for($i=1;$i     $str=md6($i);<br>     echo($str.'    |    '.md6($str,true).'<br>');<br>   }<br> }输出结果:IKKdXY | 1<br> IKgdXY | 2<br> IKwdXY | 3<br> IN6dXY | 4<br> IOKdXY | 5<br> IOgdXY | 6<br> IOwdXY | 7<br> IR6dXY | 8<br> ISKdXY | 9<br> IKNeXY | 10 <br> ...<br> <br> IKNebCzdqRv | 10000<br> IKNebCzdqhv | 10001<br> IKNebCzdqxv | 10002<br> IKNebCzdrBv | 10003<br> IKNebCzdrRv | 10004<br> IKNebCzdrhv | 10005<br> IKNebCzdrxv | 10006<br> IKNebCzdsZv | 10007<br> IKNebCzdspv | 10008<br> IKNebCzds5v | 10009<br> IKNebCzhqRv | 10010 <br> ...<br> <br> IKNfbGzhqSpgqh2cg | 11110000<br> IKNfbGzhqSpgqh6cg | 11110001<br> IKNfbGzhqSpgqh-cg | 11110002<br> IKNfbGzhqSpgqiCcg | 11110003<br> IKNfbGzhqSpgqiGcg | 11110004<br> IKNfbGzhqSpgqiKcg | 11110005<br> IKNfbGzhqSpgqiOcg | 11110006<br> IKNfbGzhqSpgqiYcg | 11110007<br> IKNfbGzhqSpgqiccg | 11110008<br> IKNfbGzhqSpgqigcg | 11110009<br> IKNfbGzhqSpgrh2cg | 11110010 4-6位数(数字和英文)加密后的密文长度为:11,
7-9位数(数字和英文)加密后的密文长度为:17,



在一定范围内加密出来的密文是等长的,有什么作用就自己去发挥吧,我只能帮到这里了!

AD:真正免费,域名+虚机+企业邮箱=0元

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn