0

我在 Visual Studio 中使用 OpenSSL 来实现 OpenSSL 的不同用途。

我只是将二进制文件读入缓冲区并将 SHA1 应用于它

EVP_DigestUpdate( hCtx, fin_buf, fin_size );
int rez=EVP_DigestFinal( hCtx, pTmpBuffer, &nDigestSz );
pDigest = new unsigned char[ nDigestSz ];
memcpy( pDigest, pTmpBuffer, nDigestSz * sizeof( unsigned char ) );

fin_buf 保存文件的字节数。

FILE *fhash = fopen("hash.sha1", "wb");
fwrite(pDigest, 1, nDigestSz, fhash);
fclose(fhash);

在这里,我将缓冲区写入 .sha1 文件。

我需要检查文件的哈希值。谁能给我看一个在 OpenSSL C++ 中检查哈希的例子吗?

4

1 回答 1

0

哈希的主要思想是,当您在相同的输入上计算它时,您将获得相同的哈希值。如果您阅读原始文件并执行您的第一个代码部分,则摘要的值应该等于 .sha1 文件的内容。

于 2013-01-09T18:26:38.753 回答