//$key = "これは秘密鍵であるはずです !!!"; 估计是密阴
$key="これは一密阴";
関数キーED($txt,$encrypt_key)
{
$encrypt_key = md5($encrypt_key);
$ctr=0;
$tmp = "";
for ($i=0;$i
if ($ctr==strlen($encrypt_key)) $ctr=0;
$tmp.= substr($txt,$i,1) ^ substr($encrypt_key,$ctr,1);
$ctr;
}
$tmp を返します;
}
関数暗号化($txt,$key)
{
srand((double)microtime()*1000000);
$encrypt_key = md5(rand(0,32000));
$ctr=0;
$tmp = "";
for ($i=0;$i
if ($ctr==strlen($encrypt_key)) $ctr=0;
$tmp.= substr($encrypt_key,$ctr,1) .
(substr($txt,$i,1) ^ substr($encrypt_key,$ctr,1));
$ctr;
}
return keyED($tmp,$key);
}
関数復号化($txt,$key)
{
$txt = keyED($txt,$key);
$tmp = "";
for ($i=0;$i
$md5 = substr($txt,$i,1);
$i;
$tmp.= (substr($txt,$i,1) ^ $md5);
}
$tmp を返します;
}
$string = "必要加密的文字列、如密码等。";
// 开始加密 $string を暗号化し、$enc_text に保存します
$enc_text = 暗号化($string,$key);
// 开始解密 暗号化テキスト $enc_text を復号し、$dec_text に保存します
$dec_text = 復号化($enc_text,$key);
print "原始文字列 : $string
n";
print "加密后字串 : $enc_text
n";
print "解密後字串 : $dec_text
n";
?>