Win7下强名称验证失效?

首先编译一个带强名的程序集,然后用十六进制工具打开,修改任何一个无关紧要的字节,保存

好了,就会发现这个程序集在Win7下可以正常运行,在XP会报错

微软说:引自http://msdn.microsoft.com/zh-cn/library/cc713694(v=VS.90).aspx :
从 .NET Framework 3.5 Service Pack 1 (SP1) 开始,在将程序集载入完全信任 AppDomain 对象(例如 MyComputer 区域的默认 AppDomain)时,将不验证强名称签名。这称为强名称跳过功能


那在XP下,怎么装.NET Framework 3.5 Service Pack 1 (SP1) .NET Framework 4强名称验证也没有失效!

0

1个回答

参考.net 强名称被跳过

重要说明:
是否能强制执行强名称验证取决于注册表项,如下面的过程所述。如果运行应用程序时使用的帐户没有访问该注册表项的访问控制列表 (ACL) 权限,该设置将无效。必须确保配置此注册表项的 ACL 权限,以使所有程序集都能读取此项。
对所有应用程序禁用强名称跳过功能
在 32 位计算机上,在系统注册表中的 HKEY_LOCAL_MACHINESOFTWAREMicrosoft.NETFramework 项下创建一个子项。使用 DWORD 值为 0 的项名称 AllowStrongNameBypass。

  • 或 -

在 64 位计算机上,在系统注册表中的 HKEY_LOCAL_MACHINESOFTWAREMicrosoft.NETFramework 项下创建一个子项。使用 DWORD 值为 0 的项名称 AllowStrongNameBypass。在 HKEY_LOCAL_MACHINESOFTWAREWow6432NodeMicrosoft.NETFramework 项下创建相同的子项。
对单个应用程序禁用强名称跳过功能
打开或创建应用程序配置文件。
有关此文件的更多信息,请参见应用程序配置文件。

添加下面的项:

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

可通过移除该配置文件设置或将该属性设置为“true”为该应用程序恢复跳过功能。

说明:
只有在已为计算机启用跳过功能的情况下,才能为应用程序打开和关闭强名称验证。如果已为计算机关闭跳过功能,则将对所有应用程序验证强名称,并且不能对单个应用程序跳过验证。

