mcrypt_module_open php,求PHP7.1 加密函数mcrypt_module_open()替换方案

今天把php升级到7.1了,结果发现这个函数不建议使用:

mcrypt_module_open() is deprecated

请问还有其它方案来替换吗?

==============================

因为7.1还没有正式发布,而且7.1的发布文档上面写了以后不建义使用类似mcrypt的扩展,所以该问题目前无解。如果有遇到相同问题的同学,请使用5版或7.0版 。

回复内容:

今天把php升级到7.1了,结果发现这个函数不建议使用:

mcrypt_module_open() is deprecated

请问还有其它方案来替换吗?

==============================

因为7.1还没有正式发布,而且7.1的发布文档上面写了以后不建义使用类似mcrypt的扩展,所以该问题目前无解。如果有遇到相同问题的同学,请使用5版或7.0版 。

非常不赞同 @eechen 的说法,谁说手册上没说的!?

http://php.net/manual/zh/migr...

引用手册原文:

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

在PHP 7.1中还能在PHP安装包中找到和使用mycrypt扩展,在PHP 7.2中会被移除,不过我们依然可以从PECL下载到源码,编译和安装这个扩展。

不过最好还是遵循PHP的建议,通过OpenSSL逐渐取代mcrypt所扮演的角色。

可以使用非对称加密方式!公钥加密,私钥解密。

mcrypt 扩展在 7.1 已经被 deprecated, 在 7.2 会被从内置迁到 PECL 里。

如果需要完全兼容只能忽略 deprecated 使用;

如果只是需要类似功能的替代品,官方建议是使用 OpenSSL 扩展。

具体可以看官方手册。

但是手册上并没有deprecated的Warning呀,自然也就没有说明替代方案.

而且我用PHP 7.0运行也没有这个不建议使用的提示.

最后就是你说的7.1还没有正式发布,你可以把它当做一个bug.

补充:

多谢楼下提醒,PHP手册在7.1迁移页面给出了替代方案,就是用OpenSSL取代MCrypt.

下面看看用OpenSSL实现对称加密AES和非对称加密RSA.

AES:

RSA:

用openssl生成rsa密钥对(私钥/公钥):

openssl genrsa -out rsa_private_key.pem 1024

openssl rsa -pubout -in rsa_private_key.pem -out rsa_public_key.pem

相关标签:php

本文原创发布php中文网,转载请注明出处,感谢您的尊重!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值