文档字符串加密

字符串加密

预计阅读时间:8 分钟

什么是字符串加密?

字符串加密是将代码中的明文字符串(如 API 地址、密钥、敏感信息)转换为加密形式存储, 运行时再解密使用。这可以有效防止通过静态分析获取敏感信息。

加密前
NSString *apiKey = @"sk-abc123xyz789";
NSString *baseURL = @"https://api.example.com";
加密后
NSString *apiKey = ZFJ_Decrypt(@"x9K2mN...");
NSString *baseURL = ZFJ_Decrypt(@"p4X7jL...");

加密算法

CodeFog 支持多种加密算法:

XOR 加密

推荐

轻量级加密,性能开销最小,适合大多数场景

AES-128 加密

高安全

标准加密算法,安全性高,适合敏感数据

Base64 + 自定义混淆

基础

简单混淆,防止直接搜索字符串

配置选项

选项说明默认值
encryptString启用字符串加密false
encryptAlgorithm加密算法 (xor/aes/base64)xor
minStringLength最小加密字符串长度5
stringWhitelist不加密的字符串列表[]

适合加密的字符串类型

建议加密

  • • API 密钥和 Token
  • • 服务器地址和端口
  • • 加密密钥
  • • 敏感业务逻辑标识
  • • 内部协议字符串

不建议加密

  • • UI 显示文本
  • • 本地化字符串
  • • 日志输出内容
  • • 公开的 URL scheme
  • • 系统通知名称

注意事项

  • 字符串加密会增加少量运行时开销
  • NSLocalizedString 等本地化字符串会自动排除
  • 过短的字符串(少于5字符)默认不加密
  • 加密后的字符串在调试时显示为密文