0
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
关于“对程序集xxx进行强名称验证失败”的解决
最近弄了个高版本的Aspose.Excel,直接到bin目录下把以前的1.8版的替换掉了,接着.Net就提示“对程序集进行强名称验证失败”,解决办法在引用中重新引用,就是先删除,后引用。这样就OK了。
net程序集强名称签名实践自己整理
net程序集强名称签名实践自己整理
解决WinForm应用中引用“mshtml”出现“强名称签名对程序集 Microsoft.mshtml.dll 无效”
应客户要求,增加论坛功能,那就需要具有富文本编辑器的功能,引用了microsoft.mshtml组件,结果在发布ClickOnce客户端时,运行安装后,立即出现了错误: 应用程序验证未成功,无法继续! 查看详细信息,发现有一个错误是说“强名称签名对程序集 Microsoft.mshtml.dll 无效” 网上搜索,发现别的大侠也发现过此错误,解决办法就是添加引用时选择
未能加载文件或程序集“Enyim.Caching”或它的某一个依赖项。未能验证强名称签名。此程序集可能已被篡改,或者已被延迟签名,但没有用正确的私钥进行完全签名。 (异常来自 HRESULT:0x80
原因分析, 解决banfa
mvc4源码调试“未能加载文件或程序集“System.Web.Mvc”或它的某一个依赖项。未能验证强名称签名。解决办法
环境vs2015+win7x64+.net 4.5 system.web.mvc中版本改成4.0.0.1 个人测试mvc项目中根目录web.config改                                                     views/web.config中改
强名称移除工具
强名称移除工具
未能加载文件或程序集“xxx”或它的某一个依赖项。强名称验证失败
当我们从互联网上下载一个程序集供本地调用的时候,如何保证这个程序集是未经第三方恶意篡改过的呢?如果两个程序集的名称、大小、版本号都相同是不是就意味着这两个程序集文件就相同了呢?在.NET平台下区分程序集采用的方法是使用名称,但是名称有强弱之分。    强名称在弱名称的基础上添加了数字签名,并且强名称签名的程序集不能引用未被签名的程序集。    强名称的作用主要有三个:一是区分不同的程序集;二是确保代
未能加载文件或程序集“Enyim.Caching”或它的某一个依赖项。未能验证强名称签名...
from:http://www.mzwu.com/article.asp?id=3741 itHub下载Enyim项目,编译后引用程序运行出错:引用内容未能加载文件或程序集“Enyim.Caching, Version=1.0.0.0, Culture=neutral, PublicKeyToken=cec98615db04012e”或它的某一个依赖项。强名称验证失败。既然是强名称的原因,不给程序...
此程序集可能已被篡改,或者已被延迟签名,但没有用正确的私钥进行完全签名。 (异常来自 HRESULT:0x80131045)
此程序集可能已被篡改,或者已被延迟签名,但没有用正确的私钥进行完全签名。 (异常来自 HRESULT:0x80131045) 打开IIS 应用程序池 --高级设置–启用32位应用程序 :true ...
关于程序集生成失败-引用的第三方DLL没有强名称的解决办法
如果一个Assembly希望封装成为ActiveX/COM组件,那么它必须拥有强名(Strong Name),也就是说在编译的时候需要指定SNK(Strong Name Key)。但是当一个Assembly如果以拥有强名的方式编译的话,它又要求所有自身所引用的其他Assembly都必须拥有强名,否则不能够成功编译。这时可以使用按照以下方式来创建或重建一个名称程序集。 首先无论我们有需要一
引用程序集没有强名称的解决办法
为项目添加强名称方法: 1.右键单击项目,打开属性窗口; 2.在属性窗口里选择《签名》标签,选中为程序集签名的选项,在下拉列表里选择新建,如下图所示: 3.打开新建签名窗口,输入签名的名称密码等内容, 单击确定后,签名添加完成。   为没有源码的DLL文件添加强名称   如果项目中引用了其他没有源码的dll文件,并且此dll文件是没有强名称的程序集,则编译时
.net程序集强名称签名实践
.net程序集强名称签名实践
关于程序集生成失败 -- 引用的程序集没有强名称的解决办法
<br />关于程序集生成失败 -- 引用的程序集没有强名称的解决办法 <br /> 我在PetShop4程序中加入了一个业务外观层,然后在业务逻辑层(PetShop.BLL)引用这个程序集,点“生成”,出现以下的错误:“程序集生成失败 -- 引用的程序集没有强名称”,原因是PetShop.BLL是强命名程序集,强命名程序集不能用普通程序集造成的。<br />        那么什么叫强命名程序集呢?我们知道,以前在Windows下开发程序时常会遭遇著名的“DLL Hell”问题,即动态链接库的向后兼容问题
强名称工具 (Sn.exe)
 D:/Program Files/Microsoft Visual Studio .NET 2003/SDK/v1.1/Bin MSDN Library > .NET Framework > .NET Framework SDK > .NET Framework 工具 > SDK 命令提示 强名称工具有助于使用强名称对程序集进行签名。Sn.exe 提供用于密钥管理、签名生成和签名验证的选项。 s
Asp.net中强签名dll:引用程序集没有强名称解决办法
本文呢,意在和大家共同学习一下如何对自己的Dll文件实现强签名,在一定程度上防止别人反编译和破解,具体为项目添加强名称方法如下三步走: 1.右键单击项目,打开属性窗口; 2.在属性窗口里选择《签名》标签,选中为程序集签名的选项,在下拉列表里选择新建,如下图所示:     3.打开新建签名窗口,输入签名的名称密码等内容 为没有源码的DLL文件添加强名称 如果项目中引用
关于程序集生成失败 -- 引用的程序集没有强名称的解决办法
 我在PetShop4程序中加入了一个业务外观层,然后在业务逻辑层(PetShop.BLL)引用这个程序集,点“生成”,出现以下的错误:“程序集生成失败 -- 引用的程序集没有强名称”,原因是PetShop.BLL是强命名程序集,强命名程序集不能用普通程序集造成的。        那么什么叫强命名程序集呢?我们知道,以前在Windows下开发程序时常会遭遇著名的“DLL Hell”问题,即动态
aspose.pdf破解重签名
aspose.pdf破解重签名
如何在Visual Studio中查看项目的强名称(public key token)
1.    在 Visual Studio, 找到 Tools –>  External Tools. 2.   点击 “Add” 来添加一个tool, 如何填入如下内容     1.    Title: S&trong Name     2.    Command: Powershell.exe     3.    Arguments: -command "[System.Reflect
Assembly.LoadFrom加载程序集类型转换失败解决方法
为了让我的wcf模块框架支持自定义通道上下文,对代码又进行了一次小型的重构,测试时发现类型转换的错误,最后发现是loadfrom引起的。如果向 loadfrom 上下文中加载了一个程序集,则将激活 loadfromcontext 托管调试助手 (mda)。因为默认时加载程序集是在defaul上下文的,所以就算是同一个程序集里,因上下文不同,类型也不同了,所以转换失败。最后用assembly.loa...
.NET程序集强名称签名实践
强名称是由程序集的标识加上公钥和数字签名组成的。其中,程序集的标识包括简单文本名称、版本号和区域性信息(如果提供的话)。强名称是使用相应的私钥,通过程序集文件(包含程序集清单的文件,并因而也包含构成该程序集的所有文件的名称和散列)生成的。Microsoft® Visual Studio® .NET 和在 .NET Framework SDK 中提供的其他开发工具能够将强名称分配给一个程序集。强名称
C#关于程序集生成失败【引用DLL及第三方DLL没有强名称的解决办法】
C#关于程序集生成失败及引用DLL及第三方DLL没有强名称,一个Assembly希望封装成为ActiveX/COM组件,那么它必须拥有强名(Strong Name),也就是说在编译的时候需要指定SNK(Strong Name Key);但是当一个Assembly如果以拥有强名的方式编译的话,它又要求所有自身所引用的其他Assembly都必须拥有强名,否则不能够成功编译。这时可以使用按照以下方式
此文章已被作者转移
此文章已被作者转移
强名称工具 (Sn.exe) 使用详解
强名称工具 (Sn.exe)强名称工具有助于使用强名称对程序集进行签名。Sn.exe 提供用于密钥管理、签名生成和签名验证的选项。sn [-quiet][option [parameter(s)]] 选项 说明 -
[.NET逆向] 破解 .net实战教程 (反混淆 IL语言 去除强命名)
发表于 2014-8-3 12:03 | 显示全部楼层 分享到:QQ好友QQ空间微信新浪微博豆瓣网邮件分享 本帖最后由 z860368871 于 2014-9-5 09:11 编辑 本小白来吾爱第一个星期 学到很多的东西 这是破解.net 的些许心得 若有不妥之处 请大神不要见怪 跟帖指出 小白在此不胜感激在此要感激 @艾莉希雅 和 @jer9
创建强名称密钥文件
单击“开始”,依次指向“程序”、“Microsoft Visual Studio 2005”、“Visual Studio 工具”,然后单击“Visual Studio 2005 命令提示”。     2 .  在命令提示符下,键入 sn -k Tutorial.snk,然后按 Enter。      这里关键的是 sn -k *.snk
给第三方dll加上强命名的方法[C#]
 在VS.NET 的命名行窗口下,输入如下的代码。   1 ,生成一个KeyFile   sn -k keyPair.snk   2, 得到程序集的MSIL   ildasm SomeAssembly.dll /out:SomeAssembly.il   3 ,为了避免冲突,把原来的DLL 文件改名   ren SomeAssembly.dll Some...
强名称程序集(strong name assembly)——为程序集赋予强名称
引言:                 在以前的项目开发中,在程序集中见到过一个后缀为*.snk的文件,当时看这个文件的图标,感觉可能是企业内部保护版权啥的一种方式。  一,强程序集解决了哪些问题?1,唯一标识一个程序集2,放置程序集被仿冒和被篡改。3,可以部署到全局程序集缓存(GAC:GlobalAssembly Cache)中;在将强名称程序集不熟在GAC当中以后,强名称程序集也可以称为共享程
sn 强名称工具 (Sn.exe) 创建密钥对
.net 下用来创建强名称的工具 sn 强名称工具 (Sn.exe) 创建密钥对
所引用的程序集没有强命名
1.打开SDK 命令提示窗口;  也就是VS2012 开发人员命令提示,一般所在目录C:\ProgramData\Microsoft \Windows\Start Menu\Programs\Microsoft Visual Studio 2012\Visual Studio Tools   2.创建一个新的随机密钥对:直接输入下面的 名字和你的Dll名字一样,他这的名字是Interop
VS.NET重建强名称程序集(为第三方无强名称的程序集重新生成强名称程序集)
如果一个Assembly希望封装成为ActiveX/COM组件,那么它必须拥有强名(Strong Name),也就是说在编译的时候需要指定SNK(Strong Name Key)。但是当一个Assembly如果以拥有强名的方式编译的话,它又要求所有自身所引用的其他Assembly
强名称问题
 在PetShop4程序中加入了一个业务外观层,然后在业务逻辑层(PetShop.BLL)引用这个程序集,点“生成”,出现以下的错误:“程序集生成失败 -- 引用的程序集没有强名称”,原因是PetShop.BLL是强命名程序集,强命名程序集不能用普通程序集造成的。        那么什么叫强命名程序集呢?我们知道,以前在Windows下开发程序时常会遭遇著名的“DLL Hell”问题,即动态链
spire.pdf破解版
spire.pdf 破解版 去除水印,2018.12.4 VS2010 windows窗体应用程序,亲测可用。包含pdf license presentation的dll文件。前面上传的不知怎么404了。重新上传。
Spire.XLS破解版
在Spire.XLS的官网:https://www.e-iceblue.com/。我们看到,要想没有打印水印,是需要付费购买专业版的,并且费用还不低。 这个时候,对于喜欢折腾的朋友,就想深挖一挖,看看能不能用“科学”的办法解决这个问题。 经过一个晚上加一上午的折腾。终于使用“科学”的办法将水印去掉了。下面分享一下去水印的过程: 我们知道,水印的显示肯定和Spire.XLS有关,而我们的程序只是引用了Spire.XLS.dll类库,那么去水印,就得从Spire.XLS.dll类库下手了。
给第三方dll加上强命名的方法
在VS.NET 的命名行窗口下,输入如下的代码。# 1 ,生成一个KeyFile sn -k keyPair.snk# 2, 得到程序集的MSIL ildasm SomeAssembly.dll /out:SomeAssembly.il# 3 ,为了避免冲突,把原来的DLL 文件改名 ren SomeAssembly.dll SomeAssembly.dll.orig# 4 , 使用导出的MSIL
强名称验证失败
对程序集“TeeChart”进行强名称验证失败rn这个问题怎么解决?
DDTek.Oracle.dll全版本(部分版本已破解)
DDTek.oracle.dll下载破解版(.NET Oracle第三方支链数据库驱动) 最近写一个程序,数据库是用oracle的,之前为了方便时用webservice来进行数据库交互的,但是发现webserivce效率实在太低了所以就网上去找有没有简单点的工具,于是找到了这个ddtek.oracle.dll 可以不安装Oracle客户端,直接使用其来登录Oracle服务 产品说明非常吸引人,唯一一个100%托管代码数据提供者,不需要Oracle OCI客户端库 试用版限制: 1.试用期15天 2.限制查询行数为10000 我破解了4.1版本的dll文件,不需要授权文件,并且去了强签名,可以用于所有s程序。
.Net强命名移除工具
.net平台的程序集强命名移除工具,已测试可以成功去除强签名,文件中包含示例截图
Aspose.Cells 17.7 for .NET 破解版(.net2.0/3.5/4/0)
Aspose.Cells 17.7 for .NET 学习版(包括.net 2.0,3.5,4.0版本),直接修改IL代码从而不出现水印,并且重新进行了强名称签名,可以通过强名称验证
C# 软件去强命名
强命名相当是一种签名,可以保证软件的完整性; 一、识别强命名 使用dnspy打开软件,修改不了类的方法,且浏览发现有模块的文件头包含stringname的说明,就是使用了强命名验证; 二、解决方法 加密相关的一般都是调用系统的API,dll命令一般为cry | clr 开头的dll; 我们使用OD运行C#的程序,看看dll的载入记录,着重留意cry | clr 开头的dll ;...
删除.Net 强名称工具 Strong Name Remove 2.2 汉化版
删除.Net 强名称工具 Strong Name Remove 2.2 汉化版 改进: 支持在win7 64位下使用
文章热词 机器学习教程 Objective-C培训 交互设计视频教程 颜色模型 设计制作学习
相关热词 mysql关联查询两次本表 native底部 react extjs glyph 图标 win7网页制作课程 win7网页制作教程视频