在常规的C#应用程序中,哪个类用于散列:xxxManaged或xxx(即SHA1Managedvs SHA1)以及为什么?
(重写的问题,请看原始的历史).
问题就在标题中.
为什么.NET框架中没有托管的MD5实现?
我特别谈到MD5算法的纯托管代码实现,它在.NET框架中不存在.
在System.Security.Cryptography命名空间内,我知道MD5抽象基类(必须继承并且不能按原样使用),而且我也知道MD5CryptoServiceProvider和MD5CNG都提供了来自然而,OS的底层CSP(加密服务提供商)和CNG(加密下一代)提供商都是非托管代码.
答案更新:
 
我很欣赏,虽然这个问题应该有 "一个真正的答案",但我们(SO社区)可能不知道它,除非Microsoft框架设计师(或直接认识一个人)是该社区的一部分,然而,很多人提出了非常合理的"有根据的猜测",从框架中省略了管理MD5实现的想法,但是,我仍然很想知道是否有人确实知道这个问题的"真实"答案.