Tag: fips

基于SHA512的具有HMACfunction的FIPSvalidation应用程序?

我正在构建一个FIPSvalidation的应用程序,并在我的计算机上打开FIPS模式。 我需要HMACfunction,希望基于SHA512。 我知道HMAC SHA1function已通过FIPSvalidation,但我有一个散列函数SHA512CryptoServiceProvider,它经过FIPSvalidation,我知道FIPS实际上允许使用SHA512。 在使用FIPSvalidation的HMAC SHA512的C#中是否有类似的HMACfunction?

是否有针对.NET的FIPS兼容的密钥SHA256哈希算法?

我正在使用HMACSHA256创建一个带键的SHA256哈希,代码如下: HMACSHA256 hmac = new HMACSHA256(Encoding.UTF8.GetBytes(secretKey); byte[] hash = hmac.ComputeHash(Encoding.UTF8.GetBytes(data)); string hashResult = string.Empty; for (int i = 0; i < hash.Length; i++) { hashResult += hash[i].ToString("x2"); // hex format } 这工作得很好,但是,它在启用FIPS的环境中失败,因为HMACSHA256使用的底层SHA256Managed实现本身不符合FIPS。 通过MSDN文档搜索,我发现KeyedHashAlgorithm的唯一SHA256实现是HMACSHA256。 我需要使用键控SHA256哈希来签署Web服务请求(因此我无法更改哈希类型),并且我必须能够在启用FIPS的环境中运行。 谷歌搜索显示SHA256CryptoServiceProvider和SHA256Cng都是符合FIPS标准的创建SHA256哈希的方法,但似乎都不支持创建键控哈希。

如何在Visual Studio 2010和Windows 7中使用FIPSvalidation的加密算法?

我在Windows 7中启用了FIPS兼容模式,但现在我的代码无法编译,并出现以下错误: Source file ‘whatever.cs’ could not be opened (‘This implementation is not part of the Windows Platform FIPS validated cryptographic algorithms.’) 我正在使用SHA1(散列)和TripleDes(加密)加密。 我也尝试过SHA512和AES(256位密钥)。 我不能让项目继续构建,但我需要编译它以使用FIPS兼容算法。

FIPSvalidation密码算法的问题

我在Windows XP Pro版本2002 SP 3下运行带有.NET 3.5 SP 1的Visual Studio 2008版本9.0.30729.1 SP,带有Intel Core 2 Duo E8400 3 GHz处理器。 我正在开发一个使用Microsoft Patterns&Practices组的复合应用程序库(CAL)的C#WPF应用程序。 我在XAML中收到以下compliation错误: “MC1000:此实现不是Windows平台FIPSvalidation的加密算法的一部分。” 我找到了一个应该在Microsoft知识库aritcle 935434中修复此问题的修补程序。但是,此修补程序的安装程序报告以下错误: “Windows Installer服务无法安装升级修补程序,因为要升级的程序可能会丢失,或者升级修补程序可能会更新程序的其他版本。请确认您的计算机上存在要升级的程序,并且您有正确的升级补丁。“ 此修补程序的页面列出了.NET 3.0作为先决条件。 虽然我正在使用.Net 3.5,但我的机器也安装了.NET 3.0。 因此,我希望安装此修补程序。 我希望即使这个修补程序是针对.NET 3.0的,它仍然可以解决我的问题。 无论如何,我无法安装此修补程序。 有没有人有任何关于我如何能够通过“这个实现不是…的一部分”的编译错误的替代建议? 谢谢,戴夫

web.config中的enforceFIPSPolicy标志似乎不适用于Web应用程序

我正在尝试设置一个Web应用程序,以便在Windows注册表中将FIPSAlgorithmPolicy设置为1的环境中工作(特别是HKLM / SYSTEM / CurrentControlSet / Control / Lsa)。 启用此标志后,对MD5CryptoServiceProvider类的任何调用MD5CryptoServiceProvider将导致使用以下堆栈跟踪抛出Invalid Operation Exception : [InvalidOperationException: This implementation is not part of the Windows Platform FIPS validated cryptographic algorithms.] System.Security.Cryptography.RijndaelManaged..ctor() +10480142 System.Web.Configuration.MachineKeySection.ConfigureEncryptionObject() +439 System.Web.Configuration.MachineKeySection.EnsureConfig() +152 System.Web.Configuration.MachineKeySection.GetEncodedData(Byte[] buf, Byte[] modifier, Int32 start, Int32& length) +48 System.Web.UI.ObjectStateFormatter.Serialize(Object stateGraph) +381 System.Web.UI.Util.SerializeWithAssert(IStateFormatter formatter, Object stateGraph) +59 System.Web.UI.HiddenFieldPageStatePersister.Save() +89 System.Web.UI.Page.SaveAllState() +1117 System.Web.UI.Page.ProcessRequestMain(Boolean […]

C#AES算法何时符合FIPS标准?

现在,我可以让RijndaelManaged算法在打开FIPS的本地安全设置的计算机上工作的唯一方法就是禁用它 。 它是一台政府计算机,所以我不确定它会如何飞行。 我在msdn博客网站上看过他们说他们正在开发AES FIPS兼容版本的post,但我似乎无法找到更多。 有谁知道这可能发生的时间?