我有一个ASP.NET 5 RC1(很快将成为ASP.NET Core)Web应用程序项目。
需要计算SHA1哈希值。
各种SHA1
子类可用并在DNX 4.5.1下构建,但似乎并不是DNX Core 5.0下的任何可用实现。
我是否必须添加引用以引入该代码,或者它是否仅适用于.NET Core?
根据this article:
.NET Core由一组名为“CoreFX”的库和一个名为“CoreCLR”的小型优化运行时组成。
果然,在CoreFX repo中,没有SHA1
的子类:
但是在CoreCLR中,子类就像你期望的那样,在mscorlib中:
为什么coreclr和corefx之间存在重叠?这个mscorlib代码不适用于.NET Core项目吗?
System.Security.Crytpography.Algorithms
package on NuGet的说明:
提供加密算法的基本类型,包括散列,加密和签名操作。
是否有其他包包含实际算法而不仅仅是基类?这件事还没有移植过吗?您是否可以在某处查看API的状态和路线图,就像Mono一样?
答案 0 :(得分:29)
添加System.Security.Cryptography.Algorithms
nuget包。
然后
var sha1 = System.Security.Cryptography.SHA1.Create();
var hash = sha1.ComputeHash(myByteArray)