我可以在应用程序中安全地存储信用卡数据吗?

信息安全 安卓
2021-08-31 21:26:36

我在我的应用程序中使用支付网关。
我正在考虑在我的应用程序中存储没有 CVC 号码的信用卡号码。

存储 CC 号码无需重新输入 CC 号码。但是,用户仍然必须输入 CVC 编号。
CC 号码本身将使用 AES 和用户定义的密钥进行加密。

问题:

  1. 以这种方式将信用卡数据存储在 App 中是否安全?
  2. 与其他操作系统相比,此实现在 Android 中的安全性如何?
2个回答
  1. 它与您存储 CC 加密密钥的地方一样安全。
  2. Android 具有一个keystore,它为您处理密钥的生成、存储和使用。您的应用程序通过KeyChain API与它对话它提供了一些优点:
    • 每个应用程序只能访问自己的密钥。密钥库会为您强制执行此操作。
    • 在应用程序进程受损的情况下,密钥材料受到保护。
    • 它为您执行所有加密。
    • 如果设备具有某些安全硬件,则可以将密钥材料存储在那里,因此很难从设备中提取它。

对 Android 密钥库的引用仅供参考。使用它不一定会使您既不安全也不符合 PCI-DSS。其他人已经为此发布了参考资料。

您可以在此处阅读 PCI 标准:

https://www.pcisecuritystandards.org/document_library

首先找到您的应用程序需要遵循的规定,然后查看有关 CC 数据存储的特​​定加密/实施相关建议。它们提供的细节比我们在这里收集的要多得多。