PHP 最新发布的 7.2.0 版本使得它安全性大大提高,该版本改进了编程语言对密码学和密码 Hash 算法的支援,并使其更现代化。到目前为止,在 PHP 7.2 中最显着的变化是,新增对密码哈希算法 Argon2 的支持。Argon2 于 2010 年初开发,现已成为 IETF 中普遍认可的互联网标准。
目前认为该算法在安全性和成本效益方面优于当今使用最广泛的密码散列函数 Bcrypt。除了密码散列函数外,该算法还适用于与现代电子(加密)货币一起使用的工作证明操作。从发布的 PHP 7.2 开始,Argon2 v1.3 已经被添加到 PHP 核心中,开发者可以通过 password_hash() 函数使用它。
// Argon2i with default cost factors password_hash('password', PASSWORD_ARGON2I);
PHP 7.2 的另一个主要变化是从 PHP 核心中删除旧的 Mcrypt 加密库,并增加了一个更现代的替代品 Libsodium。Libsodium 库的开发者表示要摆脱 ext/mcrypt,因为这是已被抛弃的软件,会抑制语言的发展。