【问题标题】:Generating secret key for AES 256 Encryption from Keychain从 Keychain 生成 AES 256 加密的密钥
【发布时间】:2017-06-07 12:36:21
【问题描述】:

我正在做一个需要在本地加密/解密一些数据的项目。我使用RNCryptor 进行加密和解密过程。为此,我需要使用密钥,我不想从应用程序端定义该密钥,例如:

NSString *password = @"Secret password";

有没有办法使用钥匙串中的任何属性来定义钥匙,这样我就可以使用相同的钥匙而无需在代码库中定义它。

【问题讨论】:

    标签: ios objective-c encryption public-key-encryption aescryptoserviceprovider


    【解决方案1】:

    如果您不想声明静态密钥或从静态密码派生密钥,您当然可以派生一个随机密钥并将该值存储在钥匙串中。 SecRandomCopyBytes 将返回以加密安全方式生成的任意长度数组。您可以从该服务请求 32 个字节(256 位)并将其作为您的密钥存储在钥匙串中。显然要知道,如果你多次调用它,它不会返回相同的结果,所以一旦你存储了它,你就不能丢失它。

    【讨论】:

    • 感谢您的回答,对您有帮助
    【解决方案2】:

    你可以在github试试SAMKeychain

    https://github.com/soffes/SAMKeychain

    【讨论】:

      猜你喜欢
      • 2013-06-16
      • 1970-01-01
      • 1970-01-01
      • 2018-05-31
      • 1970-01-01
      • 2017-02-12
      • 1970-01-01
      • 2017-04-26
      • 2020-06-24
      相关资源
      最近更新 更多