微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

PHP 7.1中AES加解密方法mcrypt_module_open()的替换方案

@H_5020@

前言


@H
502_0@mcrypt 扩展已经过时了大约10年,并且用起来很复杂。因此它被废弃并且被 OpenSSL 所取代。 从PHP 7.2起它将被从核心代码中移除并且移到PECL中。


@H_502_0@PHP手册在7.1迁移页面给出了替代方案,就是用OpenSSL取代MCrypt.


@H_502_0@

示例代码


<div class="jb51code">
<pre class="brush:PHP;">
/**

  • [AesSecurity aes加密,支持PHP7.1]
    */
    class AesSecurity
    {
    /**
  • [encrypt aes加密]
  • @param [type] $input [要加密的数据]
  • @param [type] $key [加密key]
  • @return [type] [加密后的数据]
    */
    public static function encrypt($input,$key)
    {
    $data = openssl_encrypt($input,'AES-128-ECB',$key,OPENSSL_RAW_DATA);
    $data = base64_encode($data);
    return $data;
    }
    /**
  • [decrypt aes解密]
  • @param [type] $sstr [要解密的数据]
  • @param [type] $sKey [加密key]
  • @return [type] [解密后的数据]
    */
    public static function decrypt($sstr,$sKey)
    {
    $decrypted = openssl_decrypt(base64_decode($sstr),$sKey,OPENSSL_RAW_DATA);
    return $decrypted;
    }
    }
@H_502_0@可据需求,自行改编。

@H_502_0@

总结

@H_502_0@以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对编程之家的支持

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