本文中的内容,涉及到cbc加密算法,略显高大上。在mcrypt.so扩展中,有很多的新的加密算法。本文中涉及的CBC模式,仅仅是其中的一种模式。不过,这些相关算法,并不是比较常用。所以,苏南大叔也就是讲述讲述简单的应用。文末链接中,有php官方的更多函数说明。这个AES-CBC加密,在keyiv一致的前提下,每次加密结果都是一样的。这个和RSA加密是不一致的。

苏南大叔:php利用mcrypt.so扩展,如何解密AES-CBC模式数据? - electron-cbc-decode
php利用mcrypt.so扩展,如何解密AES-CBC模式数据?(图1-1)

本文测试环境:mac/php72/mcrypt。值得注意的是:mcrypt.so中的大量函数,已经是被php官方废弃的状态。在php73中,已经全面不支持mcrypt系列函数了。所以,本文的应用范围是有限的。对于php7以上如果加载了mcrypt.so后,再进行使用相关mcrypt系列函数的话。有可能会有下面的警告提示信息:

Deprecated: Function mcrypt_decrypt() is deprecated in /code/test.php on line 22

所以,在本文的范例中,大量使用了@操作符来抑制警告信息的输出。如果您想核对一下结果的话,本文的解密结果都是文本"苏南大叔"。

安装mcrypt

本文中的代码如果要顺利执行,是需要个mcrypt.so扩展的。所以,请确定您的php开启了mcrypt.so扩展。下面的两篇文章,是演示如何编译安装mcrypt扩展的。

相关链接

总结

本文中苏南大叔留下了两个伏笔:

  • 由于mcrypt.so扩展,已经被废弃了。那么,是否有替代方案呢?这里,苏南大叔留下个伏笔。
  • 本文也仅仅讲述CBC模式的解密,没有讲述加密。那么CBC模式如何加密呢?这是另外的一个伏笔。
  • https://newsn.net/tag/cbc/
如果本文对您有帮助,或者节约了您的时间,欢迎打赏瓶饮料,建立下友谊关系。
本博客不欢迎:各种镜像采集行为。请尊重原创文章内容,转载请保留链接作者。
本站采用创作共用版权协议, 要求署名、非商业用途和相同方式共享。
转载本站内容必须也遵循“署名-非商业用途-相同方式共享”的创作共用协议。
未经许可,规模化镜像抄袭本站内容的行为,将会根据有关法律法规进行维权。
程序如此灵动~》下所有原创文章,如被用于商业用途,请您按规定支付稿费。

 【加群】加入QQ群【175454274】和大家一起讨论这个问题

 【源码】本文代码片段及相关软件,请点此获取

 【绝密】秘籍文章入口,仅传授于有缘之人   php    mcrypt

本站的忠实读者小伙伴,正在阅读下面这些文章: