gpt4 book ai didi

c# - SHA256CryptoServiceProvider 不符合 FIPS 标准?

转载 作者:太空狗 更新时间:2023-10-29 23:39:07 24 4
gpt4 key购买 nike

我正在寻找符合 FIPS 的 C# 中的 SHA256 实现。事实证明 SHA1CryptoServiceProvider 有效。但是为什么 SHA256CryptoServiceProvider 会跳闸

{"This implementation is not part of the Windows Platform FIPS validated cryptographic algorithms."}

错误?看起来它应该可以正常工作。

var sha = System.Security.Cryptography.SHA256CryptoServiceProvider.Create();   // not FIPS

在本例中,我使用的是 .NET 4.5,但同样的事情发生在 3.5 和 4.0 中。我认为 SHA256CryptoServiceProvider 是符合 FIPS 的 SHA256Managed 替代方案。 SHA256Cng 抛出相同的错误。

更新。我想我需要制作一个“新的 SHA256CryptoServiceProvider”而不是使用 Create()

最佳答案

正如原始发布者在更新中建议的那样,解决方案是实际创建 SHA256CryptoServiceProvider(或 512)的新实例。调用 Create 将不起作用:

var csp = new SHA512CryptoServiceProvider();
byte[] hashedBytes = csp.ComputeHash(......);
String hashedText = Convert.ToBase64String(hashedBytes);

关于c# - SHA256CryptoServiceProvider 不符合 FIPS 标准?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21326598/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com