私はスウィフトにSQLiteデータベースを作成するためにFMDBを使用しています。しかし、今私はそれを暗号化したい。誰でも、 'FMDB/SQLCipher'を使ってSQLiteデータベースの暗号化と解読のSwift版を手伝ってもらえますか?私はこれを理解する良いチュートリアルを見つけることができませんでした。Swiftで 'FMDB/SQLCipher'を使用して暗号化および復号化する方法は?
9
A
答えて
0
このdetailed tutorialによると、あなたは正しいライブラリとコンフィギュレーションをロードするためにCocoapodsを使用する必要があります。チュートリアルでは、Objective-Cのソリューションを説明していますが、コメントでスウィフトで翻訳を見つけることができます。
var db: COpaquePointer = nil;
let databasePath = FileUtils.getPath(“app.db”)
var ecDB = NSSearchPathForDirectoriesInDomains(NSSearchPathDirectory.DocumentDirectory, NSSearchPathDomainMask.UserDomainMask, true)[0].stringByAppendingPathComponent(“encrypted.sqlite”)
let result = String.fromCString(“ATTACH DATABASE \(ecDB) AS encrypted KEY TaP”)
if (sqlite3_open(databasePath, &db) == SQLITE_OK) {
// Attach empty encrypted database to unencrypted database
sqlite3_exec(db, result!, nil, nil, nil);
// export database
sqlite3_exec(db, “SELECT sqlcipher_export(‘encrypted’);”, nil, nil, nil);
// Detach encrypted database
sqlite3_exec(db, “DETACH DATABASE encrypted;”, nil, nil, nil);
sqlite3_close(db);
}
else {
sqlite3_close(db);
sqlite3_errmsg(db);
}
は、完全な説明についてはdetailed tutorialをお読みください。
あなたはSQLCipherドキュメントで説明したように、平文のデータベースを開き、暗号化されたものに、それをコピーし、その後、平文1を削除する必要があります+0
私はこれを試しましたが、データベースが作成されるとクラッシュします。私はSCLCipherなしでFMDBをインストールすると、いくつかのコードは正常に動作します。私はXcode 8とSwift 3を使用しています。 – Salmo
関連する問題
- 1. 暗号化および復号化クラス?
- 2. SAMLアサーションを暗号化および復号化する方法
- 3. Azureストレージアクセスキーを暗号化および復号化する方法
- 4. MediaCodecを使用して暗号化されたデータをSurfaceTextureに復号化および復号化する
- 5. Javaでサウンドファイルを暗号化および復号化する方法は?
- 6. Qt/C++でファイルを暗号化および復号化する方法は?
- 7. レールでIDを暗号化および復号化する方法は?
- 8. stringをbase64に暗号化および復号化する方法は?
- 9. bashでバックアップファイルを暗号化および復号化する簡単な方法
- 10. PHPを使用してmysqlデータベースのデータを暗号化および復号化する方法は?
- 11. sqliteを使用してiphoneでパシュトウ語を暗号化および復号化する方法
- 12. のC#、Dapperの、POCOおよび暗号化/復号化は
- 13. 暗号化および復号化パスワードのWebSphereのWebSphereで
- 14. SWIFTの暗号化と復号化
- 15. Java Classオブジェクト暗号化/復号化およびオブジェクトデータベース
- 16. テキスト暗号化/復号化方法Java
- 17. 暗号化を使用してRC6で暗号化と復号化を行う方法
- 18. MysqliDBを使用してパスワードを暗号化/復号化する方法
- 19. Crypto ++で生RSAアルゴリズムを使用してメッセージを暗号化および復号化しますか?
- 20. アンドロイドで.Gzipファイルを作成し、そのファイルを暗号化および復号化する方法は?
- 21. iOSでファイルを暗号化/復号化する方法は?
- 22. Twofishによる暗号化/復号化
- 23. 暗号化/復号化:復号化方法でHMACタグが一致しない
- 24. Android - 指紋認証を使用してデータを暗号化および復号化する
- 25. RSAを使用してjavaの大きな文字列を暗号化および復号化する
- 26. pailler暗号システムは、負の大きな整数を暗号化および復号化できますか?
- 27. 復号化暗号文キー、プレーンテキスト、およびアルゴリズム
- 28. C#AESまたはRijndaelを使用してxlsx、docxファイルを暗号化および復号化
- 29. 復号化、暗号化
- 30. 暗号化/復号化soll
:https://discuss.zetetic.net/t/how-to-encrypt -a-平文-sqliteのデータベースに使用-sqlcipher-と-回避-ファイル暗号化され、または-ではなく、データベース・エラー/ 868 IはFMDBを知らないので、私はありませんよこの操作のAPIレベルのガイダンスを提供することができます。 – Palpatim
FMDBフレームワークをどのように追加したのですか?私は助けるかもしれないと思う。 –