简单加密算法,对文本进行加密解密:定义了一个加密函数encrypt(),一个解密函数decrypt()

//加密函数  
function encrypt($data,$key) {
	$chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
	$nh = rand(0,64);
	$ch = $chars[$nh];
	$mdKey = md5($key.$ch);
	$mdKey = substr($mdKey,$nh%8, $nh%8+7);
	$data= base64_encode($data);
	$tmp = '';
	$i=0;
	$j=0;
	$k = 0;
	for ($i=0; $i<strlen($data); $i++) {
		$k = $k == strlen($mdKey) ? 0 : $k;
		$j = ($nh+strpos($chars,$data[$i])+ord($mdKey[$k++]))%64;
		$tmp .= $chars[$j];
	}
	return urlencode($ch.$tmp);
}
//解密函数  
function decrypt($data,$key) {
	$txt = urldecode($data);
	$chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
	$ch = $txt[0];
	$nh = strpos($chars,$ch);
	$mdKey = md5($key.$ch);
	$mdKey = substr($mdKey,$nh%8, $nh%8+7);
	$txt = substr($txt,1);
	$tmp = '';
	$i=0;
	$j=0;
	$k = 0;
	for ($i=0; $i<strlen($txt); $i++) {
		$k = $k == strlen($mdKey) ? 0 : $k;
		$j = strpos($chars,$txt[$i])-$nh - ord($mdKey[$k++]);
		while ($j<0) $j+=64;
		$tmp .= $chars[$j];
	}
	return base64_decode($tmp);
}

定义待加密数据$text,密钥$key。

$text = '123456abc';
$key ='szfx';
$encrypt = encrypt($text,$key);

echo $encrypt;
echo '<br>';
echo decrypt($encrypt,$key);

输出

aMfDBJTnzUWVe
123456abc
Invitation
QQ Group
1095632335

created:04/01/2020

Welcome to the Group

Use this card to join us and participate in a pleasant discussion together .

Welcome to JISHUSONGSHU Group,wish you a nice day .