gpt4 book ai didi

ios - 为什么将 key 放入 iOS 二进制文件是安全的

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:54:14 25 4
gpt4 key购买 nike

我注意到针对社交网络中大多数主要参与者的几个教程都有示例,其中将绑定(bind)到您帐户的 API key 嵌入(通常在计划文本中)在源代码中。例如,Google Maps APIs Premium Plan .此 key 用于向贵公司开具账单。

我在 Is it safe to put private API keys in your .m files when exporting to the appstore? 中发现了类似的问题1 - 请注意,任何拥有越狱手机的人都可以看到未加密的可执行文件

这种做法真的安全吗?如果安全,为什么?

最佳答案

在应用程序中嵌入 API key 是不安全的,通常不是一个好的做法,但确实需要大量的工作因素才能获得它们,这不是微不足道的。除了用于执行的操作系统之外,没有任何工具可以解密可执行文件。

回复:“任何拥有越狱手机的人都可以看到未加密的可执行文件。”不是真的。只是越狱不会解密应用程序二进制文件,它只会在二进制文件加载到 RAM 中执行并且 key 不可用时解密,它是在 DMA 路径中的硬件中解密的。需要添加调试工具,在加载到内存中执行后捕获二进制文件。

您需要确定攻击者是谁,攻击者将花费多少技能和时间以及您的成本。

没有100%安全的解决方案,只会增加工作因素。另一种方法是在登录服务器时首次运行时获取 API key ,然后将它们移动到钥匙串(keychain)。但这也只是工作因素的增加,因为如上所述,当可执行文件被发送到服务时,可以在运行时对其进行检查。

只要在执行的任何部分期间 key 必须在应用程序内存中,它就容易受到攻击。

将API key 放在源中可能会满足安全需求。

关于ios - 为什么将 key 放入 iOS 二进制文件是安全的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35978943/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com