C# 保护.NET代码不受反向工程的影响?

C# 保护.NET代码不受反向工程的影响?,c#,.net,obfuscation,reverse-engineering,C#,.net,Obfuscation,Reverse Engineering,模糊处理是一种方法,但它不能防止破坏应用程序的盗版保护安全。如何确保应用程序未被篡改,以及如何确保注册机制不能被反向工程 此外,还可以将C#应用程序转换为本机代码,而且成本太高 C提供了很多特性,是我的代码的理想语言,所以用C++编写整个代码库是不可能的。 安全证书可以很容易地从.NET中的签名程序集中删除。真的值得吗?只要有足够的决心,就可以打破每一种保护机制。考虑你的市场,产品的价格,客户的数量等等。 如果您想要更可靠的东西,那么就使用硬件密钥,但这相当麻烦(对于用户)而且更昂贵。软件解决

模糊处理是一种方法,但它不能防止破坏应用程序的盗版保护安全。如何确保应用程序未被篡改,以及如何确保注册机制不能被反向工程

此外,还可以将C#应用程序转换为本机代码,而且成本太高

C提供了很多特性,是我的代码的理想语言,所以用C++编写整个代码库是不可能的。


安全证书可以很容易地从.NET中的签名程序集中删除。

真的值得吗?只要有足够的决心,就可以打破每一种保护机制。考虑你的市场,产品的价格,客户的数量等等。 如果您想要更可靠的东西,那么就使用硬件密钥,但这相当麻烦(对于用户)而且更昂贵。软件解决方案可能会浪费时间和资源,它们唯一能给你的是错误的“安全感”

几乎没有其他想法(没有完美的,因为没有完美的想法)

  • 改变语言,使用作者使用的好技巧
  • 许可证服务器

不要在这上面浪费太多时间,因为破解者对典型技术有很多经验,而且比你领先几步。除非您想使用大量资源,否则可能需要更改编程语言(使用Skype方式)。

这真的值得吗?只要有足够的决心,就可以打破每一种保护机制。考虑你的市场,产品的价格,客户的数量等等。 如果您想要更可靠的东西,那么就使用硬件密钥,但这相当麻烦(对于用户)而且更昂贵。软件解决方案可能会浪费时间和资源,它们唯一能给你的是错误的“安全感”

几乎没有其他想法(没有完美的,因为没有完美的想法)

  • 改变语言,使用作者使用的好技巧
  • 许可证服务器

不要在这上面浪费太多时间,因为破解者对典型技术有很多经验,而且比你领先几步。除非您想使用大量资源,否则可能需要更改编程语言(使用Skype方式)。

如果它是用.NET编写并编译成的,则可以反映出来。如果安全性是一个问题,并且需要避免混淆,那么我建议使用非托管语言编写应用程序,这从本质上来说,更难进行反向工程。

如果是在.NET中编写并编译为,则可以反映出来。如果安全性是一个问题,并且需要避免混淆,那么我建议您使用非托管语言编写应用程序,这在本质上更难进行反向工程。

您不能

您可以采取一些步骤使其更加困难,但最终本地计算机上的任何可执行文件都是可破解的。最终,该代码必须转换为本机代码,并且每个可运行的应用程序都有漏洞

你想做的只是让它变得很难破解,让它不值得人们的麻烦

我为您提供了一些帮助保护您的应用程序的建议:

  • 混淆您的代码。有一个免费版本,并随Visual Studio提供
  • 使用或非对称加密生成产品许可证。这确保只有您才能生成许可证代码。即使您的应用程序被破解,您也可以确定他们不会为您的应用程序释放密钥生成器,因为不可能反转密钥生成算法
  • 使用第三方包装器将.NET可执行文件打包到加密的Win32包装应用程序中。是比较好的一种。这会阻止人们在中反映您的应用程序,并使您很难打开包进行反向操作
  • 编写您自己的自定义包装器。如果第三方封隔器太贵,请考虑自己编写。有时,定制的打包程序可能非常有效,因为没有关于如何解包的好方法。本教程提供了大量关于编写自己的Win32 packer的有用信息
但最终,如果人们希望你的应用程序被破解,他们会的。看看所有的商业软件,它们有大量的资源来保护它们的应用程序,但它们在应用程序发布之前就已经被破解了

无论你做什么,一个熟练的逆向工程师都可以像黄油一样启动并切割你的应用程序。打包的应用程序可以解包,而混淆只会阻止它在公园里散步。您在复杂许可证代码方面的所有辛苦工作都可以通过单字节修补程序撤消

你只需要接受一个事实,人们很有可能会盗版你的软件。有些人无论如何都不会为你的申请付费,而这些人是你不需要担心的

然而,有许多企业永远不会冒诉讼的风险,并乐于购买软件许可证,还有许多计算机用户,他们要么不想冒诉讼的风险,要么发现它是错误的,要么技术水平不够,无法盗版。这些是您真正的客户,您应该将精力集中在为他们提供良好的用户体验上,而忽略破解您软件的人

我以前的申请被盗版过,我认为这是对我个人的侮辱。在这里,我是一个小时间开发人员,全身心地投入到一个应用程序中,而这些人却厚颜无耻地从我这里剽窃?!他们直接从我口袋里掏钱

我立即加入了一堆严苛的DRM代码,并试图破坏任何使用DRM的人