暗号化 PHP アルゴリズム
最近のプロジェクト要件では、暗号化アルゴリズムを通じて通常の情報から暗号化された文字列を生成するために PHP を使用する必要があります。暗号化された文字列は、復号化アルゴリズム (逆) を通じて以前の情報を解析できます。私はこれまでにやったことがないので、既製の暗号化および復号化アルゴリズムについてのアイデアがあるかどうかをここで尋ねたいと思います。アルゴリズムは十分に複雑であり、簡単に解読できないものでなければなりません。特定のコード。
http://blog.shiniv.com/2013/11/use-aes-encryption-algorithm-to-encrypt-data-in-php/
http://www.soso.io/article/32937.html
一般的に使用される暗号化/復号化文字列関数:
/**
$lockstream = 'st=lDEFABCNOPyzghi_jQRST-UwxkVWXYZabcdef+IJK6/7nopqr89LMmGH012345uv';
//乱数を見つけて、シークレット ロック文字列からシークレット ロック値を見つけます
$lockLen = strlen($lockstream);
$lockCount = rand(0,$lockLen-1);
$randomLock = $lockstream[$lockCount];
//ランダムな暗号化値と組み合わせて MD5 パスワードを生成します
$password = md5($password.$randomLock);
//文字列の暗号化を開始します
$txtStream = Base64_encode($txtStream);
$tmpStream = '';
$i=0;$j=0;$k = 0;
for ($i=0; $i
$j = (strpos($lockstream,$txtStream[$i])+$lockCount+ord($password[$k]))%($lockLen);
$tmpStream .= $lockstream[$j];
$k++;
}
$tmpStream.$randomLock を返します;
}
header("content-type:text/html;charset=utf8");
$str = "私の名前はジャック・マーです、他の人には言いません!" //暗号化されたコンテンツ
$key = "9545646" // 独自のキーを作成します。
$cipher = MCRYPT_DES //パスワードの種類
;
$modes = MCRYPT_MODE_ECB //パスワードモード
;
$iv = mcrypt_create_iv(mcrypt_get_iv_size($cipher,$modes),MCRYPT_RAND);//初期化ベクトル
echo "暗号化されたプレーンテキスト:".$str."
$str_encrypt =base64_encode( mcrypt_encrypt($cipher,$key,$str,$modes,$iv));
echo "暗号化された暗号文: ".$str_encrypt."
";
echo "復元:".$str_decrypt;
?>