MD5CryptoServiceProvider的含义是什么,它可以做什么,任何机构都可以告诉我吗?
答案 0 :(得分:3)
这是.NET Hash class。它允许您创建不可逆的数据签名,主要用于匹配密码。
相反,现在使用SHA256以上版本,因为除了对下载的文件进行哈希检查之外,MD5不再用于加密。
编辑SHA256上的示例:
byte[] data = new byte[DATA_SIZE];
byte[] result;
SHA256 shaM = new SHA256Managed();
result = shaM.ComputeHash(data);
这是直接来自MSDN(正常散列)的代码示例。如你所见,它也很简单。
现在使用CryptoProvider,请查看此链接here,这是一个论坛帖子,但很好地展示了用法。
答案 1 :(得分:1)
它可以帮助您获取流的MD5 hash。顺便说一下,它不是特定于ASP.NET的 - 任何.NET代码都可以使用它。
当您希望能够验证在两个不同时间呈现的数据片段是否相同时(例如,对于密码或文件一致性),通常使用散列函数。 MD5现在被认为不是很安全 - 还有其他哈希(例如SHA-256)更难攻击。 (攻击通常包括一个知道散列的攻击者,然后找到一些散列到相同值的数据,但不知道原始数据。)