Borland Delphi 7 で dBASE データベース ファイルを使用してアプリケーションを作成しています。
注:この質問はファイルセキュリティに関連していると思います。この質問ではdBASEのこと(TXTファイルと見なしてください)を忘れてもかまいません。
データベースには、アプリケーションからのみアクセスする必要があります。次に、暗号化する必要があります。残念ながら、dBASE はパスワード メカニズムをサポートしていないため、自分でファイルを暗号化する必要がありました (また、dBASE を使用する必要があります)。
データベースファイルを保護するためにどのようなアプローチをお勧めしますか?
簡単なものは次のとおりです。
- データベース ファイルを暗号化し、アプリケーションの EXE ファイルの近くに配置します。
DeleteOnClose
アプリケーションが実行されると、(ハードコードされたパスワードを使用して) ファイルを復号化し、その結果をフラグとフラグを持つ一時ファイルにコピーする必要がありますNoSharingPermission
。- 閉じるときに、アプリケーションは一時 dBASE ファイルを暗号化し、古い暗号化ファイルを新しいファイルに置き換える必要があります。
これはかなり安全なアプローチだと思います。しかし、2 つの大きな問題があります。
- 削除取り消しツールを使用すると、ユーザーは削除された一時ファイルを復元してアクセスできます。
- さらに悪いことに、アプリケーションの実行中にシステムが突然再起動すると、
DeleteOnClose
フラグが失敗し、一時ファイルがハードディスクに残り、ユーザーはそれにアクセスできます。
少なくとも 2 番目の部分の解決策はありますか?
他の解決策はありますか?