Skip to content

Latest commit

 

History

History
60 lines (39 loc) · 2.14 KB

README_en.md

File metadata and controls

60 lines (39 loc) · 2.14 KB

需要阅读中文文档的可以点击跳转到这 CodeSecurity 中文文档

CodeSecurity

A plugin for supporting object c code obfuscation in Xcode 8+

Features

  1. encrypt obfuscation plain text
  2. encrypt obfuscation class name, method name
  3. encrypt obfuscation property name
  4. decrypt encrypted plain text

Some using advices

  1. Not recommend for obfuscation in header file
  2. Every time you obfuscate a symbol, unless you know the theory about obfuscation, or you'd better compile and run the code. Make sure no error happend
  3. You can obfuscate symbol in header file, but make sure the code which imports the header file will not be affected
  4. Don't obfuscate symbols in subclass which was defined in super class, obfuscate it in super class
  5. If you obfuscate plain text, I recommend you to use dl_getRealText method in mixplaintext, to help decrypt in running time
  6. Obfuscate class name in header file.

Requirements

It requires Xcode 8.0+

Installation

  1. On OS X 10.11 El Capitan, run the following command and restart your Mac:

     sudo /usr/libexec/xpccachectl
    
  2. Open CodeSecurity.xcodeproj

  3. Enable target signing for both the Application and the Source Code Extension using your own developer ID

  4. Product > Archive

  5. Right click archive > Show in Finder

  6. Right click archive > Show Package Contents

  7. Open Products, Applications

  8. Drag CodeSecurity.app to your Applications folder

  9. Run CodeSecurity.app and exit again.

  10. Go to System Preferences -> Extensions -> Xcode Source Editor and enable the extension

  11. The menu-item should now be available from Xcode's Editor menu.

TODO

  1. Support Swift code
  2. Obfuscation macro should be putted after all the import header files

Contributors

Author: @粉碎音箱的音乐(weibo)

Blog: Blog

Starring is caring

Please star if you think it is helpful to you. Thank you. 😄