web-dev-qa-db-ja.com

暗号化情報をみんなに伝えても大丈夫ですか?

私はオンラインバンキングシステムにアカウントを持っており、次のようなFAQを持っています:

<Online Banking System Name>はどの程度安全ですか?

表示する各ページと<オンラインバンキングシステム名>で送信された情報は、クライアントのコンピューターと<オンラインバンキングシステム名>サーバー間で128ビットSSLを使用して暗号化されます。 ..

機密データは暗号化されています

クライアントの<Online Banking System Name>パスワードなどの機密データは、任意の長さの入力を固定長のバイナリ値に変換する一方向の160ビットハッシュ暗号アルゴリズムを使用して暗号化されます。変換は一方向です。つまり、ハッシュ値が与えられた場合、この値を生成するドキュメントを再作成することは統計的に不可能です...

これにより、オンラインバンキングシステムは悪意のある攻撃を受けやすくなりますか?

19

暗号化情報をみんなに伝えても大丈夫ですか?

それは単に申し分ないだけでなく、実際には現代の暗号の設計上の特徴でもあります。暗号化の全体的な概念は、使用するアルゴリズムを自由に公開できることですが、キーと呼ばれる特定の情報を秘密にしておく必要があります。

パスワードは一方向160ビットハッシュ暗号アルゴリズムを使用して暗号化されます

ここで暗号化されているのは間違った単語です-これは暗号化ではありません。むしろ、それはハッシュです。暗号化は、データの回復がゲームの目的である可逆プロセスです。ただし、ハッシュ関数は「一方向」になるように設計されています。つまり、特定の入力を取得してハッシュを生成するのは簡単ですが、逆方向に進むのは困難です。

考えてみれば、これは非常に理にかなっています。銀行はパスワードを知っている必要はありません。彼らは、パスワードを入力する人があなたが最初に彼らに言ったのと同じものを入力したことを知る必要があるだけです。そのため、パスワードのハッシュを保存することで、将来のパスワード入力をそのパスワードと比較して、出来上がりを確認できます。パスワードを知っている必要はありませんが、パスワードを確認できます。

技術的には、それらは正しい方向に進んでいます。 160ビットは、SHA1またはRIPEMD160アルゴリズムを推奨します。ただし、単純なハッシュだけで十分であれば、セキュリティを向上させるためにできることは他にもあります。

  • 理想的にはパスワードごとに一意に生成されるソルト値を使用します。
  • PBKDF2などの低速ハッシュ関数を使用します。
26
user2213

彼らが提供している情報は比較的標準的なものです。転送中のデータを保護する場合、128ビットSSLは標準的なメカニズムであり、使用されていることがわかっていても攻撃者に大きなメリットはありません。

機密データの暗号化では、暗号化ではなくハッシュについて説明していることを除いて、パスワードハッシュも標準のプロセスであるため、実行していることをユーザーに伝えることで、実質的に攻撃されやすくなることはありません。

6
Rory McCune

SSLセキュリティの場合:とにかく接続プロトコルの一部として平文で送信されるため、それを伝えることに害はありません。クライアントはサポートする暗号のリストを送信し、サーバーはそれを選択して情報をクライアントに送り返します。これは必然的に発生し、before暗号化が行われる前に行われるため、ネットワークをスパイしている誰からも見えるようになります。 SSL/TLS仕様 (メッセージServerHello、セクション7.4.1.3)を参照してください。

パスワードハッシュの場合:銀行が使用するパスワードハッシュは、一部のマシンでコードとして具体化される情報です。複数のコンピュータにそのコードがあります。それに取り組んだ人々はアルゴリズムも知っています。これにはおそらく、コンサルタント、過去のインターン、サードパーティベンダーのかなり長いリストが含まれます。開発が正しく行われた場合、パスワードハッシュメカニズムの仕様はさまざまなドキュメントに記載されています。その多くは印刷されており、匿名の棚に置かれている可能性があります。したがって、この情報は本当に秘密であると考えることはできません。当然の結果:それを開示しても余計な害はありません。

一般的な場合:第二次世界大戦後の暗号学の分野における大きな進歩は、アルゴリズムキー。これは、アルゴリズムの実装( Enigma machine など)が秘密を保つことが困難であることが観察されたために正確に行われました-必要に応じて記憶することができる短いデータよりもはるかに難しい必要に応じてもう一度入力します。 キーは秘密を集中させます。 アルゴリズムは公開されていると見なされ、公開してもセキュリティが低下しないように設計されています。 (大きな)おまけとして、アルゴリズムの公開は外部レビューを可能にし、多くの専門家にしばらくの間それを破らせようとするよりもセキュリティを検証するためのより良い方法はありません(実際、他の方法はまったくありません。それに降りてくる)。これが、現在、優れた暗号とハッシュ関数を備えている方法です。1970年代初頭の人々は、暗号を公的研究分野にすることを決定したためです。

4
Thomas Pornin

これにより、オンラインバンキングシステムは悪意のある攻撃を受けやすくなりますか?

いいえ、どのような方法でも使用できません機密データは開示されません。使用された方法と技術の説明のみ

2
Lazy Badger

彼らが現実の世界で悪意のある攻撃を受けやすくなるとは思わない-多分それは彼らを攻撃するless彼らが完全にではないいくつかの詳細を公開したという事実から、役に立たないメカニズム。ランダム/非標的攻撃のために、ぶら下がっている果物の外にそれらを配置します。

しかし、彼らが提供した情報は、断固とした攻撃者にいくつかの潜在的に有用な手がかりを与えるでしょう:

  • 「160ビット」は、使用している可能性のあるハッシュ関数を示します。SHA1またはRIPEMD160が将来、攻撃者に役立つ可能性のあるアルゴリズム上の重大な弱点を発見した場合(そして銀行がそれらをまだ使用している場合)
  • 攻撃者がオフラインでのクラッキングのためにパスワードdbの盗難を試みることを奨励する可能性がある、ハッシュのソルティングまたは複数の反復のいずれについても言及されていません(どちらも標準的な方法であるはずです)。レインボーテーブルを使用しています。
  • 安全なハッシュは「パスワード」などの機密情報に使用されると説明されていますが、ハッシュは実際にはのみ機密情報ではなくパスワード/認証システムにのみ適用されます。一般的に。他のメカニズム(通常の暗号化など)については触れられていないため、おそらく保持している他の機密データには特定の保護がありません。

しかし、engadget/Sony/DHS/randomフォーラムから一連のパスワードを取得し、パスワードとユーザー名の再利用を期待することは、おそらくこの銀行のオンラインプレゼンスを直接攻撃するよりもはるかに実際的な攻撃です。

1
Misha