您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息
免费发信息
三六零分类信息网 > 崇左分类信息网,免费分类信息发布

PHP mcrypt可逆加密算法分析

2024/7/23 8:27:42发布110次查看
php使用mcrypt拓展的加密算法进行加密解密,学习php的朋友可以参考下。
数据加密在我们生活中的地位已经越来越重要了,尤其是考虑到在网络上发生的大量交易和传输的大量数据。对于不需要还原为原始数据的信息我们可以使用md5、sha1等不可逆加密算法对数据进行加密处理,但对于交易信息等需要还原为原始数据的重要信息则必须使用可还原的加密算法进行加密了。当然你可以自己写一个可逆加密的算法进行加密和解密计算。本文中我们介绍的是使用 mcrypt模块进行加密解密操作。
mcrypt的优点不仅仅在于其提供的加密算法较多,在windows下随php包一起发布,还在于它可以对数据进行加/解密处理,此外,它还提供了包括des算法在内的35种处理数据用的函数。
代码如下:
/**
+-----------------------------------------------------
* mcrypt 加密/解密
* @param string $date 要加密和解密的数据
* @param string $mode encode 默认为加密/decode 为解密
* @return string
* @author zxing@97md.net mon sep 14 22:59:28 cst 2009
+-----------------------------------------------------
* @example
*/
function zxingcrypt($date,$mode = 'encode'){
$key = md5('zxing');//用md5哈希生成一个密钥,注意加密和解密的密钥必须统一
if ($mode == 'decode'){
$date = base64_decode($date);
}
if (function_exists('mcrypt_create_iv')){
$iv_size = mcrypt_get_iv_size(mcrypt_rijndael_256, mcrypt_mode_ecb);
$iv = mcrypt_create_iv($iv_size, mcrypt_rand);
}
if (isset($iv) && $mode == 'encode'){
$passcrypt = mcrypt_encrypt(mcrypt_rijndael_256, $key, $date, mcrypt_mode_ecb, $iv);
}elseif (isset($iv) && $mode == 'decode'){
$passcrypt = mcrypt_decrypt(mcrypt_rijndael_256, $key, $date, mcrypt_mode_ecb, $iv);
}
if ($mode == 'encode'){
$passcrypt = base64_encode($passcrypt);
}
return $passcrypt;
}
别的网友的代码
代码如下:
崇左分类信息网,免费分类信息发布

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录