我有一个关于在iOS应用程序中保存密钥的问题。
有没有办法在应用程序中保存RSA证书的公钥/私钥,而不是将其保存/存储在iOS钥匙串中。 也许有人在此之前试过这个?
我发现了类似的用户名和密码。它被称为“Keychainwrapper”。应用程序在那里保存登录凭据。使用私钥/公钥对我有用吗?
希望有人可以帮助我。
致以最诚挚的问候,
岸堤
答案 0 :(得分:0)
由于您只需要存储公钥和私钥而不是整个证书,因此无法使用内部钥匙串并且在设备上生成密钥,只要在NSUserDefaults中保存公钥和私钥就足够了: / p>
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。请注意,如果将密钥存储在应用程序中,则对称加密并不安全!您应该使用一些用户输入来生成密钥。
希望这会有所帮助。