私は C++ で単純なパスワード マネージャーを作成していますが、プログラムを閉じた後、パスワードを最新の状態に保つ方法を知りたいと思っています。
プログラムでパスワードを更新すると、プログラムを終了した後、ソース コードにあるものに戻るだけだと思います。プログラムを閉じた後、変更を永続化する方法はありますか?
パスワードを変更するときにパスワードリストを出力ファイルに何度も書き込む以外に、これを行う別の方法はありますか?
私は C++ で単純なパスワード マネージャーを作成していますが、プログラムを閉じた後、パスワードを最新の状態に保つ方法を知りたいと思っています。
プログラムでパスワードを更新すると、プログラムを終了した後、ソース コードにあるものに戻るだけだと思います。プログラムを閉じた後、変更を永続化する方法はありますか?
パスワードを変更するときにパスワードリストを出力ファイルに何度も書き込む以外に、これを行う別の方法はありますか?
すでに存在し、高度に認定されたものを使用することを強くお勧めします。必要な永続ストレージの種類は、要件に応じて異なります。
現在のコンテキストまたはある種の資格情報に関する情報を単に保存する必要があるアプリケーションの場合、SQLite database
. C/C++ 用の包括的でシンプルな APIが存在します。
SQLite
のような、または原則MySQL
に従うデータベース システムを使用することは、データベース システムが一貫性、トランザクションの原子性、分離性、耐久性をACID
保証するため、はるかに簡単です。これにより、アプリケーション ストレージがはるかに効率的になり、一般的なプログラミング エラーが発生しにくくなり、トランザクション中にエラーが発生した場合に通知されます。
答えは、書いているシステム/プラットフォームによって異なります。基本的に、ある種の永続的なストレージが必要です。それは、ローカル ファイル システムまたはデータベースなどの外部ストレージです。ファイルへの書き込みは迅速で簡単な解決策のように見えますが、セキュリティに気を配る必要があるかもしれません。したがって、いくつかの暗号化ライブラリを使用してください。パスワードのリストが十分に大きいが、それでもローカル ストレージを使用したい場合は、sqlite を検討してください。