从PHP7版本开始很多依赖mcrypt扩展的方法都不支持了,PHP7.2.0及以上版本已经完全不支持mcrypt扩展的任何方法了,所以PHP7及以上版本都应该使用openssl扩展来实现加解密。
以DES-CBC加密方式为例:
<?php
class DesUtil
{
/**
* Des 加密
*
* @param $str
* @param $secretKey
* @param string $iv
* @return string
*/
public static function encrypt($str, $secretKey, $iv = '')
{
return base64_encode(openssl_encrypt($str, 'des-cbc', $secretKey, OPENSSL_RAW_DATA, $iv));
}
/**
* Des 解密
*
* @param $str
* @param $secretKey
* @param string $iv
* @return string
*/
public static function decrypt($str, $secretKey, $iv = '')
{
return openssl_decrypt(base64_decode($str), 'des-cbc', $secretKey, OPENSSL_RAW_DATA, $iv);
}
}
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。