在我的情况下,我正在尝试在目前需要使用php 5.3.3-7 + squeeze19的服务器上使用作曲家包“jeremykendall / password-validator”。
但是这个lib需要php 5.3.7。
关于如何解决这个问题的任何想法?或测试它是否有效?
我想我可以将lib分叉进行测试,但有没有人知道任何可以帮助的作曲家功能?
答案 0 :(得分:3)
我怀疑要求的原因与ircmaxell's more famous password_compat library相同:
要求
此库需要
PHP >= 5.3.7
或具有$2y
的版本 修复后向移植到它(如RedHat提供)。请注意Debian的 5.3.3版本支持 NOT 。由于此版本问题,已删除运行时检查。查看 如果您的系统可以使用password_compat,请运行随附的
version-test.php
。如果它输出“通过”,你可以安全地使用 图书馆。如果没有,你不能。如果您尝试在不受支持的版本上使用password-compat, 尝试创建或验证哈希将返回
false
。你去过 警告!原因是5.3.7之前的PHP包含security issue with its BCRYPT implementation。 因此,强烈建议您升级到较新版本 在使用此图层之前使用PHP。
听起来你的5.3.3版本不有后端修复(基于它看起来基于Debian,确认你自己是否已经专门向你的版本移植了修复),所以你真的不应该在5.3.3上运行这段代码(或任何基于bcrypt的代码),因为它可能会让你面临实际的安全漏洞。
答案 1 :(得分:0)
有问题的图书馆有一个测试套件。只需在5.3.3框上运行测试,如果它们有效,您可以更自信地使用它。
我推测它们可能不会:作者必须有充分的理由来指定特定版本的PHP。 5.3.7中可能存在一个错误修正,该部分库依赖于。
在这种情况下,我建议您编写几个自己的单元测试,以确保使用该库的代码部分仍然适用于该环境。