如何在iPhone上存储信用卡信息?

我有要求在iPhone应用程序中存储信用卡号码。 如何存储数据的安全方式。 我看过钥匙链。 除此之外,有什么我可以使用的。

如上所述,您应该先看看这个合法性,特别是苹果限制app store中的内容。

也就是说,之前我不得不encryption敏感信息,并决定用AES-256encryption。 由于用户名,密码和个人数据是通过networking发送的,因此这是必要的。 我使用了FBEncrypt – 这是CCCrypt的一个很好的包装。

https://github.com/dev5tec/FBEncryptor

这将允许您进行base-64编码和AES-256编码等等,而且非常方便。 检查出来,如果你真的需要它!

这个问题很难回答。 确定所需安全级别的要求由作者决定。 他们可能希望得到一些法律build议,说明泄漏数据可能会发生什么责任。

一旦你知道了适当的保护水平,那么你就可以开始评估解决scheme。 钥匙串是好的,但有相当多的encryption选项可用。

除了如何存储号码,您可能想要获得答案的问题包括:

  • 需要进行哪种身份validation才能显示该号码?
  • 暴露号码的预期生命周期是什么?
    • 这个号码能保持多久?
    • 这个号码将如何从记忆中清除?
  • 如何使用暴露号码?
    • 数字是否可以显示给用户?
    • 你会允许将数字复制到剪贴板吗?

如果你想认真保护信息(任何信息),你需要做一些认真的devise工作。

您需要对此进行非常认真的研究,并且不一定要接受本网站上的人员未经您的深入研究和确认。

信用卡信息存储信息是不是你应该实施只是基于本网站的反应IMO。

如果你是认真的,你需要阅读,理解和应用“黑客和安全的iOS应用程序”的内容,了解危险是什么,以及如何减轻这些危害,以及人们说的安全技术真的不是就像你认为的那样安全。

对于这种情况,encryption和使用SSL / HTTPS似乎已经足够了。 如果您对这个主题感兴趣,那么您可以在这里find一些很好的指导方针: 移动应用开发技巧:如何确保数据安全

有很多的实现,例如你可以使用上面提到的AES256algorithm:

  1. 当应用程序第一次保存信用卡号码时,会生成随机的主密钥和初始化向量(IV)。 稍后使用它们进行encryption。
  2. MasterSalt在本地生成并保存。
  3. 使用plainPassword和masterSalt,计算散列(PBKDF2)。
  4. 使用AES256algorithm,计算出的散列用于encryptionMasterKey和IV。
  5. encryption的MasterKey和IV在本地保存。
  6. 使用plainPassword和masterSalt散列(PBKDF2)解密MasterKey和IV。
  7. 现在,使用AES256algorithm,用MasterKey和IVencryption数据。