最近做的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. 关于js中循环遍历中顺序执行多个嵌套ajax的问题

    就是业务上需要完成一个功能,这个功能需要依次调用四个接口,后面接口的参数都依赖于前一个接口的返回值. 类似这样: var objArr = "从其他逻辑获得"; for(var n ...

  2. Thread部分总结以及小例子

    Thread总结:一直以来用thread比较多,一般会在同步以及ui中用到.以下对于经常用作为简单介绍.一 实现方法: 一种直接new thread,另外一种是实现Runnable接口,在创建thre ...

  3. 用react重构个人网站 3-22

    问题一:import React from 'react'这个写法是怎么回事? 答案:require是common.js的写法,import是ES6的写法,主要功能都是引入模块,写法上: var mo ...

  4. codeforces 985C Liebig's Barrels

    题意: 有n * k块木板,每个木桶由k木板组成,每个木桶的容量定义为它最短的那块木板的长度. 任意两个木桶的容量v1,v2,满足|v1-v2| <= d. 问n个木桶容量的最大的和为多少,或者 ...

  5. Ubuntu 16.04下安装64位谷歌Chrome浏览器

    1.进入 Ubuntu 16.04 桌面,按下 Ctrl + Alt + t 键盘组合键,启动终端. 也可以按下 Win 键(或叫 Super 键),在 Dash 的搜索框中输入 terminal 或 ...

  6. Go-技篇第二 命名规范

    优秀的命名 优秀的命名应当是一贯的.短小的.精确的.所谓一贯,就是说同一个意义在不同的环境下的命名应当一致,譬如依赖关系,不要在一个方法中命名为depend,另一个方法中命名为rely.所谓短小,不必 ...

  7. nsq topic和channel的区别

    topic:一个可供订阅的话题.channel:属于topic的下一级,一个topic可以有多个channel.二者关系可以再参考下面两文章:http://www.cnblogs.com/forres ...

  8. 新版知乎登录之post请求

    前言 在上一篇文章中给大家讲解了requests发送post请求的几种方式,并分析了一些使用陷阱. 疑惑 在文章发表之后,有朋友给我留言说,知乎登录就没有使用提交Form表单(application/ ...

  9. bzoj 4318 OSU 概率期望dp

    可以发现:f[i]转移到f[i+1]只和最后一串1的长度和平方有关, 因为如果新加的位置是1,贡献就是(x+1)^3-x^3=3x^2+3x+1,否则为0: 所以对于每一个位置,处理出期望的f,x和x ...

  10. VMware workstation的基础使用

    1. VMware workstation虚拟化平台简介2. VMware workstation提供网络资源3. VMware workstation提供存储资源4. VMware workstat ...