<?php
header('Content-type: text/html; charset=utf-8');
//编码函数,$keya加密参数
function encodeC($value,$keya){$text = $value;
$iv_size = mcrypt_get_iv_size(MCRYPT_RIJNDAEL_256, MCRYPT_MODE_ECB);
$iv = mcrypt_create_iv($iv_size, MCRYPT_RAND);
$crypttext = mcrypt_encrypt(MCRYPT_RIJNDAEL_256, $keya, $text, MCRYPT_MODE_ECB, $iv);
return base64_encode($crypttext);
}
//解密函数,$keya解密参数
function decodeC($value,$keya){
$crypttext = base64_decode($value);
$iv_size = mcrypt_get_iv_size(MCRYPT_RIJNDAEL_256, MCRYPT_MODE_ECB);
$iv = mcrypt_create_iv($iv_size, MCRYPT_RAND);
$decrypttext = mcrypt_decrypt(MCRYPT_RIJNDAEL_256, $keya, $crypttext, MCRYPT_MODE_ECB, $iv);
return trim($decrypttext);
}
$a='大家你阿华哦啊啊 就开始发生那份快乐咖啡机快乐俄克拉夫家卡俄方拉客的发挥啊啊无饭力恶化克拉夫哦啊饿疯了了啊巍峨浪费啊好啊!123<br>';
echo $a;
echo encodeC($a,2);
echo "<br>";
echo decodeC(encodeC($a,2),2);
?>
本文提供了一个使用PHP实现的数据加密与解密的示例代码。通过mcrypt扩展,展示了如何利用Rijndael 256位算法进行字符串的加密及随后的解密过程。该示例包括设置字符编码、生成初始化向量、执行加密解密操作等关键步骤。
437

被折叠的 条评论
为什么被折叠?



