我将所有CoreData
和NSUserDefault
值存储在以编程方式创建的cdb
商店文件中,并将其上传到用户的iCloud
以备份其数据。因此,他可以从任何设备恢复他的数据。
由于cdb
存储文件包含一些敏感数据,并且该文件可以从iCloud
复制到计算机并且可以使用某些sql浏览器打开,我想以某种方式加密文件,然后再进行备份和在恢复时解密。我想知道有没有办法或工具来做到这一点。
答案 0 :(得分:0)
尝试RNCryptor https://github.com/RNCryptor/RNCryptor
基本密码使用
<强>夫特强>
// Encryption
let data: NSData = ...
let password = "Secret password"
let ciphertext = RNCryptor.encryptData(data, password: password)
// Decryption
do {
let originalData = try RNCryptor.decryptData(ciphertext, password: password)
// ...
} catch {
print(error)
}
<强>的OBJ-C 强>
// Encryption
NSData *data = ...
NSString *password = @"Secret password";
NSData *ciphertext = [RNCryptor encryptData:data password:password];
// Decryption
NSError *error = nil;
NSData *plaintext = [RNCryptor decryptData:ciphertext password:password error:&error];
if (error != nil) {
NSLog(@"ERROR:%@", error);
return
}
// ...