最近做的winform项目中,有个功能使用了MD5 加密,本地测试是没有问题的,但是上线后有些用户反馈说提示如下错误

一、问题描述

中文版错误截图

英语版错误截图

具体错误信息:

有关调用实时(JIT)调试而不是此对话框的详细信息,
请参见此消息的结尾。 ************** 异常文本 **************
System.InvalidOperationException: 此实现不是 Windows 平台 FIPS 验证的加密算法的一部分。
(以下隐藏了项目的信息) ************** 已加载的程序集 **************
mscorlib
程序集版本:4.0.0.0
Win32 版本:4.7.3324.0 built by: NET472REL1LAST_C
基本代码:file:///C:/Windows/Microsoft.NET/Framework64/v4.0.30319/mscorlib.dll
----------------------------------------
HelloFont
程序集版本:2.2.0.1
Win32 版本:2.2.0.1
基本代码:file:///D:/HyProject/GitHub/HelloFont/HanyiCloud/bin/Debug/HelloFont.exe
----------------------------------------
System.Windows.Forms
程序集版本:4.0.0.0
Win32 版本:4.7.3324.0 built by: NET472REL1LAST_C
基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System
程序集版本:4.0.0.0
Win32 版本:4.7.3353.0 built by: NET472REL1LAST_B
基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Drawing
程序集版本:4.0.0.0
Win32 版本:4.7.3190.0 built by: NET472REL1LAST_C
基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
iHawkAppControl
程序集版本:1.0.0.0
Win32 版本:1.0.0.0
基本代码:file:///D:/HyProject/GitHub/HelloFont/HanyiCloud/bin/Debug/iHawkAppControl.DLL
----------------------------------------
iHawkAppLibrary
程序集版本:1.0.0.0
Win32 版本:1.0.0.0
基本代码:file:///D:/HyProject/GitHub/HelloFont/HanyiCloud/bin/Debug/iHawkAppLibrary.DLL
----------------------------------------
HanyiCloudEntity
程序集版本:1.0.0.0
Win32 版本:1.0.0.0
基本代码:file:///D:/HyProject/GitHub/HelloFont/HanyiCloud/bin/Debug/HanyiCloudEntity.DLL
----------------------------------------
System.Net.Http
程序集版本:4.0.0.0
Win32 版本:4.7.3190.0 built by: NET472REL1LAST_C
基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Net.Http/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Net.Http.dll
----------------------------------------
System.Core
程序集版本:4.0.0.0
Win32 版本:4.7.3324.0 built by: NET472REL1LAST_C
基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll
----------------------------------------
System.Configuration
程序集版本:4.0.0.0
Win32 版本:4.7.3324.0 built by: NET472REL1LAST_C
基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
----------------------------------------
System.Xml
程序集版本:4.0.0.0
Win32 版本:4.7.3190.0 built by: NET472REL1LAST_C
基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
Newtonsoft.Json
程序集版本:12.0.0.0
Win32 版本:12.0.2.23222
基本代码:file:///D:/HyProject/GitHub/HelloFont/HanyiCloud/bin/Debug/Newtonsoft.Json.DLL
----------------------------------------
System.Numerics
程序集版本:4.0.0.0
Win32 版本:4.7.3190.0 built by: NET472REL1LAST_C
基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Numerics/v4.0_4.0.0.0__b77a5c561934e089/System.Numerics.dll
----------------------------------------
System.Runtime.Serialization
程序集版本:4.0.0.0
Win32 版本:4.7.3324.0 built by: NET472REL1LAST_C
基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Runtime.Serialization/v4.0_4.0.0.0__b77a5c561934e089/System.Runtime.Serialization.dll
----------------------------------------
System.Data
程序集版本:4.0.0.0
Win32 版本:4.7.3260.0 built by: NET472REL1LAST_C
基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_64/System.Data/v4.0_4.0.0.0__b77a5c561934e089/System.Data.dll
----------------------------------------
HanyiCloudClient
程序集版本:1.0.0.0
Win32 版本:1.0.0.0
基本代码:file:///D:/HyProject/GitHub/HelloFont/HanyiCloud/bin/Debug/HanyiCloudClient.DLL
----------------------------------------
Gdu.WinFormUI
程序集版本:1.0.0.0
Win32 版本:1.0.0.0
基本代码:file:///D:/HyProject/GitHub/HelloFont/HanyiCloud/bin/Debug/Gdu.WinFormUI.DLL
----------------------------------------
mscorlib.resources
程序集版本:4.0.0.0
Win32 版本:4.7.3190.0 built by: NET472REL1LAST_C
基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/mscorlib.resources/v4.0_4.0.0.0_zh-Hans_b77a5c561934e089/mscorlib.resources.dll
----------------------------------------
System.resources
程序集版本:4.0.0.0
Win32 版本:4.7.3190.0 built by: NET472REL1LAST_C
基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.resources/v4.0_4.0.0.0_zh-Hans_b77a5c561934e089/System.resources.dll
----------------------------------------
iHawkWeChatLoginLibrary
程序集版本:1.0.0.0
Win32 版本:1.0.0.0
基本代码:file:///D:/HyProject/GitHub/HelloFont/HanyiCloud/bin/Debug/iHawkWeChatLoginLibrary.DLL
----------------------------------------
System.Management
程序集版本:4.0.0.0
Win32 版本:4.7.3190.0 built by: NET472REL1LAST_C
基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Management/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Management.dll
----------------------------------------
Microsoft.mshtml
程序集版本:7.0.3300.0
Win32 版本:7.0.3300.0
基本代码:file:///C:/WINDOWS/assembly/GAC/Microsoft.mshtml/7.0.3300.0__b03f5f7f11d50a3a/Microsoft.mshtml.dll
----------------------------------------
iHawkFontLibrary
程序集版本:1.0.0.0
Win32 版本:1.0.0.0
基本代码:file:///D:/HyProject/GitHub/HelloFont/HanyiCloud/bin/Debug/iHawkFontLibrary.DLL
----------------------------------------
System.Windows.Forms.resources
程序集版本:4.0.0.0
Win32 版本:4.7.3190.0 built by: NET472REL1LAST_C
基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms.resources/v4.0_4.0.0.0_zh-Hans_b77a5c561934e089/System.Windows.Forms.resources.dll
---------------------------------------- ************** JIT 调试 **************
要启用实时(JIT)调试,
该应用程序或计算机的 .config 文件(machine.config)的 system.windows.forms 节中必须设置
jitDebugging 值。
编译应用程序时还必须启用
调试。 例如: <configuration>
<system.windows.forms jitDebugging="true" />
</configuration> 启用 JIT 调试后,任何未经处理的异常
都将被发送到在此计算机上注册的 JIT 调试程序,
而不是由此对话框处理。

 

