2009-12-08 23 views
4

我宁愿使用crypt函数并使用blowfish加密,但是该模块的当前实现使用散列函数,该函数不提供此加密方法。那么,Kohana的auth模块中最安全的算法是什么? SHA-512会是一个不错的选择,还是我最好修改模块以使用crypt和blowfish?Kohana的auth模块中最安全的算法是什么?

+0

1为好的问题 – 2009-12-08 20:25:22

回答

4

从回答这个问题计算器: SHA512 vs. Blowfish and Bcrypt

应该足以说 bcrypt或SHA-512是否足够好。而 答案是肯定的,无论是算法 保证足够违约将发生 通过实施缺陷,而不是 密码分析。

换句话说,使用Kohana中已经有点强化的实现看起来比较聪明,试图修改模块并可能引入新的实现错误。

+0

谢谢,尽管下面通过Theran所示的点是好的。不过我认为你的建议是对的,我将使用Kohana内置的SHA-512模块。再次感谢! – amgeex 2009-12-09 05:11:34

1

它看起来像SHA-512是你最好的选择。

总结从danieltalsky的答案的链接的内容,关于SHA-512的恶劣的是,它的速度快。这是一个很好的散列,但SHA-512的速度意味着攻击者拥有散列密码的副本可以每秒进行更多猜测。 bcrypt的散列速度要慢得多,所以测试每个密码猜测所需的时间会更长,因此查找用户的一个弱密码时间会更长。

您可以尝试添加bcrypt或某种形式的拉伸到Kohana的验证模块,但您的时间可能会更好地确保您的服务器节制用户尝试登录的速度。

+0

谢谢,我知道散列算法的慢度很好,我会看看它如何在Kohana验证模块上工作。也许我可以进一步减慢速度,但对于初学者,我会照原样使用它。谢谢回复! – amgeex 2009-12-09 05:12:33

相关问题