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

时间:2012-05-30 16:04:26

标签: iphone ios security

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

4 个答案:

答案 0 :(得分:4)

如上所述,您应该首先考虑这一点的合法性,特别是Apple对应用商店内容的限制。

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

https://github.com/dev5tec/FBEncryptor

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

答案 1 :(得分:1)

这个问题很难回答。由作者决定所需的安全级别。他们可能希望获得一些法律建议,说明泄露数据可能会产生什么(如果有的话)。

一旦您了解了适当的保护级别,就可以开始评估解决方案。钥匙串很好,但有很多加密选项可用。

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

  • 公开号码需要进行哪些身份验证?
  • 曝光号码的预期生命周期是多少?
    • 这个号码可以暴露多久?
    • 如何从内存中清除号码?
  • 如何使用曝光的号码?
    • 该号码是否可以显示给用户?
    • 您是否允许将号码复制到剪贴板?

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

答案 2 :(得分:0)

您需要对此进行非常认真的研究,并且不一定接受本网站上的人员在没有经过深入研究和确认的情况下所说的话。

存储信息卡信息等信息不是您应该根据本网站IMO的回复实施的。

如果您是认真的,您需要阅读,理解并应用书中的材料"黑客和保护iOS应用程序"了解危险是什么以及如何减轻它们,以及人们所说的安全技术实际上并不像你想象的那样安全。

答案 3 :(得分:0)

对于这种情况,加密和使用SSL / HTTPS似乎已经足够了。如果您是subj的新手,那么这里有一般的指导原则:Mobile App Development Tips: How to Ensure Data Security

有许多实现,例如你可以使用上面提到的AES256算法:

  1. 当应用首次保存信用卡号时,会随机出现 生成masterKey和初始化向量(IV)。使用它们 稍后加密。
  2. 在本地生成并保存masterSalt。
  3. 使用plainPassword和masterSalt计算哈希值(PBKDF2)。
  4. 使用AES256算法,计算的散列用于加密 MasterKey和IV。
  5. 加密的MasterKey和IV保存在本地。
  6. 使用plainPassword和masterSalt哈希解密MasterKey和IV (PBKDF2)。
  7. 现在,使用AES256算法使用MasterKey和IV加密数据。