4

パスワード管理について質問があります。プログラムがあり、ユーザーがパスワードを入力し、データが暗号化されて保存されているとします。

1つの方法は次のとおりです。ユーザーのパスワードでデータを暗号化します。長所:ユーザーは、パスワードのセキュリティとデータのセキュリティを担当します。短所:ユーザーがパスワードを変更した場合、すべてのデータを復号化して暗号化する必要があります。

それ以外の場合:データはユーザー以外のパスワードで暗号化されます(ランダム)。また、ランダムパスワードの暗号化に使用されるユーザーパスワード。長所:ユーザーがパスワードを変更した場合、すべてを再暗号化する必要はありません。

そして、ユーザーのパスワードを保存することに関しては、私はjasypt.orgに使用しています。大丈夫ですか?それを行う正しい方法は何でしょうか?弱点は暗号化機Jasyptにあると思います。暗号化されたAES-128を使用したデータ。私が知っているのはそれだけなので、Jasyptを使用してください。

4

2 に答える 2

7

通常、データキーはパスワードで暗号化する必要があります。

暗号化するには、最初にパスワードをキーに変換します。そのためには、パスワードベースの鍵導出関数(PBKDF)を使用します。PBKDF2は現在そのための最も標準的なオプションです。

ランダムに生成されたキーを使用してデータを暗号化します。このキーは、パスワードから生成されたキーで暗号化されます。

パスワードを変更するには、最初に元のパスワードを要求してください。次に、データキーを復号化します。次に、新しいパスワードを要求し、データキーを再暗号化できます。暗号化されたデータ自体に触れる必要はありません。

于 2013-02-06T01:38:10.133 に答える
3

基本的にはを使いたいsalted password hashingCrackStationには、このテーマに関する非常に優れた記事があります。

于 2013-02-06T01:35:58.627 に答える