使用crypto ++的std :: vector <uint8_t>的sha1哈希

时间:2018-10-09 05:25:19

标签: c++ crypto++

我收集了std::vector<uint8_t>类型的向量,并且我需要为每个向量存储一个散列值。 我想为此使用crypto ++。但我不确定是否可行。据我所知,如果将其设置为std::vector<byte>,我将可以。但是,我所看到的示例还提供了std::vector<byte>中的哈希值。那我想用crypto ++做什么还是我需要寻找另一个库?如果是,您能提供一个例子吗?

编辑: 字节指针(https://www.cryptopp.com/wiki/User_guide:_cryptlib.h)的示例:

byte const* pbData1 = ...;
byte const* pbData2 = ...
unsigned int nData1Len = ...;
unsigned int nData2Len = ...;
byte abDigest[SHA::DIGESTSIZE];

SHA hash;
hash.Update(pbData1, nData1Len);
hash.Update(pbData2, nData2Len);
hash.Final(abDigest);

// abDigest now contains the hash of pbData1 and pbData2;
// the object 'hash' can now be reused to calculate another digest

...

SHA hash;
hash.Update(pbData1, nData1Len);
hash.Update(pbData2, nData2Len);
if (!hash.Verify(abDigest))
    throw "abDigest does not contain the right hash";

0 个答案:

没有答案