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
}
Rubymotion iOS プロジェクトで 1)FMDB ポッド 2)SQLCipher ポッドを使用しようとしています。
データベースを SQLCipher で暗号化しようとしていますが、SQLCipher が提供するメソッドを Rubymotion が認識しません。
Objective C および xcode で実行されていると報告されている以下のコードを見つけました。
誰かこれを Rubymotion に変換してくれませんか?