博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
.Net程序集强签名详解
阅读量:5117 次
发布时间:2019-06-13

本文共 703 字,大约阅读时间需要 2 分钟。

强签名:

1. 可以将强签名的dll注册到GAC,不同的应用程序可以共享同一dll。

2. 强签名的库,或者应用程序只能引用强签名的dll,不能引用未强签名的dll,但是未强签名的dll可以引用强签名的dll。

3. 强签名无法保护源代码,强签名的dll是可以被反编译的。

4. 强签名的dll可以防止第三方恶意篡改。

 

强签名的方法:

1. 有源代码:

1.1 使用vs tool command:snk –k mykey.snk 生成签名公钥。

1.2 将公钥加入项目中,并设置项目属性,设置签名公钥

1.3 重新生成项目。

 

2. 没有源代码。

2.1 创建强签名键:

sn.exe -k key.snk

2.2 反汇编dll为il

ILDASM.exe SomeLibrary.dll /OUTPUT=SomeLibrary.il

该指令会反汇编该dll并生成SomeLibrary.il,如果该dll含有嵌入的resource,

则会有SomeLibrary.res文件产生,并有相应的嵌入资源文件产生。

2.3 重新汇编为dll

ILASM.exe SomeLibrary.il /DLL /OUTPUT=SomeLibrary.dll /KEY=key.snk

如果有嵌入的资源文件,则需要加上 /RESOURCE=SomeLibrary.res

 

强签名的dll与未签名的在反编译后的区别:

未签名的:

 

强签名的:

 

更多详细信息参考 StringNaming

转载于:https://www.cnblogs.com/philzhou/archive/2012/12/06/2804680.html

你可能感兴趣的文章
PyQt5--EventSender
查看>>
Sql Server 中由数字转换为指定长度的字符串
查看>>
Java 多态 虚方法
查看>>
万能的SQLHelper帮助类
查看>>
tmux的简单快捷键
查看>>
[Swift]LeetCode922.按奇偶排序数组 II | Sort Array By Parity II
查看>>
Html5 离线页面缓存
查看>>
《绿色·精简·性感·迷你版》易语言,小到不可想象
查看>>
Android打包key密码丢失找回
查看>>
VC6.0调试技巧(一)(转)
查看>>
类库与框架,强类型与弱类型的闲聊
查看>>
webView添加头视图
查看>>
php match_model的简单使用
查看>>
在NT中直接访问物理内存
查看>>
Intel HEX 文件格式
查看>>
SIP服务器性能测试工具SIPp使用指导(转)
查看>>
回调没用,加上iframe提交表单
查看>>
(安卓)一般安卓开始界面 Loding 跳转 实例 ---亲测!
查看>>
Mysql 索引优化 - 1
查看>>
LeetCode(3) || Median of Two Sorted Arrays
查看>>