TPObfuscatedString是Swift中String的一个简单扩展。它可以允许您混淆编译的二进制中的硬编码字符串。
要尝试使用它,请使用命令行strings
。
本项目不是UAObfuscatedString库的副本!TPObfuscatedString使用基本的Swift代码来进一步提高安全性!
非常感谢UrbanApps和他们的项目UAObfuscatedString!这是一个非常棒的库,也是我创建这个纯Swift库的最初灵感。
TPObfuscatedString不会将任何字符串保存到编译的二进制文件中。实际上,它使用UnicodeScalar来找到正确的字母!
现在黑客将无法从您的二进制文件中提取字符串了!
通过CocoaPods
要使用CocoaPods将TPObfuscatedString集成到您的Xcode项目中,请在您的Podfile
中指定它
source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '8.0'
use_frameworks!
pod 'TPObfuscatedString'
手动
1. 将TPObfuscatedString.swift
添加到您的项目中。
2. 这样就可以了!
使用这个库非常简单。首先您需要一个空字符串对象。为了方便起见,您可以直接使用静态对象TPObStr
,它与空字符串没有什么不同。
每个字母都有一个对应的方法名。这些方法是区分大小写的!特殊字符和数字有拼写出来的方法。目前所有可见的ASCII字符都受支持!
示例
TPObStr.T.h.i.s.space.i.s.space.a.n.space.e.x.a.m.p.l.e.space.t.e.x.t.colon.space.H.i.exclamation
这将返回以下字符串:This is an example text: Hi!
这种混淆比从二进制/内存中拉取的硬编码值要慢。但您可以结合缓存算法来加快速度!此外,此库仅推荐用于短字符串!
非常期待看到你对这个库的改进!贡献的最简单方法是叉这个仓库,然后你在做了调整后给我发送一个 pull 请求。
在提交 pull 请求之前,请确保项目可以在没有任何警告或错误的情况下构建!
我会尽快回复你,并将你的更改合并到主项目中!
Philip Niedertscheider
TPLocalizedError 在 MIT 许可证下可用。更多信息请参阅 LICENSE 文件。