« 特定のサイズのファイルを作る | メイン | svn: bin判定されてしまったファイルをテキストに戻すには »

PHP: XOR暗号化

あとで読む

XOR暗号化すると 7bit の範囲に収まらなくなるので、16進表現に変換してやると扱いやすい。暗号化といっても、本当に暗号が必要なところでは使ってはだめだめ。「XOR難読化」というべきな感じ。

<?php

// XOR encrypt/descript
// $key should be just 1 charactor
function xor_encrypt($plain,$key) {
    $seed=str_repeat($key,strlen($plain));
    return bin2hex($plain^$seed);
}
function xor_decrypt($enc,$key) {
    $seed=str_repeat($key,strlen($enc));
    return pack("H*",$enc)^$seed;
}

// test code
$key='v';
$enc=xor_encrypt($argv[1],$key);
echo $enc."\n";
echo xor_decrypt($enc,$key)."\n";

?>

参考

Trackbacks

Trackback URL:
http://groundwalker.com/mt/gwtb.cgi/360

« 特定のサイズのファイルを作る | メイン | svn: bin判定されてしまったファイルをテキストに戻すには »

スポンサー

関連ブログ

あわせて読みたい

関連キーワード

Powered by
Movable Type 3.34

連絡先