関数のソースコード
コードをコピー コードは次のとおりです:
function encrypt($data, $key) {
$prep_code = Serialize($data)
$block = mcrypt_get_block_size('des', 'ecb') ;
if (($pad = $block - (strlen($prep_code) % $block)) < $block) {
$prep_code .= str_repeat(chr($pad), $pad);
$encrypt = mcrypt_encrypt(MCRYPT_DES, $key, $prep_code, MCRYPT_MODE_ECB);
returnbase64_encode($encrypt);
}
function decrypt($str, $key) {
$str =base64_decode($str);
$str = mcrypt_decrypt(MCRYPT_DES, $key, $str, MCRYPT_MODE_ECB);
$block = mcrypt_get_block_size('des', 'ecb');
$pad = ord($str[($len = strlen($str); ) - 1] );
if ($pad && $pad < $block && preg_match('/' . chr($pad) . '{' . $pad . '}$/', $str)) {
$str = substr ($str, 0, strlen($str) - $pad);
}
return unserialize($str)
関数を呼び出す
コードは次のとおりです: $key = 'okyo.cn'; $data = array('id' => 100, 'username' => 'customer', 'password' => 'e10adc3949ba59abbe56e057f20f883e'); snarr = Serialize($data) ;
$en = encrypt($data, $key);
echo "暗号化プロトタイプ:"
echo "
キー: $ key
暗号化結果: $en
復号結果: ";
http://www.bkjia.com/PHPjc/326127.html
www.bkjia.com
true
http://www.bkjia.com/PHPjc/326127.html
技術記事
関数のソース コードのコピー コードは次のとおりです。 function encrypt($data, $key) { $prep_code =serialize($data) $block = mcrypt_get_block_size('des', 'ecb');ブロック - ( strlen($pr...