二、错误分析

  FIPS是标准技术与标准国家协会为联邦计算机系统制定的标准和指南,用于描述文件处理、加密算法和其他信息技术标准的标准。

  不建议您启用FIPS模式,除非您是政府机构或被强制使用该模式,如果您的设备勾选该模式可能会导致部分应用程序无法正常使用。为何要关闭“FIPS”模式,该加密协议仅适合政府机构或一些特定机构的计算机,若个人设备勾选FIPS模式,则强制本计算机使用经过FIPS验证的加密协议,

启用FIPS模式后所有的应用程序只能使用经过FIPS验证的加密。大部分桌面应用程序采用的都是更快更安全的加密协议,部分应用的加密协议实际并没有通过FIPS认证。恰巧我使用的MD5加密就没有通过FIFS的认证。

三、解决方法

1、通过修改注册表解决 FIPS不兼容MD5

  “HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\FipsAlgorithmPolicy"  的enable设置为0 ,然后重启软件。

具体做法:

  首先按住“Windows + R”键,弹出运行对话框,在运行对话框输入“regedit”进入注册表,点击“确定”

           

  

  打开你需要的数值,鼠标右键该数值,点击“修改”

2、第二种方法,修改本地策略

  具体方法如下:

  Win+R组合键打开“运行”窗口,输入gpedit.msc命令打开本地组策略编辑器。

导航到组策略编辑器中的“计算机配置/Windows设置/安全设置/本地策略/安全选项”

点击“安全选项”后在右侧窗口中找到“系统加密:将FIPS兼容算法用于加密、哈希和签名”设置,然后双击它,设置如下:

  

3、第三种方法  通过设置应用程序配置文件中<enforceFIPSPolicy>元素值为false解决:

<configuration>
<runtime>
<enforceFIPSPolicy enabled="false"/>
</runtime>
</configuration>

  

4、第四个方法,改用FIFS认证的加密算法。。。。。

可能还有其他更好的方法,以上方法并不是每种方法都适用,也要视情况而定。

