今天我正在玩.Net反射器,并意识到Miicrosoft的整个Expression套件都是用.Net编写的.结果我几乎能够看到表达式的底层代码.这使得比二进制文件更容易破坏复制保护.我认为这是一个大问题.是否通常建议在.Net中制作商业软件,在那里很容易看到源代码到变量名称?令我感到惊讶的是,微软至少没有对它进行点击.谢谢
任何值得购买的应用程序 - 特别是像Expression这样的大型应用程序 - 没有任何一件如果被拆解和复制会降低其竞争优势.
在另一个极端,反汇编和复制整个代码库是没有意义的 - 因为那将是如此明显.
简而言之,我们不是在谈论磁通电容器.
小智 5
我会考虑能够一直反向变量名称(也许是评论)的功能..NET Reflector和Java Decompiler非常好用.
即使它是用C或C++编写的,对RCE来说也没有任何意义.人们削减他们的牙齿阅读组装和修补OllyDBG,IDA Pro等.Microsoft还提供了自己的工具来反转本机代码.
考虑到已经存在多少商业Java和.NET软件(以及它是如何容易被反编译的),我怀疑使用.NET,而不是使用.NET,而不是使用C++,C或汇编在比较它是多么容易获得时会有很大的不同返回原始源表单.
话虽如此,我遇到的大多数商业.NET软件都在其(似乎是)C++库中编写了程序的核心,然后通过.NET应用程序与其进行交互.