标签: c# c++ c
我正在寻找一种计算整个闪存驱动器内容校验和的好方法。
不是特定文件或一组文件,而是整个读取的卷,因此它永远不会更改。
有没有人知道任何C,C ++或C#代码可以打开闪存驱动器卷并有效地读取字节,因此我可以将其提供给MD5或SHA1哈希算法?
我现在看到很多代码来读取文件,但我想从头到尾阅读整个物理驱动器。
答案 0 :(得分:2)
您可以使用操作系统级文件API打开整个卷(C#建议使用Windows,其功能为CreateFile)。
CreateFile
您可能应该首先卸载文件系统,但是,以免其他一些进程在您使用它时更改您的数据。此外,整个卷的校验和可能不太有用,因为只要“上次访问时间”字段更新,它就会发生变化。
答案 1 :(得分:0)
或许查看OpenSSL中dd和SHA-1函数的源代码。
dd