SQLCIPHER sqlite encrypted iphone ios converting un-encrypted database to encrypted database
[fmdb open];
NSString *sel = @"SELECT count(*) FROM sqlite_master";
FMResultSet *fmr = [self executeQuery : fmdb : sel];
if ( [fmr next] ) // unencrypted
{
NSLog(@"Encrypting");
fmdb.key = @"";
[fmdb rekey : @"somekey"];
}
- (BOOL)rekey:(NSString*)key {
#ifdef SQLITE_HAS_CODEC
if (!key) {
return NO;
}
int rc = sqlite3_rekey(db, [key UTF8String], (int)strlen([key UTF8String]));
if (rc != SQLITE_OK) {
NSLog(@"error on rekey: %d", rc);
NSLog(@"%@", [self lastErrorMessage]);
}
return (rc == SQLITE_OK);
#else
return NO;
#endif
}
我正在尝试将 1)FMDB Pod 2)SQLCipher pod 与 Rubymotion iOS 项目一起使用。
我正在尝试使用 SQLCipher 加密数据库,但 Rubymotion 无法识别 SQLCipher 提供的方法。
我发现了下面提到的一段代码,人们报告说它在 Objective C 和 xcode 中运行。
有人可以将其转换为 Rubymotion 吗?