一尘不染

不推荐使用mcrypt,替代方法是什么?

php

现在我正在使用类似

mcrypt_encrypt(MCRYPT_RIJNDAEL_128, md5($key, true), $string, MCRYPT_MODE_CBC, $iv)

我需要您的意见以最好/最有效的方式对密码进行加密,当然,加密的密码应受PHP
7.xx支持,并且也应可解密,因为我的客户确实希望选择“恢复”密码而不生成新密码一。


阅读 396

收藏
2020-05-26

共1个答案

一尘不染

最佳做法是对密码进行哈希处理,以使密码不可解密。这使可能已获得对数据库或文件的访问权限的攻击者的处境变得更加困难。

如果必须加密数据并使其可解密,请访问https://paragonie.com/white-paper/2015-secure-php-data-
encryption以获得安全加密/解密指南。总结该链接:

  • 使用Libsodium-PHP扩展
  • 如果您不能使用Libsodium,请使用defuse / php-encryption-直接使用PHP代码
  • 如果您无法使用Libsodium和化解/ PHP加密,使用OpenSSL的 -很多服务器都已经安装了这个。如果没有,则可以使用–with-openssl [= DIR]进行编译
2020-05-26