ios - 在 Xcode 中保护 API 密钥的最佳/最简单方法是什么?
问题描述
我正在使用我付费的 API 使用 Swift 开发一个简单的 iOS 应用程序。我没有大量资源,也没有找到一个简单/最新的解决方案来解决这个问题。我想保护我的 API 密钥,而不是将密钥直接放在我提出请求的代码中(我听说这是最佳实践)。什么是保护我的 API 密钥免受他人拆解我的代码并使用它的最简单方法。
我听说过一些关于使用 Keychain 的信息,但我不确定这是否是最佳途径。
class APIService {
static let shared = APIService()
private let token = "(my token goes here)"
//...various API request functions
}
解决方案
没有简单的方法,也没有完全保护它们免受攻击者的方法。您始终可以进行一些简单的密钥混淆或将它们存储在服务器中,但如果黑客可以对您的代码进行逆向工程,他们很可能会对您的混淆进行逆向工程。
如果有人确实获得了您的密钥(数据库备份等),最好制定安全措施。
推荐阅读
- linux - 我们如何才能看到所有正在运行的服务 Linux 机器?
- google-apps-script - 从自定义公式调用时,相同的 Apps 脚本代码提供不同的输出
- flutter - 输入'列表
' 不是类型 'Map 的子类型 ' 在颤振应用程序中出现此错误 - c# - 无法将 wmp.dll 引用添加到 C# .Net Core 项目
- facebook-graph-api - 按活动列出 facebook 好友
- php - Wp-login.php 没有获取 url 参数
- python - 问题 - 从 beautifulsoup 内容中获取所有 href
- google-kubernetes-engine - gke-metrics-agent 与prometheus相关的多个错误
- r - 用不同尺度重新分类变量以在 R 中进行回归分析
- spring - Spring Data JPA:当同时调用两个存储库保存方法时,Id 增加两倍