Ios 在进行AOT编译的Xamarin项目中使用代码混淆有什么好处吗

Ios 在进行AOT编译的Xamarin项目中使用代码混淆有什么好处吗,ios,xamarin,xamarin.ios,obfuscation,Ios,Xamarin,Xamarin.ios,Obfuscation,我们有一个Xamarin解决方案,它同时包含Xamarin.Android和Xamarin.iOS项目。我们正在使用提前AOT编译应用程序,因此无法将代码反向工程为原始c代码 在这种情况下,是否有一些代码可以从aot编译的apk进行反向工程,如果代码首先通过dotfuscator之类的代码模糊器运行,那么这些代码将被模糊化?即使Xamarin.iOS生成的是本机iOS二进制文件,如果您不想让逆向工程师弄清楚控制流、明文字符串和其他关于您的应用程序的可能机密信息,那么代码混淆仍然很有帮助。当然,如

我们有一个Xamarin解决方案,它同时包含Xamarin.Android和Xamarin.iOS项目。我们正在使用提前AOT编译应用程序,因此无法将代码反向工程为原始c代码


在这种情况下,是否有一些代码可以从aot编译的apk进行反向工程,如果代码首先通过dotfuscator之类的代码模糊器运行,那么这些代码将被模糊化?

即使Xamarin.iOS生成的是本机iOS二进制文件,如果您不想让逆向工程师弄清楚控制流、明文字符串和其他关于您的应用程序的可能机密信息,那么代码混淆仍然很有帮助。当然,如果有足够的时间,一个有献身精神的人仍然能够做这些事情,但想法是让事情变得足够困难,以至于花费很长时间,或者让他们的时间根本不值得

我更熟悉使用Swift或Objective-C构建的iOS应用程序是如何进行反汇编和分析的,但我相信与Xamarin.iOS应用程序相比并没有太大区别,因为它是编译为ARM代码的,许多工具(如IDA Pro、Hopper等)都能理解ARM代码

所以,来回答你的问题。在本机编译之前进行模糊处理,甚至对明文字符串进行加密,这显然是有意义的


请阅读以下文章,深入了解iOS应用程序是如何被反向工程和篡改的:。它为您提供了一个非常好的主意,让您知道,在提供了正确的工具和知识的情况下,反转一个未受保护的应用程序是多么容易。

即使Xamarin.iOS构建会产生一个本机的iOS二进制文件,如果您不想让反转工程师弄清楚控制流,代码混淆仍然是有帮助的,纯文本字符串和有关应用程序的其他可能的机密信息。当然,如果有足够的时间,一个有献身精神的人仍然能够做这些事情,但想法是让事情变得足够困难,以至于花费很长时间,或者让他们的时间根本不值得

我更熟悉使用Swift或Objective-C构建的iOS应用程序是如何进行反汇编和分析的,但我相信与Xamarin.iOS应用程序相比并没有太大区别,因为它是编译为ARM代码的,许多工具(如IDA Pro、Hopper等)都能理解ARM代码

所以,来回答你的问题。在本机编译之前进行模糊处理,甚至对明文字符串进行加密,这显然是有意义的

请阅读以下文章,深入了解iOS应用程序是如何被反向工程和篡改的:。它为您提供了一个非常好的主意,让您知道,只要有正确的工具和知识,就可以多么容易地反转未受保护的应用程序