C# FIPS 验证加密算法的问题

声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow 原文地址: http://stackoverflow.com/questions/2104331/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me): StackOverFlow

提示:将鼠标放在中文语句上可以显示对应的英文。显示中英文
时间:2020-08-06 23:31:32  来源:igfitidea点击:

Problem with FIPS Validated Cryptographic Algorithms

c#.netwpfwindows-xpfips

提问by Dave

I am running Visual Studio 2008 Version 9.0.30729.1 SP with .NET 3.5 SP 1 under Windows XP Pro Version 2002 SP 3 with an Intel Core 2 Duo E8400 3 GHz processor.

我在 Windows XP Pro Version 2002 SP 3 和 Intel Core 2 Duo E8400 3 GHz 处理器下运行 Visual Studio 2008 版本 9.0.30729.1 SP 和 .NET 3.5 SP 1。

I am developing a C# WPF application that uses the Microsoft Patterns & Practices group's Composite Application Library (CAL).

我正在开发一个 C# WPF 应用程序,它使用 Microsoft 模式与实践组的复合应用程序库 (CAL)。

I am getting the following compliation error in XAML:

我在 XAML 中收到以下编译错误:

"MC1000: This implementation is not part of the Windows platform FIPS validated cryptographic algorithms."

“MC1000:此实现不是 Windows 平台 FIPS 验证的加密算法的一部分。”

I have found a hotfix that is supposed to fix this in Microsoft Knowledge Base aritcle 935434. However, the installer for this hotfix reports the following error:

我在 Microsoft 知识库文章 935434 中找到了一个应该修复此问题的修补程序。但是,此修补程序的安装程序报告以下错误:

"The upgrade patch cannot be installed by the Windows Installer service because the program to be upgraded may be missing, or the upgrade patch may update a different version of the program. Verify that the program to be upgraded exists on your computer and that you have the correct upgrade patch."

“Windows Installer 服务无法安装升级补丁,因为要升级的程序可能丢失,或者升级补丁可能更新了不同版本的程序。请验证要升级的程序是否存在于您的计算机上,并且您有正确的升级补丁。”

The page for the hotfix lists .NET 3.0 as a prerequisite. Though I'm working with .Net 3.5, my machine does have .NET 3.0 installed as well. I would therefore expect this hotfix to install. It was my hope that even though the hotfix is targeted at .NET 3.0, it would nonetheless solve my problem.

修补程序页面列出了 .NET 3.0 作为先决条件。虽然我使用 .Net 3.5,但我的机器也安装了 .NET 3.0。因此,我希望安装此修补程序。我希望即使修补程序针对 .NET 3.0,它仍然可以解决我的问题。

In any event, I cannot install the hotfix. Does anybody have any alternate suggestions on how I can get past the "This implementation is not part of..." compilation error I'm seeing?

无论如何,我无法安装修补程序。有没有人对我如何克服我看到的“此实现不是...的一部分”编译错误有任何替代建议?

Thanks, Dave

谢谢,戴夫

采纳答案by Raj Rao

I wonder if FIPS compliance checking is turned on on your machine. Here is a post that I had written a while back that talks about turning it off and why you might be getting this error messages. Basically FIPS is a US federal government standard for security and encryption. Based on it, some encryption algorithms will not run on your machine, if your machine is running in FIPS compliance mode. Easy fix in that case is to turn off FIPS compliance checking. The right fix is to pick the correct encryption algorithm.

我想知道您的机器上是否开启了 FIPS 合规性检查。这是我不久前写的一篇文章,讨论了将其关闭以及为什么您可能会收到此错误消息。基本上,FIPS 是美国联邦政府的安全和加密标准。基于它,如果您的机器在 FIPS 合规模式下运行,某些加密算法将不会在您的机器上运行。在这种情况下,简单的解决方法是关闭 FIPS 合规性检查。正确的解决方法是选择正确的加密算法。

Here is my post: http://blog.aggregatedintelligence.com/2007/10/fips-validated-cryptographic-algorithms.htmland this one: http://blog.aggregatedintelligence.com/2009/08/cryptographic-algorithms-and-net.html

这是我的帖子:http: //blog.aggregatedintelligence.com/2007/10/fips-validated-cryptographic-algorithms.html和这个:http: //blog.aggregatedintelligence.com/2009/08/cryptographic-algorithms-和-net.html

回答by Oalatorre

I have some hours looking for this answer.

我有几个小时在寻找这个答案。

I am using Win7 64 Bits, I just turn as Disabled this local policy:

我正在使用 Win7 64 位,我只是将这个本地策略设为禁用:

System cryptography: Use FIPS 140 compliant cryptographic algorithms, including encryption, hashing and signing algorithms

系统加密:使用符合 FIPS 140 的加密算法,包括加密、散列和签名算法

On Control Panel ->Administrative Tools ->Local Computer Policy ->Computer Configuration ->Windows Setting ->Security Settings ->Local Policies ->Security Options

在控制面板 -> 管理工具 -> 本地计算机策略 -> 计算机配置 -> Windows 设置 -> 安全设置 -> 本地策略 -> 安全选项

Enjoy it!!!

好好享受!!!