問題タブ [sqlcipher]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
474 参照

ios - RestKit で使用する場合に SQLite (シード済み/その他) データベースを暗号化する方法

RestKit を使用して、データベースのシード処理とローカル永続化を実行しています。関連するコア データとオブジェクト マッピングは期待どおりに機能しています。ただし、今すぐローカル データベースを暗号化する必要があります。次のオプションは、SQLite データベースを保護するために一般的に使用されることを知っています。

  1. Lion Server で何らかの MDM/Profile Manager を使用して、アプリケーション データを保護します (リモート ワイプなど)。
  2. SQLCipher を使用してデータベースを暗号化する

ただし、SQLCipher は RestKit では機能しません。このような状況に陥った人はいますか?ローカル SQLite を暗号化するために他に何かありますか? 引き続きRestKitを使いたいと思います。

0 投票する
2 に答える
3003 参照

objective-c - SQLCipher を使用してデータベースを暗号化する方法がわからない

このリンクで説明されているように、SQLCipher をプロジェクトに含めました: http://sqlcipher.net/ios-tutorial/

しかし、上記のリンクから説明を読んだデータベースを暗号化する方法がわかりませんが、取得できません。
実際に私がやっていることは、アプリケーションが初めて開いている場合、データベースを (つまり、暗号化なしで) ドキュメント ディレクトリにコピーすることです。もう 1 つ、バンドルからドキュメント ディレクトリにコピーするときに、データベースが空白になります。
データベースを開いた後に sqlite3_key 関数を使用しようとしましたが、何も暗号化されていません。しかし、バンドルからドキュメントディレクトリにコピーするときにデータベースを暗号化する方法のようなものは見つかりませんでした。FMDBを利用する予定ですので、それに合わせて回答いただけると助かります。
その方法を教えてください。または、チュートリアルがある場合は方向を示してください。また、それを行うための標準的なアプローチを提案してください。

0 投票する
1 に答える
360 参照

android - Android OS Ice Cream Sandwich でデータベース パスワードを保護する

データベースのパスワードを保護するために Sql 暗号を使用していますが、Ice Cream Sandwich では機能しません。Android 4.0.3 で Sql 暗号を使用できますか。そうでない場合は、それを行う他の方法はありません。

助けてください。

NB方法はオープンソースでなければなりません。

0 投票する
2 に答える
1237 参照

java - Android での SQLCipher。作成は正常に機能しますが、選択 + 挿入しないでください

こんにちは。

次のコードを使用して、Android アプリケーションで暗号化されたデータベース ファイルを作成しています。

これは正常に機能し、ファイルが作成されますが、この暗号化されたファイルにアクセスしようとすると、次のような複数のエラーが発生します。

そのようなテーブル TABLE_NAME はなく、ファイルは暗号化されているか、データベースではありません

関数が呼び出されているため、同じコードを使用してファイルを編集用に開くだけですopenOrCreateDatabase()。ファイルを開くプロセスは単に作成の逆であると思いますが、元のパスワードを渡しますか?

正しいインポートを使用していることに注意してください。

メソッドで初期化SQLiteDatabase.loadLibs(this);onCreate()ます。

誰かが何か考えがあれば、私が間違っているところを指摘してもらえますか。

ありがとうございました!

0 投票する
1 に答える
4355 参照

android - Androidでsqlcipherを使用した後、「sqlite3_open_v2( "mydatabase.db"、&handle、6、NULL)が失敗しました」

Android2.3.3でsqlcipherを使用しているとき。エラーが発生します。

これが私のDB.javaクラスです

DB.javaのオブジェクトを作成し、このように利用します

この行_db.insertValuesInTable();を実行するとすぐにこのエラーが発生します

すべての&ファイルを適切に含め.soまし.jar.zip。それでもこのエラーが発生します。これを解決するにはどうすればよいですか?

0 投票する
0 に答える
799 参照

ios - iOS アプリのオフラインとセキュリティ

オフライン モードでデータをキャッシュしてユーザーに提供するアプリのオフライン機能を設計しています。アプリは、オフライン モードでのログイン機能もサポートする必要があります。

Sqlicipher は、ファイル保護を備えたコア データ セキュリティよりも優れたオプションであると考えています。iOS デバイスでデータ保護が適用されている場合にのみ、データのセキュリティが確保されるからです。

そして今回の件でiOSのハードウェア暗号化も危うい。

Sqlicipher の設計の一環として、以下のスタレジを計画しました。

  1. 機密データの格納には SqlCipher を使用します。
  2. ユーザーの資格情報を SqlCipher DB アクセスのキーとして作成します。
  3. ユーザーの認証情報をキーチェーン アクセスに保存します。

質問:

  1. 資格情報をキーチェーン アクセスに保存することは、より安全なオプションであり、絶対確実です。そうでない場合、代替手段は何ですか?
  2. データ保護を考慮したコア データのセキュリティに関する私の理解は正しいですか?
0 投票する
1 に答える
913 参照

c++ - SQLite は SQLCipher 拡張機能でメモリをリークしますか?

暗号化されたSQLiteデータベースを格納するためにSQLCipherを使用しています。ただし、データベースの暗号化に使用すると、メモリ リークが発生し始めます。次のサンプルを確認してください。sqlite3_key

このサンプルでは、​​メモリ リークが発生します。への呼び出しを削除するとsqlite3_key、メモリ リークがなくなります。

考えられる原因をいくつか絞り込みました。

  • このサンプルではインメモリ データベースを使用していますが (したがって":memory:")、ファイル ベースのデータベースを使用しても同じ結果が得られます。
  • sqlite3_*呼び出しからのすべてのリターン コードは、SQLITE_OKエラーがないことを意味します。
  • 10forのバッファ長は"passphrase"問題ではありません。

ただし、作成する接続の数や使用する異なる暗号化キーの数に関係なく、メモリ リークは常に約 8 キロバイトです。これにより、これは実際にはメモリ リークではなく、手動で解放されない SQLite/SQLCipher の一定のグローバル メモリであると思われます。

誰もこれを経験したことがありますか?漏れをなくす方法はありますか?これが正式なメモリ リークではない場合でも、これを使用して実際のメモリ リークを検出することは困難です。

Windows 用の SQLCipher ライブラリを使用しています。

0 投票する
1 に答える
993 参照

ios - sqlcipherを使用してiOSで全文検索を使用することは可能ですか?

私はたくさんグーグルをしていましたが、sqlcipherを使用してiOSで全文検索を使用できるかどうかわかりません。

しかし、それに関するドキュメントは見つかりませんでした。

0 投票する
3 に答える
281 参照

android - アプリを強制的に停止した後、生のキーデータを使用してデータベースにアクセスできません

キーの導出を回避するために行キーデータを使用しようとしています(SQLCipherのドキュメントによる):

アプリケーションを強制的に停止すると、データにアクセスできなくなります。

この動作は、SQLCipherを使用しないと発生しません。アプリケーションを強制的に停止した後でも、データベースは読み取り可能です。

私は何か間違ったことをしていますか?

前もって感謝します、

0 投票する
2 に答える
1324 参照

java - SQLCipher Android でキーを変更する

AndroidでSQLCipherデータベースのキーをプログラムでどのように変更しますか?