微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

PHP加密解密函数

PHP加密解密函数,保存下:
PHP

<span style="color: #008000">//<span style="color: #008000">加密函数
<span style="color: #0000ff">function passport_encrypt(<span style="color: #800080">$txt,<span style="color: #800080">$key<span style="color: #000000">) {
<span style="color: #008080">srand((<span style="color: #0000ff">double)<span style="color: #008080">microtime() * 1000000<span style="color: #000000">);
<span style="color: #800080">$encrypt_key = <span style="color: #008080">md5(<span style="color: #008080">rand(0,32000<span style="color: #000000">));
<span style="color: #800080">$ctr = 0<span style="color: #000000">;
<span style="color: #800080">$tmp = ''<span style="color: #000000">;
<span style="color: #0000ff">for(<span style="color: #800080">$i = 0;<span style="color: #800080">$i < <span style="color: #008080">strlen(<span style="color: #800080">$txt); <span style="color: #800080">$i++<span style="color: #000000">) {
<span style="color: #800080">$ctr = <span style="color: #800080">$ctr == <span style="color: #008080">strlen(<span style="color: #800080">$encrypt_key) ? 0 : <span style="color: #800080">$ctr<span style="color: #000000">;
<span style="color: #800080">$tmp .= <span style="color: #800080">$encrypt_key[<span style="color: #800080">$ctr].(<span style="color: #800080">$txt[<span style="color: #800080">$i] ^ <span style="color: #800080">$encrypt_key[<span style="color: #800080">$ctr++<span style="color: #000000">]);
}
<span style="color: #0000ff">return <span style="color: #008080">base64_encode(passport_key(<span style="color: #800080">$tmp,<span style="color: #800080">$key<span style="color: #000000">));
}
<span style="color: #008000">//<span style="color: #008000">解密函数
<span style="color: #0000ff">function passport_decrypt(<span style="color: #800080">$txt,<span style="color: #800080">$key<span style="color: #000000">) {
<span style="color: #800080">$txt = passport_key(<span style="color: #008080">base64_decode(<span style="color: #800080">$txt),<span style="color: #800080">$key<span style="color: #000000">);
<span style="color: #800080">$tmp = ''<span style="color: #000000">;
<span style="color: #0000ff">for(<span style="color: #800080">$i = 0;<span style="color: #800080">$i < <span style="color: #008080">strlen(<span style="color: #800080">$txt); <span style="color: #800080">$i++<span style="color: #000000">) {
<span style="color: #800080">$md5 = <span style="color: #800080">$txt[<span style="color: #800080">$i<span style="color: #000000">];
<span style="color: #800080">$tmp .= <span style="color: #800080">$txt[++<span style="color: #800080">$i] ^ <span style="color: #800080">$md5<span style="color: #000000">;
}
<span style="color: #0000ff">return <span style="color: #800080">$tmp<span style="color: #000000">;
}
<span style="color: #008000">//<span style="color: #008000">上面两个函数用到的公共函数
<span style="color: #0000ff">function passport_key(<span style="color: #800080">$txt,<span style="color: #800080">$encrypt_key<span style="color: #000000">) {
<span style="color: #800080">$encrypt_key = <span style="color: #008080">md5(<span style="color: #800080">$encrypt_key<span style="color: #000000">);
<span style="color: #800080">$ctr = 0<span style="color: #000000">;
<span style="color: #800080">$tmp = ''<span style="color: #000000">;
<span style="color: #0000ff">for(<span style="color: #800080">$i = 0; <span style="color: #800080">$i < <span style="color: #008080">strlen(<span style="color: #800080">$txt); <span style="color: #800080">$i++<span style="color: #000000">) {
<span style="color: #800080">$ctr = <span style="color: #800080">$ctr == <span style="color: #008080">strlen(<span style="color: #800080">$encrypt_key) ? 0 : <span style="color: #800080">$ctr<span style="color: #000000">;
<span style="color: #800080">$tmp .= <span style="color: #800080">$txt[<span style="color: #800080">$i] ^ <span style="color: #800080">$encrypt_key[<span style="color: #800080">$ctr++<span style="color: #000000">];
}
<span style="color: #0000ff">return <span style="color: #800080">$tmp<span style="color: #000000">;
}

<span style="color: #008000">//<span style="color: #008000">----------------------------------------
//----------------------------------------
//-------------示例-----------------------
//----------------------------------------
//----------------------------------------
//
<span style="color: #800080">$str = '你好,我是+-!少林a b张三丰'<span style="color: #000000">;
<span style="color: #0000ff">echo '
------key:aaa----------
'<span style="color: #000000">;
<span style="color: #0000ff">echo <span style="color: #800080">$x = passport_encrypt(<span style="color: #800080">$str,'aaa'<span style="color: #000000">);
<span style="color: #008000">//<span style="color: #008000">值会变,其中一个如下
//AOdS7lWlU+IM+1fnALBV5QOOV7dchQfEX+MCwgf2U3BXeQcnVuNavgPAA+hbmlLJAWEHIVRnD7hYvgf/U+lS4gCKUrdVvVO3
<span style="color: #0000ff">echo '
-----------------------
'<span style="color: #000000">;
<span style="color: #0000ff">echo passport_decrypt(<span style="color: #800080">$x,'aaa'<span style="color: #000000">);
<span style="color: #0000ff">echo '











'<span style="color: #000000">;

<span style="color: #0000ff">echo '
------key:bbb----------
'<span style="color: #000000">;
<span style="color: #0000ff">echo <span style="color: #800080">$y = passport_encrypt(<span style="color: #800080">$str,'bbb'<span style="color: #000000">);
<span style="color: #008000">//<span style="color: #008000">值会变,其中一个如下
//Ae0F5gD1C+oB9wC/DOZZ6AeKU7MCjleWUbEAmFGuAi4JLF8gUeFW4lKQUrYBmlrAA2MHIVcxBrMFv1PzXOha5QGABb8A7Qu/
<span style="color: #0000ff">echo '
-----------------------
'<span style="color: #000000">;
<span style="color: #0000ff">echo passport_decrypt(<span style="color: #800080">$y,'bbb'<span style="color: #000000">);

?>

还有一个是下面这样的,回头再研究

PHP 函数,可以加密中文 authcode(,, = '' = ( ? : ['auth_key' = ( = == 'DECODE' ? () : (( . ),8) . = ( = Box = = '' ( = 0; <= 255; ++ [] = ([ % Box[] = ( = = 0; < 256; ++ = ( + Box[] + []) % 256 = Box[ Box[] = Box[ Box[] = ( = = = 0; < ; ++ = ( + 1) % 256 = ( + Box[]) % 256 = Box[ Box[] = Box[ Box[] = .= (([]) ^ Box[(Box[] + Box[]) % 256 ( == 'DECODE' ((,8) == (((,8) . ),8 (,8 } '' } ('=','',( ?>

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