【问题标题】:How to obfuscate code using Polidea's iOS Class Guard?如何使用 Polidea 的 iOS Class Guard 混淆代码?
【发布时间】:2015-04-28 13:16:35
【问题描述】:

谁能告诉我在iOS项目中实现Polidea的iOS Class Guard的步骤。我浏览了以下 github 链接:

https://github.com/Polidea/ios-class-guard

我还完成了示例项目。我只在其中找到了一个 obfuscate_project 文件。实现后如何测试?

【问题讨论】:

  • 您能澄清一下您的问题吗?现在好像有点不清楚了。正如其中一位创建者所说:“通常要测试您的代码是否被混淆,您必须通过 class-dump 或 IDA 运行它以查看 Objective-C 类名是否被破坏。”
  • 我没有混淆我的项目,我只有一个经过混淆的示例项目。你能告诉我实施的步骤吗?我提供的链接不清楚。
  • 嗨@user3388273..您找到问题的答案了吗?我也在使用类警卫进行混淆,发现它很难集成和测试。如果您能够做到,请发布答案。

标签: ios security code-access-security


【解决方案1】:

4.1.1.1。安装

在终端中执行这个简单的 bash 脚本。当要求输入密码时,输入您的帐户。它是必需的,因为该实用程序安装在 /usr/local/bin 中。

$ brew install https://raw.githubusercontent.com/Polidea/homebrew/ios-class-guard/Library/Formula/ios-class-guard.rb

要安装最前沿的版本:

$ brew install --HEAD https://raw.githubusercontent.com/Polidea/homebrew/ios-class-guard/Library/Formula/ios-class-guard.rb

4.1.1.2。怎么用?

将 iOS Class Guard 集成到项目中需要几个步骤。

obfuscate_project 下载到您的项目根路径中。

$ chmod +x obfuscate_project

在 shell 脚本 obfuscate_project.sh 中更新项目文件、方案和配置名称。

$ ./obfuscate_project 

每当您想混淆您的项目时。每次发布都应该这样做。存储包含符号映射的 json 文件,以便在发生崩溃时获取原始符号名称。 **使用发布版本号重命名存储的 json 文件。 **

使用 Xcode 或其他工具构建、测试和归档您的项目。

呈现的方式是最简单的一种。您还可以添加一个额外的目标,该目标将在编译期间自动重新生成符号映射。

ios-class-guard 将被 shell 脚本 obfuscate_project 调用。

============不幸的是=============

在 XCode 7.0 环境中,我们无法在没有错误的情况下完成混淆。

【讨论】:

  • 仅供参考:已发布支持 Xcode 7 的新版 iOS Class Guard (0.8)。请升级,现在应该可以正常工作了。
  • @psci 非常感谢!但是我发现我现在无法安装类转储...以下构建命令失败:CompileC build/class-dump.build/Release/MachObjC.build/Objects-normal/x86_64/CDLCSegment.o Source/CDLCSegment.m正常 x86_64 目标-c com.apple.compilers.llvm.clang.1_0.compiler (1 失败)
  • 无法安装是什么意思?从 brew 安装失败了吗?您使用的是什么 xcodebuild 版本? (运行xcodebuild -version
猜你喜欢
  • 2021-01-23
  • 1970-01-01
  • 2014-05-09
  • 1970-01-01
  • 1970-01-01
  • 2016-03-15
  • 2023-04-08
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多