gpt4 book ai didi

c++ - 给定文件名,如何使用 Crypto++ 获取 Adler32

转载 作者:太空宇宙 更新时间:2023-11-04 12:28:14 28 4
gpt4 key购买 nike

给定一个“字符串文件名”,我如何使用 C++ Crypto++ 库获取 Adler32 校验和。我对使用他们的 Source and Sink 系统有点困惑。

下面是执行 MD5 的代码框架,但我似乎找不到任何关于 Adler32 用法的示例或教程。

string filename = "/tmp/data.txt"
string file_adler32_digest;
string file_md5_digest;

MD5 hashMD5;

FileSource fs( filename.c_str(),
true,
new HashFilter( hashMD5,
new HexEncoder( new StringSink( file_md5_digest ) ) ) );

/* Confusion begins here */

//how do I do the adler32 ?

/* Confusion ends here */

cout << file_adler32_digest << endl
<< file_md5_digest << endl;

好的示例和示例代码在这里 http://www.cryptopp.com/wiki/Category:Sample对于所有 Crypto++(我想要的 Adler32 东西除外)

最佳答案

如果你关注这个http://www.cryptopp.com/wiki/HashFilter ,你必须为 hashAdler32 更改 hashMD5,为 file_adler32_digest 更改 file_md5_digest

Adler32 hashAdler32;

FileSource( filename.c_str(),
true,
new HashFilter( hashAdler32,
new HexEncoder( new StringSink( file_adler32_digest ) ) ) );

在此之后 file_adler32_digest 应该包含所需的散列。

关于c++ - 给定文件名,如何使用 Crypto++ 获取 Adler32,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/827634/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com