Blu*_*Sky 10 .net encryption dotfuscator xamarin.ios ios
我使用Dotfuscator来保护我的应用程序免受逆向工程我加密了Windows应用程序中的dll文件,但我怎样才能在OSX/MonoTouch中执行此操作?
从ipa中提取dll,然后在windows中混淆dll,并将加密的dll重新打包到IPA中,然后将其发布到appstore?
有没有简单的解决方案?
pou*_*pou 16
最重要的是你需要记住iOS不允许JIT(及时)编译.这意味着一切都需要通过AOT(提前)编译器.
这导致程序集中的所有IL代码都转换为本机ARM(v6,v7和/或thumb)指令,并且不再需要 IL .
这意味着,当您构建时Release|iPhone,IL代码将从程序集中删除.由于它已被剥离,因此在您发布的应用程序中不会出现(进行反编译).
笔记
程序集仍然在应用程序内部,因为仍然需要元数据(例如System.Reflection需要它).因此,符号名称和资源文件不会像混淆器那样被破坏/加密;
您可以拆卸ARM汇编(即使你的AOT编译之前模糊的组件,这将是真实的),但它多少很难理解(并取回C#)比IL是.
从IPA中提取程序集并处理它们将至少破坏应用程序的签名(您可以重新签名).它也可能会破坏许多其他东西(因为代码将引用可能已更改的名称/结构).我不认为这会起作用(但这取决于你在混淆器中使用的选项).
| 归档时间: |
|
| 查看次数: |
1651 次 |
| 最近记录: |