我在Windows Presentation Foundation中创建了一个项目,该项目使用了我创建的一些汇编,并在其他项目中使用。但是现在我不希望其他人使用它并进行逆向工程("汇编到代码")。
我开始了解Assembly签名。我也有使用ant尝试签名,但我可以很容易地在。net反射器工具中打开汇编代码。
请指引我正确的方向
这完全取决于你想做多少工作,以及你想做多少努力。
如果你只是想阻止人们快速反编译你的程序集,你可以压缩和/或加密DLL本身,然后为程序集编写一个加载程序,将其带入内存,解码和/或解压缩并加载到内存中。如果您愿意,压缩/加密的数据可以作为资源存储在另一个处理解包的程序集中,尽管这样可以更容易找到执行解包的代码。
这只会防止对代码的随意检查。它不会大大减缓一个决心要进行逆向工程的尝试。最终,你根本无法阻止一个熟练而坚定的逆向工程尝试。