これを入力するように求める Web サイト、特に銀行サイトを見たことがあります (たとえば)。電話で私の身元を証明するために、これを要求されることがあります。
- パスワードの 2 文字目
- パスワードの 5 文字目
- パスワードの 6 文字目
これを行うには、ハッシュ アルゴリズムは機能しませんね。銀行と同じくらい安全であるべき何かが、解読不可能なパスワードを保存する方法を持っているでしょうか?
これを入力するように求める Web サイト、特に銀行サイトを見たことがあります (たとえば)。電話で私の身元を証明するために、これを要求されることがあります。
これを行うには、ハッシュ アルゴリズムは機能しませんね。銀行と同じくらい安全であるべき何かが、解読不可能なパスワードを保存する方法を持っているでしょうか?
はい、これはプレーン テキスト バージョンのパスワードを保持しなくても機能します。簡単に言えば、最初にパスワードを設定すると、銀行は要求するさまざまな組み合わせをハッシュし、それらのハッシュを保存します。これは、固定長のパスワード (つまり PIN 番号) を使用しているか可変長のパスワードを使用しているかに関係なく、非常に簡単に実装できます。これらのハッシュは、ユーザーに関連するテーブルの事前設定された一連の列に格納するか、単純な 3 列テーブル (ID (主キー)、UserId、Hash) として格納でき、 n文字の組み合わせごとに 1 つの行があります。あなたのパスワード。
ただし、パスワード全体を要求することに対するこの方法の有効性については疑問があります...おそらく誰かがそれについてコメントしていますか?
私は彼らが復号化のためのある種の秘密鍵システムを持っていると思います(おそらく、セキュリティを向上させるために、アカウントごとに秘密鍵さえも)...
(一部の) 銀行 (または他の大企業) が実際に平文のパスワード、または ROT13 化されたパスワード、あるいは二重 ROT13 化されたパスワードを実際に保管していたとしても、それほど驚くことではありません。
単一の文字の HASH を簡単に保持できるのではないでしょうか?
実際には一方向ハッシュを使用する必要はありません。キーが安全であることが確実であれば、双方向の暗号を簡単に使用できます。この場合、ネットからアクセスできないシステムに暗号を簡単に保持できます。
オープン フォーラムで議論するのはおそらく良いことではありませんが、選択した文字をメモリに挿入し、暗号化を解除し、記憶に残るフレーズや単語を適切な場所にコピーし、暗号化し、バイナリ比較を実行するのを防ぐにはどうすればよいでしょうか。結果に?