<?php
class AMPCrypt {
private static function getKey(){
return md5('ldvIdQf0b70B2dbPVFk5cVnh'); //自己定义的加密key
}
public static function encrypt($value){
$td = mcrypt_module_open(MCRYPT_3DES, '', MCRYPT_MODE_ECB, '');
$iv = mcrypt_create_iv(mcrypt_enc_get_iv_size($td), MCRYPT_DEV_RANDOM);
$key = substr(self::getKey(), 0, mcrypt_enc_get_key_size($td));
mcrypt_generic_init($td, $key, $iv);
$ret = base64_encode(mcrypt_generic($td, $value));
mcrypt_generic_deinit($td);
mcrypt_module_close($td);
return $ret;
}
public static function dencrypt($value){
$td = mcrypt_module_open(MCRYPT_3DES, '', MCRYPT_MODE_ECB, '');
$iv = mcrypt_create_iv(mcrypt_enc_get_iv_size($td), MCRYPT_DEV_RANDOM);
$key = substr(self::getKey(), 0, mcrypt_enc_get_key_size($td));
mcrypt_generic_init($td, $key, $iv);
$ret = trim(mdecrypt_generic($td, base64_decode($value))) ;
mcrypt_generic_deinit($td);
mcrypt_module_close($td);
return $ret;
}
}
$icode = AMPCrypt::encrypt(serialize(array("user"=>"我来了","pass"=>"bbb","vip"=>1)));
echo $icode;
echo "<br>";
$bcode = AMPCrypt::dencrypt($icode);
echo $bcode;
?>3DES重数据加密算法php版本
最新推荐文章于 2021-04-17 17:28:08 发布
本文介绍了一种使用PHP实现3DES加密和解密的方法。通过自定义的密钥进行加密过程,并详细展示了如何利用mcrypt扩展来完成数据的安全转换。文章提供了完整的代码示例,包括序列化的数据加密及后续的解密步骤。
1759

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



