MySQLデータベースにオンラインパスワードマネージャのパスワードを保存するとどうなりますか?大きなものではなく、ほんの数人のユーザー。元に戻すことができないので、私は本当にそれらをハッシュできません。 KeePassのようなプログラムはどのようにこれを達成しますか?Password Managerのパスワードはどのように保存しますか?
ありがとうございます!
MySQLデータベースにオンラインパスワードマネージャのパスワードを保存するとどうなりますか?大きなものではなく、ほんの数人のユーザー。元に戻すことができないので、私は本当にそれらをハッシュできません。 KeePassのようなプログラムはどのようにこれを達成しますか?Password Managerのパスワードはどのように保存しますか?
ありがとうございます!
(答えからのアップグレード)
通常のユーザーのパスワードは、あなた、パスワードマネージャに送信する前に、マスターパスワードを使用して暗号化されています。そのような暗号化されたパスワードを保存し、その要求に応じてユーザーに返します。マスターパスワードを使用して自分のマシンで復号化します。マスターパスワードや暗号化されていないパスワードは扱いませんので、格納している基本パスワードには完全にアクセスできません。
アプリケーションがWebベースの場合は、JavaScriptの暗号化操作を実行できますが(XSSとブラウザのセキュリティ上の脆弱性には非常に注意する必要があります)、Stanford Javascript Crypto Libraryを開始するのが適切です。
このすばらしい&すばらしい答えをありがとう! –
パスワードをハッシュすることは、実際には不可逆です。しかし、あなたはその理由のためにパスワードをハッシュします:
:
setPassword(user, password); //puts the (hashed) password into a database table associated with user
authenticate(user, password); //for given user, checks to see if password is valid
この質問は非常に広く、おそらくdownvotedれます、と述べました。あなたは特定の質問をしたり、これまでに試したことを言ったりしていません。
これはパスワードマネージャアプリケーションにはあまり適用されません。 – eggyal
私は本当にパスワードマネージャアプリケーションが必要なので、どのパスワードが保存されているかを知る必要があります。私はそれが可逆的である必要があります。 –
ああ、あなたがしようとしていたことを誤解しました。そのための暗号スキームははるかに激しく、私はそれらをわかりません。 –
通常、ユーザーのパスワードは、送信前にマスターパスワードを使用して暗号化されています。暗号化されたパスワードを保存し、要求に応じてユーザーに返します。マスターパスワードを使用して、自分のマシンで復号化します。マスターパスワードや暗号化されていないパスワードは扱いませんので、格納している基本パスワードには完全にアクセスできません。 – eggyal
@eggyal PHPでこれをどうすればできますか?私はマスターパスワードが必要だと理解していますが、このマスターパスワードでハッシュ文字列をどのように逆にしますか? –
私が記述したパターンに従えば、PHP(サーバー側)で暗号化を実行しません。クライアント側で行う必要があります。アプリケーションがWebベースの場合は、Javascriptで実行できます(ただし、XSSとブラウザのセキュリティ上の脆弱性に注意する必要があります)。 - [Stanford Javascript Crypto Library](http://crypto.stanford.edu/sjcl/)始めるには良い場所です。 – eggyal