- 强命名后程序集可以被多个引用者共享。这个大家应该很清楚。
- 可以防止程序集被篡改。(这点还不是很明朗要继续加油,有明白的告诉我一下)
- 3是。。。我不知道了,有谁知道了帮我加下。:)
强命名过程:
- 获取私钥 sn -k privateKey.snk,一定要小心保管,丢了一切安全性都不存在了,其它人可以通过它发布由你签名的程序集。
- 获取公钥 sn -p privateKey.snk publicKey.snk,在延迟签名时派上用场。
- 生成强名程序集
1) csc /keyfile:privateKey.snk /t:dll ClassLibrary1.cs
2) 在AssemblyInfo.cs中添加 [assembly: AssemblyKeyFileAttribute("privateKey.snk")]
延迟签名过程:
- 进行延迟签名,为了保证私钥的安全,在开发时只使用公钥进行延迟签名
1) csc /keyfile:publicKey.snk /delaysign+ /t:dll ClassLibrary1.cs
2) 在AssemblyInfo.cs中添加 [assembly: AssemblyKeyFileAttribute("publicKey.snk")]
- 要发布时对该程序集重新进行强命名 sn -R ClassLibrary.dll privateKey.snk。
以上的命令行可以针对自己的需要修改,另外为保证私钥的安全,微软提供了一个保管私钥的容器,此时命令参数有变化,相关信息自行查找。
1088




被折叠的 条评论
为什么被折叠?



