3

我已经用强名称签署了我的程序集。

我已经从 VS2005 解决方案资源管理器 -> 组装右键单击 -> 签名完成了。

但仍然RedGate's .net reflector能够浏览代码。

那么汇编签名有什么用呢?

4

2 回答 2

15

程序集签名不是混淆。程序集的强名称保证程序集的来源(即用您的私钥签名的程序集只能由您编写),并保证程序集没有被篡改。

重申一下,如果您想限制 Reflector,请混淆您的程序集。

于 2009-12-06T13:32:28.180 回答
9

签名并不是为了保护您的代码形式反汇编。如果需要,请查看obfuscators

签名是强命名的一部分,它允许来自不同供应商的具有相同名称的程序集和不同版本的程序集共存。

唯一的“保护”签名提供的是,如果不访问原始密钥对,就不可能创建“假”替换。签名将数字签名添加到您的程序集(可见为公钥令牌)。

于 2009-12-06T13:32:50.847 回答