【发布时间】:2016-08-02 09:28:57
【问题描述】:
如何从我没有源代码的第 3 方程序集中删除强名称,可能使用 ilasm/ildasm(因为可以使用 add a strong name using ilasm/ildasm)?
一般来说,这似乎是可能的,因为this tool 似乎能够做到这一点。
【问题讨论】:
-
回答你原来的问题,是的,这显然很容易。 根据定义,部署的代码是不安全且受到损害的。签名只是休闲破解者的一层保护(必须有其他保护)。
-
XY 问题,永远不需要删除强名称。
-
@HansPassant 我要求它组合一个演示,说明在 3rd 方应用程序中替换引用的程序集是多么容易(或困难)。只要它具有强名称并被其强名称引用,就无法做到这一点。
-
嗯,当然。如果这很容易,那么拥有强名称就没有任何意义。你必须知道私钥,这证明你是文件的“所有者”并且它没有被篡改。你想篡改它。
-
这很容易。只需单击一下工具。它删除文件夹中所有程序集的强名称,并将程序集引用重定向到没有强名称的程序集引用。因此,强名称不是确保您加载的代码未被更改的有效方法。
标签: .net code-signing strongname