- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
给定一个“字符串文件名”,我如何使用 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/
我有以下情况:一个包含大文件的目录树(大约 5000 个文件,大小约为 4Gb)。我需要在这棵树中查找重复项。 我尝试使用 Java 内置的 CRC32 和 Adler32 类,但它非常慢(每个文件大
我目前正在编写一个 C 程序,该程序从另一个生成的数据文件构建 PNG 图像。图像是调色板类型。 Adler-32 校验和是针对...的未压缩数据计算的吗 a) IDAT 数据 block 中的每个压
Adler-32 校验和算法对 65521 求模求和。我知道 65521 是适合 16 位的最大质数,但为什么在此算法中使用质数很重要? (我敢肯定,一旦有人告诉我答案就会显而易见,但我大脑中的数论部
CRC-32 有一个奇妙的特性,即在消息末尾附加一个 CRC 允许您通过计算整个事物的 CRC 来执行消息验证,如果校验和通过,则最终结果将为零。 这个属性应该适用于 CRC-32 的兄弟 Adler
我遇到了一些 zlib 压缩的不同实现之间不兼容的问题。 作为测试用例,我想创建具有 10000 个 double 的测试数据,范围从 0 到 10000。 我创建了一些测试代码来压缩和解压缩此数据,
我是一名优秀的程序员,十分优秀!