异常:System.InvalidOperationException: This implementation is not part of the Windows Platform FIPS validated cryptographic algorithms FIPS信息标准限值了MD5加密的更多相关文章

  1. 异常:System.InvalidOperationException: This implementation is not part of the Windows Platform FIPS validated cryptographic algorithms 这个实现是不是Windows平台FIPS验证的加密算法。解决方法

    遇见这个问题是在使用了MD5加密算法后报错的,可能的原因如下: 1.FIPS不兼容MD5,此时需要修改注册表 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\C ...

  2. c# 调用MD5CryptoServiceProvider出现 System.InvalidOperationException: This implementation is not part of the Windows Platform FIPS validated cryptographic algorithms.

    进注册表按Win+R运行regedit修改下面的值为0就可以了 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\FipsAlgorith ...

  3. This implementation is not part of the Windows Platform FIPS validated cryptographic algorithms

    异常消息:This implementation is not part of the Windows Platform FIPS validated cryptographic algorithms ...

  4. This implementation is not part of the Windows Platform FIPS validated cryptographic algorithms. 此实现不是 Windows 平台 FIPS 验证的加密算法的一部分 解决方案

    但web启用了md5加密后 有可能出现这样的错误 This implementation is not part of the Windows Platform FIPS validated cryp ...

  5. This implementation is not part of the Windows Platform FIPS validated cryptographic algorithms while caching 问题及解决

    一.背景    情节1:做别的测试安装下载了软件,妈蛋结果下了百度各种捆绑软件,之后一一卸载,清洁.    情节2:做完上述动作重启电脑后,有线连接连不上,尴尬,然后下载驱动,升级之后ok了. 二.问 ...

  6. This implementation is not part of the Windows Platform FIPS validated cryptographic algorithms while caching

    今天运行自己的网站时报了这样一个错误,很是纳闷,这个网站运行了这么久,怎么报这个错呢,原来是做缓存的时候用到了基于windows平台的加密算法.解决方法如下: 删除注册表下的这个节点即可.删除HKEY ...

  7. 解决方案:System.InvalidOperationException: 此实现不是 Windows 平台 FIPS 验证的加密算法的一部分。

    System.InvalidOperationException: This implementation is not part of the Windows Platform FIPS valid ...

  8. WPF 不要给 Window 类设置变换矩阵(分析篇):System.InvalidOperationException: 转换不可逆。

    原文:WPF 不要给 Window 类设置变换矩阵(分析篇):System.InvalidOperationException: 转换不可逆. 最近总是收到一个异常 "System.Inva ...

  9. ServerVersion 引发了“System.InvalidOperationException”类型的异常

    遇到这样一个问题:添加互评信息,断点调试,跳转到BLL层后就直接跳到SqlHelper中弹出错误,说:未将对象设置引用到实例等.还请人帮忙调试代码,调试半天发现抽象工厂并没成功完成反射,奇怪的是:将出 ...

随机推荐

  1. 【Lua】特性和一些基础语法

    在Lua中,你可以使用单行注释和多行注释. 单行注释中,连续两个减号"--"表示注释的开始,一直延续到行末为止.相当于C++语言中的"//". 多行注释中,由& ...

  2. xcode6.1 设置中文输入

    XCode6.1中设置中文输入方法:Product->scheme->Edit Scheme->Options->Application Region->中国 ios 模 ...

  3. SSM-SpringMVC-23:SpringMVC中初探异常解析器

    ------------吾亦无他,唯手熟尔,谦卑若愚,好学若饥------------- 本篇博客要讲的是异常解析器,SimpleMappingExceptionResolver简单映射异常解析器 可 ...

  4. SQL—对数据表内容的基本操作

    数据表  students      id name sex age address 101 张汉 男 14 杭州 102 欧阳钦 男 13 杭州 103 吴昊 男 14 北京 104 钱进进 男 1 ...

  5. Hibernate中cascade作用

    Hibernate中cascade作用 只有“关系标记”才有cascade属性: 一个操作因级联cascade可能触发多个关联操作.前一个操作叫“主控操作”,后一个操作叫“关联操作”. cascade ...

  6. 接口测试返回的json文件中字符串是乱序

    问题描述 接口测试中post方式匹配返回信息时显示不匹配, 但是statuscode明明是200, 而且用postman /restclient等工具测出来也是没问题的. 根本原因 封装了这么个方法来 ...

  7. 基于opencv3.0和下的条形码与二维码识别

    其中对条码与二维码的识别分为以下4个步骤 1. 利用opencv和Zbar(或者Zxing)对标准的条形码图片(即没有多余背景干扰,且图片没有倾斜)进行解码,将解码信息显示出来,并与原始信息对比. 2 ...

  8. 浅析Django之session与cookie

    浅析Django之session与cookie 1 session与cookie概述 原理: 由于HTTP协议是无状态,无连接的,当用户发起网路请求时,需要服务端能标识用户ID,用以存储用户相关信息, ...

  9. 深入css布局篇(2) — 定位与浮动

    深入css布局(2) - 定位与浮动      在css知识体系中,除了css选择器,样式属性等基础知识外,css布局相关的知识才是css比较核心和重要的点.今天我们来深入学习一下css布局相关的知识 ...

  10. Windows Ubuntu Bash申请免费通配符证书(Let's Encrypt)并绑定IIS

    什么是 Let’s Encrypt? 部署 HTTPS 网站的时候需要证书,证书由 CA 机构签发,大部分传统 CA 机构签发证书是需要收费的,这不利于推动 HTTPS 协议的使用. Let’s En ...