Rob*_*cks 3 .net c# security obfuscation ngen
Ngen可以用作完美的代码混淆器,保护您的.NET CIL不会到达客户端吗?
我可以在我的开发PC上运行Ngen并将exe发送给具有兼容的.NET框架版本的每个客户端吗?(假设两者都是x86或x64)Ngen'd exe跨机器有什么区别?
我知道最新的Ngen生成一个包含IL + Native代码的exe,可以使用Reflector之类的东西将其提取并"转换"回源代码.但是,.NET Framework 1.1 的ngen 删除了生成的exe中的IL,如果使用.NET framework 1.1,它可以作为代码安全性的可能选择.
不,CLR需要IL组装才能找到相应的原生图像.因此,无论如何您都需要分发IL二进制文件.有关CLR如何查找本机映像的详细信息,请参阅此页面:http://blogs.msdn.com/b/abhinaba/archive/2013/12/11/net-loading-native-ngen-images-and-its-interaction -with最gac.aspx
此外,NGEN图像不是为分发而设计的.原生图像生成与其运行的机器紧密耦合.