0

我有一个关于在 iOS 应用程序中保存密钥的问题。

有没有办法在应用程序中保存 RSA 证书的公钥/私钥,而不是将其保存/存储在 iOS 钥匙串中。也许有人以前试过这个?

我发现与用户名和密码类似的东西。它被称为“钥匙串包装器”。该应用程序将登录凭据保存在应用程序中。这对我使用私钥/公钥有用吗?

希望有人可以帮助我。

此致,

和我

4

1 回答 1

0

由于您必须只存储公钥和私钥而不是整个证书,因此不能使用内部钥匙串并且密钥是在设备上生成的,如果您将公钥和私钥保存在 NSUserDefaults 中就足够了:

NSUserDefaults *prefs = [NSUserDefaults standardUserDefaults];
//saving the data
[prefs setObject"<your public key data>" forKey:@"PublicKey"];
[prefs setObject"<your private key data>" forKey:@"PrivateKey"];

//reading the data
NSString *publicKey = [prefs stringForKey:@"PublicKey"];
NSString *privateKey = [prefs stringForKey:@"PrivateKey"];

这家商店相当不安全,所以我建议您像这样加密您的数据:iOS 5: Data encryption AES-256 EncryptWithKey: not found。请注意,如果您将密钥存储在应用程序中,对称加密是不安全的!您应该使用一些用户输入来生成密钥。

希望这可以帮助。

于 2013-06-05T12:58:55.583 回答