C#中大文件的容错MD5计算

波尔·索伦森

有什么方法可以对大文件进行增量md5计算,但是在第n个步骤中,要保存读取位置和md5状态数据,例如当进程失败或发生网络/ IO时,可以从上一个已知的正确位置重新启动它。文件。

保罗·威廉姆斯

据我所知,内置MD5无法做到这一点无法检索和还原状态数据。现有的HashAlgorithm.State字段似乎用于完整性检查哈希操作。

我也没有找到使用Microsoft Crypto API做到这一点的方法,但是我可能是错的。

使用别人经过良好测试的安全代码几乎总是更好。在这种情况下,我不知道任何能够序列化内部状态的实现。

我认为您可以为此编写自己的MD5类。请参阅MD5规范与输入的大小相比,所涉及的内部状态非常小。可以将这种状态公开为某种不透明的对象,调用者可以将其保留并在以后还原它。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章