Oct
22
2012
PHP加密解密函数
<?php
//加密
function passport_encrypt($txt, $key) {
srand ( ( double ) microtime () * 1000000 );
$encrypt_key = md5 ( rand ( 0, 32000 ) );
$ctr = 0;
$tmp = '';
for($i = 0; $i < strlen ( $txt ); $i ++) {
$ctr = $ctr == strlen ( $encrypt_key ) ? 0 : $ctr;
$tmp .= $encrypt_key [$ctr] . ($txt [$i] ^ $encrypt_key [$ctr ++]);
}
return base64_encode ( passport_key ( $tmp, $key ) );
}
//解密
function passport_decrypt($txt, $key) {
$txt = passport_key ( base64_decode ( $txt ), $key );
$tmp = '';
for($i = 0; $i < strlen ( $txt ); $i ++) {
$md5 = $txt [$i];
$tmp .= $txt [++ $i] ^ $md5;
}
return $tmp;
}
//
function passport_key($txt, $encrypt_key) {
$encrypt_key = md5 ( $encrypt_key );
$ctr = 0;
$tmp = '';
for($i = 0; $i < strlen ( $txt ); $i ++) {
$ctr = $ctr == strlen ( $encrypt_key ) ? 0 : $ctr;
$tmp .= $txt [$i] ^ $encrypt_key [$ctr ++];
}
return $tmp;
}
//$txt="xiaoming";
//$key="#$%&";
//echo passport_encrypt ( $txt, $key );
//$txt="An1QbVw8AWBSZQE1Aj9QMg==";
//$key="#$%&";
//echo passport_decrypt($txt, $key);
?>
微信扫一扫,打赏作者吧~
最活跃的读者