This question already has answers here:
How can I protect my .NET assemblies from decompilation?

(13个回答)


4年前关闭。




我正在编写一个.NET应用程序(Windows类库)以实现对我们产品的许可。

问题在于,DLL可以通过MSIL反汇编程序或任何其他第三方工具轻松地反汇编,并且一个人可以轻易地破坏代码。

我什至尝试对程序集进行签名,但是仍然可以将其拆卸。

那么如何防止这种情况呢?

是否有任何可用的工具?

最佳答案

查看this问题的答案。
您无法获得全面的保护,但是您可以通过使人们难以成功实现的方式来阻止拆卸。有更多方法可以执行此操作,其中一些在我上面的链接中对该问题的答案中进行了详细说明:

  • 混淆您的代码。
  • 使用公用/专用 key 或非对称加密来生成产品许可证 key 。
  • 使用打包器将.NET可执行文件打包到加密的w32包装器应用程序中。

  • 我要添加的是针对您的核心功能和保护代码的增量更新,因此您的用户将不断受益于新功能,同时使破解者在破解软件方面落后于您。如果您发布的速度快于他们破坏和分发软件的速度,那么您将受益匪浅。合法用户将始终获得技术支持,并有话要说关于新功能。它们是您最好的市场,因为破解您软件的人根本不会为此付出代价。

    关于c# - 如何避免.NET DLL文件被反汇编?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1825666/

    10-13 08:57
    查看更多