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);

?> 
打赏

本文固定链接: https://www.cxy163.net/archives/782 | 绝缘体

该日志由 绝缘体.. 于 2012年10月22日 发表在 PHP 分类下,
原创文章转载请注明: PHP加密解密函数 | 绝缘体

报歉!评论已关闭.