Dar*_*fer 3 c++ qt cryptography botan qcar-sdk
我正在将一部分.NET应用程序移植到Linux上的Qt.我试图复制.NET函数的结果来创建密码+ salt的SHA-256哈希..NET代码是
return new SHA256Managed().ComputeHash(buffer);
Run Code Online (Sandbox Code Playgroud)
缓冲区是连接到密码的salt.
我考虑了几个crytopgraphic库,包括QCA和Botan,在阅读了几条评论后,我决定尝试Botan.但是,我没有在文档中找到正确的位置来执行上面列出的代码.
有人能指出我在精细手册中的位置或讨论使用Botan创建简单哈希的教程吗?我一直在谷歌搜索几个小时没有找到解决方案.管道和流有很多SHA-256哈希的例子,但我还没有找到简单哈希计算的例子.
我猜你只需要文档.
做你想要的代码是这样的:
#include <vector>
#include <sha2_32.h>
using namespace Botan;
secure_vector<byte> somefunction(std::vector<byte> input) {
SHA_256 sha;
return sha.process(input);
}
Run Code Online (Sandbox Code Playgroud)
正如我在评论中提到的,这是一种非常不安全的密码存储方式,因此我建议使用bcrypt或PBKDF2(两者都在Botan中实现).PBKDF2也是.NET标准库的一部分,因此没有理由使用通用散列函数而不是安全密码散列函数.
bcrypt所需要的只是:
generate_bcrypt(password, random_number_generator, work_factor)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3772 次 |
| 最近记录: |