假设我有一个名为strong的.NET程序集。只有我可以访问私钥。然后我将程序集分发给某个客户端系统。
客户修改程序集有多难?即:他们需要做些什么才能修改我的装配?
答案 0 :(得分:15)
强命名不会阻止修改程序集,但它确实会阻止引用强命名程序集的其他应用程序无意中使用修改后的版本。
答案 1 :(得分:0)
与修改非强类型程序集没有什么不同。唯一真正的区别是他们必须运行强名称实用程序(sn.exe)才能使用修改后的程序集。
答案 2 :(得分:0)
正如其他人所说,它很容易。
您可以使用的一种技术是使用程序集的公钥(或令牌)来加密程序集中的重要信息(例如算法参数,连接字符串等)。这样,如果公钥已被更改或删除,则解密将失败,并且您的程序集将不再正确运行。像Crypto Obfuscator这样的混淆器使用这种技术作为保护的一部分。