iphone - 在 iOS 中保存加密 key 的安全方法

标签 iphone objective-c ios security encryption

在我的 iOS4+ 应用程序中,我在多个地方使用 AES 加密,并且整个应用程序必须非常安全。为了做到这一点,我必须在此应用程序中硬编码几个 key ,然后在我需要加密某些内容时随机选择这些 key ...

我的问题是如何存储这些私钥?使用 NSString 对它们进行硬编码是否安全?或者

#define SecretKeyString @"febd9a24d8b65c1c787d50a4ed3619a9"

如果用户在安装了这个应用程序的情况下越狱 iPhone,他就不能得到那些硬编码的 key 吗?我怎样才能最有效地隐藏它们?

感谢任何建议...

最佳答案

其他应用程序所做的是要求用户先“登录”,然后才能使用该应用程序。然后,您使用他们的用户 ID/密码作为 key 来加密 key ,或使用安全的 Web 服务获取该用户的 key 。

如果您使用 #define 甚至 NSString,则有多种方法可以猜测键。显然,您必须真正愿意花费大量时间在编译代码中找到这些 key ,但根据您所寻找的安全级别和您要防范的人员,这可能是个问题。

关于iphone - 在 iOS 中保存加密 key 的安全方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10535114/

相关文章:

iphone - 如何使用 NSFetchedResultsController 制作顺序过滤器

ios - iphone 上的 CSS 输出与 PC 不同

ios - 如何在 ios 中使用 google Analytics,而无需在所有库中扩展库 GAY Tracked ViewController

iphone - 表格 View 崩溃

ios - 从 webservice 获取 unicode 字符并在 ios 应用程序中显示它们

objective-c - 谁能帮我画一个条形图...?

ios - 在 iOS 中向外部蓝牙设备写入 >20 个字节

iphone - 当我把自己放进去时,NSArray 失去了值(value)

ios - 在运行时更改 UIBackgroundModes 音频

iphone - 一种简单、干净的方式来切换/交换 View ?