MonoTouch:如何保护我的应用程序

2023-11-27

我使用 Dotfuscator 来保护我的应用程序免受逆向工程的影响 我在 Windows 应用程序中加密了 dll 文件,但如何在 OSX/MonoTouch 中做到这一点?

从ipa中提取dll,然后在windows中混淆dll,将加密的dll重新打包成IPA,然后发布到appstore?

有什么简单的解决办法吗?


首先你需要记住 iOS 不允许JIT(及时)编译。这意味着一切都需要经过AOT(提前)编译器。

这会导致程序集中的所有 IL 代码都被转换为本机 ARM(v6、v7 和/或thumb)指令andIL 是不需要不再了。

这意味着,当您构建时Release|iPhone,IL 代码将从您的程序集中删除。由于它已被删除,因此它不会出现在您发布的应用程序中(将被反编译)。

NOTES

  • 程序集仍将位于应用程序内部because元数据仍然是必需的(例如System.Reflection需要它)。因此符号名称和资源文件不会像混淆器通常那样被破坏/加密;

  • 您可以反汇编 ARM 程序集(即使您在 AOT 编译之前混淆了程序集也是如此),但它是much比 IL 更难理解(并回到 C#)。

  • 从 IPA 中提取程序集并处理它们将会中断at least应用程序的签名(您可以重新签名)。它还将likely破坏很多其他东西(因为代码将引用可能已更改的名称/结构)。我认为这不会起作用(但这取决于您从混淆器中使用的选项)。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

MonoTouch:如何保护我的应用程序 的相关文章

  • 从 SortedList 或 SortedDictionary 获取第 i 个值

    我有一个排序的对象集合 它可以是 SortedList 或 SortedDictionary 我将主要使用它来阅读 因此增加性能并不那么重要 我怎样才能得到第i个值 所以例如当我的集合中有数字 1 2 3 4 5 并且我想要中位数 本例中为
  • .NET Core 3 是否支持 TLS 1.3

    我正在使用 NET Core 3 0 制作仅支持 TLS 1 3 的代理 我看到 SslProtocols 中定义了 Tls13 12288 但在我的测试过程中 它只抛出异常 客户端和服务器无法通信 因为它们不具备通用算法 所以我的问题是
  • 将 React Native 应用程序嵌入到现有的 ios/android 应用程序中

    我需要知道是否可以在现有的 ios android 应用程序中 嵌入 一个 React Native 应用程序 而不共享 React Native 应用程序代码 我们目前有一个 React Native 应用程序 它使用一些插件依赖项 并被
  • iOS 9.3.2 破坏 MPMusicPlayerController

    我正在尝试将 Apple Music 集成到我的应用程序中 直到今天早上我才设法使其完美运行 更新到 iOS 9 3 2 后 一切都不一样了 权限系统的工作原理相同 SK云服务控制器 https developer apple com li
  • 如何在iOS中获得旋转UIView的完美X,Y位置

    我正在使用 CABasicanimation 来旋转 UIView 我正在使用这段代码 CABasicAnimation rotationAnimation CABasicAnimation animationWithKeyPath tra
  • 将浮点型转换为双精度型

    我正在尝试转换Single to Double同时保持原来的价值 我找到了以下方法 Single f 5 2F Double d1 f 5 19999980926514 Double d2 Double Parse f ToString 5
  • .NET 的 C 代码解析器

    有谁知道 NET 的 C 解析器库吗 我打算将 C 代码解析为某种形式的对象图 这样我就可以将其转换为不同的语言 ANTLR 可以做你想做的事 它有一个 C 预处理器和 ANSI C 语法 https github com antlr gr
  • 如何读取 IBAction 中的 UITextField 值。我正在以编程方式创建 UITextField

    我怎样才能阅读UITextField值在IBAction 我正在创造UITextField以编程方式 所以我无法设置 property and synthesize使用 Xcode 要生成的代码UITextField如下 for i 0 i
  • .net core 1.1 中嵌入的 power bi

    目前 我正在尝试在 Visual Studio 2017 中为我的 net core 1 1 项目导入 powerbi 包 但是 我收到以下错误 Install Package Package Microsoft PowerBI Core
  • 转义字符串中的反斜杠

    我想知道什么是转义字符串中的反斜杠而不添加不必要的斜杠的好方法 我的意思是 通常如果我想转义字符串中的反斜杠 最简单的方法是使用String Replace 像这样 string s someString Replace 可以使用正则表达式
  • 如何从装有 iOS 5 的新 iPhone(供个人使用)获取历史位置数据?

    过去 从 iPhone 上名为solidified db 的文件中获取历史位置数据很容易 例如 请参阅http petewarden github com iPhoneTracker http petewarden github com i
  • 当 C# 位于同一包含类中时,为什么以及如何允许访问类本身之外的私有变量?

    我不知道这个问题是否具有足够的描述性 但是这种行为为什么以及如何存在 public class Layer public string Name get set private IEnumerable children public IEn
  • Gmail 中删除了 iOS 深层链接

    我正在尝试发送一封带有深层链接的电子邮件到我的 iOS 应用程序 使用 myapp 格式从电子邮件中将其打开 它可以在任何 iOS 邮件客户端 邮件 邮箱等 中运行 即点击它打开应用程序 但不能在 Gmail 应用程序 甚至网络 中运行 因
  • 如何让 iPhone 屏幕变暗

    我的 iPhone 屏幕上有一个刷新按钮 可以刷新当前视图中的表格 屏幕刷新得很漂亮 但是有没有办法让屏幕变暗 然后在表格刷新后再次变亮 您可以在要调暗的视图上放置一个带有黑色背景的非不透明视图 默认情况下 其 alpha 值为 0 因此是
  • 在 iPhone 上搜索 PDF

    经过两天尝试使用 Quartz 从 PDF 中读取注释后 我成功做到了并且发布我的代码 https stackoverflow com questions 4080373 get pdf hyperlinks on ios with qua
  • 应用程序:didReceiveRemoteNotification:未调用 fetchCompletionHandler

    出现了这个功能application didReceiveRemoteNotification fetchCompletionHandler当应用程序被强制退出时不会被调用 我的印象是 无论应用程序处于什么状态 该函数都会被调用 但似乎只有
  • 如何处理 iPhone 6S Plus 字体大小?

    与其他屏幕尺寸相比 iPhone 6S Plus 的屏幕非常大 我似乎无法找到一种在不以编程方式调整大小的情况下处理标签字体大小的好方法 如何调整标签的字体大小 使其在 iPhone 5 上看起来更小 在 iPhone 6 Plus 上看起
  • 如何在 SceneKit 中以编程方式将 png 纹理包裹在立方体周围

    我是 SceneKit 的新手 试图让一些基本的东西工作 但到目前为止还没有取得多大成功 由于某种原因 当我尝试将 png 纹理应用于 CNBox 时 我最终除了黑色之外什么也没有 这是我在 viewDidLoad 中的简单代码片段 let
  • 如何从 UI 测试访问 App Delegate?

    我想访问特定的属性router在 UI 测试期间从启动的应用程序的应用程序委托中获取 但我不知道这是否可行 我努力了 let appDelegate UIApplication sharedApplication delegate as A
  • 如何从TableViewCell上的自定义CollectionViewCell推送VC?

    我有一个tableView和细胞 在细胞上我有一个collectionView并在其上显示一些内容 我想发送一个有关选择的链接indexPath 我想从自定义中推送 呈现我的视图CollectionViewCell这是在TableViewC

随机推荐

  • 在 AFNetworking 中使用 URL 参数和 JSON 正文进行 POST

    我想进行一个同时包含 URL 参数和 JSON 正文的 POST 调用 URL http example com register apikey mykey JSON field value 如何通过 AFNNetworking 同时使用两
  • 用Python计算农历/阴阳假期

    这里有日历坚果吗 我一直在寻找有关如何计算公历中不规则发生的当年假期的信息 通常会发生这种情况 因为该假期是基于较旧的农历 我在谷歌上进行了令人作呕的搜索并取得了一些进展 但无法完成 如果有人有现代语言的示例代码来描述他们的计算 我将非常感
  • 在 for 循环中, (int i : high) 做什么,其中 high 是 int 数组 [重复]

    这个问题在这里已经有答案了 正如标题所说 有些人告诉我 如果我想打印数字数组中所有内容的总和 我应该使用上述参数进行 for 循环 如果需要进一步解释 代码将遵循 但其作用的确切定义是什么 我的意思是 部分 是吗 对于数组中的每个数字 i
  • )?图ql' aria-label='不知道如何转换Django字段技能()?图ql'> 不知道如何转换Django字段技能()?图ql

    我正在努力改变我的rest端点指向graphql我有一个图书馆叫TaggableManager作为其中之一model fields 有人知道这如何与 graphql 一起使用吗 提前致谢 你必须明确告诉石墨烯如何转换TaggableMang
  • 在 adb shell 中找不到 grep 命令

    我的手机通过adb连接到电脑后 进入adb shell 然后输入grep给我 grep not found 这是我的adb安装问题还是我的手机问题 如何让 grep 适用于我的设备 PS 这就是为什么我认为这可能是我的手机有问题的原因 而不
  • 错误:使用react-redux时,提供商的钩子调用无效

    我正在制作一个应用程序来从 url 获取参数并根据 url 的值工作 为了做到这一点 我尝试实现 redux 我想我编写了大部分代码 并且我是 React 和 Redux 的初学者 当我在 index js 文件中插入 Provider 时
  • 使用 Gmail 发送邮件的脚本:无法在 SMTP 服务器上进行身份验证

    我很难让 PHP 脚本使用 SMTP Gmail 帐户发送电子邮件 我正在使用 PHP 和 Symfony2 SwiftMailer 但问题似乎出在我的 Gmail 帐户配置上 在我的日志中 我最终收到以下错误消息 ERROR Except
  • 如何在 android ExoPlayer 中显示字幕

    我正在使用 Exoplayer 来播放 URL 我想在 exoplayer 中添加 srt 文件 但我认为播放器不支持srt文件 所以我将文件内容放入 1 个变量中 如何在 android exoplayer 中显示字幕 有点晚了 但它可能
  • GKE 集群升级到 1.14.6 后,VPN 无法访问内部网络

    我们将现有的开发集群从 1 13 6 gke 13 升级到 1 14 6 gke 13 我们的 Pod 无法再通过 Google Cloud VPN 访问我们的内部网络 我们的生产集群 仍在 1 13 上 共享相同的 VPC 网络和 VPN
  • 集合的快速交集:C++ 与 C#

    在我的机器 四核 8GB RAM 上 运行 Vista x64 Business 使用 Visual Studio 2008 SP1 我试图非常快速地求出两组数字的交集 我在 C 中实现了两种方法 在 C 中实现了一种 到目前为止 C 方法
  • JDK 和 JRE 有什么区别?

    编者注 这个问题是在 2009 年提出的 当时的世界已经不同了 2022 年 标准开源 OpenJDK 仅包含 JDK JDK 和 JRE 有什么区别 它们的作用是什么 我什么时候应该使用其中之一 The JRE is the Java运行
  • 如何检查系统是大端还是小端?

    如何检查系统是大端还是小端 在 C C 中 int n 1 little endian if true if char n 1 也可以看看 Perl版本
  • 默认显示 android SearchView EditText

    我在 android 中使用 SearchView 当我第一次登陆该页面时 所有可见的都是搜索图标 然后 当我单击该图标时 会出现 EditText 如何让 EditText 从一开始就可见 这是我的 xml
  • 计算向量中的出现次数

    该程序从 txt 文件中读取数字字符串 将它们转换为整数 将它们存储在向量中 然后尝试以有组织的方式输出它们 如下所示 如果 txt 文件显示 7 5 5 7 3 117 5 程序输出 3 5 3 7 2 117 因此 如果该数字出现多次
  • 是否可以在 Access 中创建递归查询?

    我有一个job table Id ParentID jobName jobStatus 根 ParentID 为 0 是否可以在 Access 中创建查询来查找给定的根job 数据库是MDB 没有链接表 Access版本是2003 job可
  • 从网络摄像头获取最新帧

    我正在使用 OpenCV2 通过网络摄像头拍摄一些延时照片 我想提取网络摄像头看到的最新视图 我尝试像这样完成这个任务 import cv2 a cv2 VideoCapture 1 ret frame a read The followi
  • 安全地散列密码 - 这么多相互矛盾的建议!

    我读到了很多关于如何安全存储密码的相互矛盾的建议 我唯一确定的是不要使用MD5 我见过有人提倡使用 PHPbcrypt函数 这似乎会占用服务器的处理器 我见过提倡盐的人 也见过提倡不使用盐的人 一切都是那么的不明朗 关于如何安全存储密码是否
  • 电影播放器​​的激活状态错误 (1)

    你好 我正在从视频网址捕获视频的缩略图 我正在使用以下代码来捕获缩略图 MPMoviePlayerController moviePlayer MPMoviePlayerController alloc initWithContentURL
  • 如何在android中播放来自url的音频文件

    我需要在我的应用程序中播放远程服务器的音频文件 当我使用本地主机服务器 使用 WAMP 进行测试时 我可以玩 当从服务器提供相同的文件时 它不起作用 文件没有扩展名 内容是MP3 String fileUrl http 192 168 1
  • MonoTouch:如何保护我的应用程序

    我使用 Dotfuscator 来保护我的应用程序免受逆向工程的影响 我在 Windows 应用程序中加密了 dll 文件 但如何在 OSX MonoTouch 中做到这一点 从ipa中提取dll 然后在windows中混淆dll 将加密的