CFUSION_ENCRYPT関数をPHPで書いてみる
思いっきりチラシの裏。中身は文字列とキーの排他論理和をとって16進化してるだけ。
function cfusion_encrypt($text, $key) {
$keylen = strlen($key);
$j = 0;
$newval = "";
for ($i=0; $i<strlen($text); $i++) {
if ($i >= $keylen) $j++;
$wd = (ord(substr($key, $i - $keylen * $j, 1)) ^ ord(substr($text, $i, 1)));
$newval = $newval . sprintf("%02X", $wd);
}
return $newval;
}










