我正在为 C 寻找一个简单易用的跨平台 bcrypt 库。我搜索了几个地方,但似乎没有什么能比得上以下的易用性:
http://bcrypt.codeplex.com/SourceControl/changeset/view/1eef0262901c#BCrypt.Net.Test%2fTestBCrypt.cs
为什么与这个 .NET lib 相比,它的所有 C 实现都是一场噩梦?基本上2个功能是我正在寻找的。
1)生成盐(返回一个字符串)
2)使用给定的盐和密码哈希字符串(返回一个字符串)
我正在为 C 寻找一个简单易用的跨平台 bcrypt 库。我搜索了几个地方,但似乎没有什么能比得上以下的易用性:
http://bcrypt.codeplex.com/SourceControl/changeset/view/1eef0262901c#BCrypt.Net.Test%2fTestBCrypt.cs
为什么与这个 .NET lib 相比,它的所有 C 实现都是一场噩梦?基本上2个功能是我正在寻找的。
1)生成盐(返回一个字符串)
2)使用给定的盐和密码哈希字符串(返回一个字符串)
您的 bcrypt 的 C 选项似乎是:
在 OpenBSD 中:https ://github.com/openbsd/src/blob/master/lib/libc/crypt/bcrypt.c
在 OpenWall 中:http: //openwall.com/crypt/
C 实现似乎非常易于使用。OpenBSD 版本如下所示:
char *bcrypt(const char *key, const char *salt);
char *bcrypt_gensalt(u_int8_t log_rounds);
PS 考虑scrypt新代码,如果你不限于使用 bcrypt 只是由于向后兼容性,