这听起来像是一个奇怪的问题,而且我实际上不得不问这个问题感觉有点奇怪,但是在花了几个小时查看 MSDN 文档以了解bcrypt
在 Vista 中添加的例程之后,我几乎得出了结论:没有实际的 bcrypt 支持!
根据维基百科:
bcrypt 是一种用于密码的自适应加密散列函数……基于 Blowfish 密码……除了加入盐以防止彩虹表攻击之外,bcrypt 还是一种自适应散列:随着时间的推移,它可以变得越来越慢,因此它仍然具有抵抗力针对哈希和盐的特定蛮力搜索攻击。
但是,从 MSDN 上的文档来看,“bcrypt”库显然实际上是用于加密和散列的通用接口。您必须通过BCryptOpenAlgorithmProvider 函数获取“算法提供程序”的句柄,该函数有多种内置算法可供选择。但是“河豚”这个词并没有出现在列表中的任何地方。
所以我错过了什么吗?我读错了吗?还是 Windows 的“bcrypt”库实际上根本不支持 bcrypt?