zoukankan      html  css  js  c++  java
  • 程序集强签名

    1、特点

    1.1、强签名的程序集可以注册到GAC(全局应用程序集缓存),不同的应用程序可以共享同一个dll。

    1.2、强签名的库(应用程序)只能引用强签名的库。非强签名的库(应用程序)没有限制,既可以引用强签名的库,也可以引用非强签名的库。(实际测试,强签名的应用只引用非强签名的程序集但不使用是可以的,只要使用了引入库的东西,那就会报:引用的程序集没有强签名)

    1.3、强签名无法保护源代码,但能防止dll被第三方篡改。

    1.4、能防止dll冲突。

    2、方法

    --如果有源代码

    项目 -> 右键 -> 属性 -> 签名:

    Signing panel

    勾选 Sign the assembly(签名程序集)

    Signing panel

    填写 key file name,如果勾选了密码保护key file,那么就输入密码。点击OK就创建好了签名文件。

    将属性保存,然后再次编译,程序集就是强签名程序集了。

    --如果没有源代码

    1、首先创建一个签名key file,可以通过有源代码的方式,创建key file备用;也可以通过VS 控制台执行sn.exe -k D:sn.snk 生成key。

    2、将无源代码的dll,通过 ILDASM.exe MagicOrm.dll /OUTPUT=D:MagicOrm.il进行反汇编

    注意:如果dll有资源文件,同时会生成MagicOrm.res文件

    3、带上签名文件重新汇编为dll,如果有资源文件生成,也需要带上,命令:ILASM.exe MagicOrm.il /dll /output=D:MagicOrm.dll /Key=sn.snk /Resource=MagicOrm.res

    Over

  • 相关阅读:
    Linux filesystem
    centos 下 gradle 编译打包 apk
    python SSL 错误
    nginx 缓存配置
    nginx 反向代理配置
    redhat 网卡绑定
    磁盘阵列
    Centos 安装Django2.1
    python pyquery 基本用法
    python 爬虫之-- 正则表达式
  • 原文地址:https://www.cnblogs.com/humin/p/4435055.html
Copyright © 2011-2022 走看看