指紋などの生体認証に基づく認証を使用するアプリケーションがあるとします。ハッシュを取得してサーバーに送信します。サーバーはハッシュのコピーを持ち、2つを比較します。
次に、サーバーをハッキングしてハッシュを盗みます。これで、指紋テストをバイパスできます。さらに、ハッシュがそれほど素晴らしかったとしましょう(または、今はコンピュータが高速なので、ブルートフォース攻撃を実行できます)。これで指紋がわかったので、それを必要とするすべてのシステムにログインできます。
これがパスワードだった場合、パスワードを変更することをお勧めします。しかし、この場合、被害者は指を変えることができないので、どうするべきですか?
あなたの質問は実際にはバイオメトリクスの主要なセキュリティ問題をリストしていません、そしてそれらが実際に貴重なものを保護するために実際に使用されていない理由except通常の2つの要素の後の追加のメカニズムとして。
1)バイオメトリック署名は一意ではありません
生体認証指紋システムで測定されたあなたの指紋とある程度一致する指紋を持っている人がたくさんいると安心して考えることができます。これが、警察が証拠として指紋に依存できない理由です。同じことが網膜スキャンなどにも当てはまるので、すべての生体認証システムは、偽陽性と偽陰性を想定するように調整されています。
2)簡単に変更できない
攻撃者があなたと同じ指紋を持つ誰かを見つけ、あなたがこれを発見したと想像してください。どのようにして指紋を変更して、アクセスできないようにしますか?手術などは別として、それは実際には不可能です。
3)ジョンが下のコメントで指摘しているように、生体認証は秘密ではありません
したがって、質問の最初の行は実際には正しくありません。生体認証システムは安全ではありません。代わりに、たとえば、ユーザー名とパスワードを使用すると、あなたが本人であるとシステムが確信できるようになります。
実際には、生体認証システムで使用される精度のレベルに依存します。正確すぎると、誤った拒否が発生します。あまりにも緩い、そしてそれは他の人々があなたとしてログインすることを可能にします。
指紋を認証する基本的な方法では、パターン認識を使用します。例:
次に、メインパターンの中心を定義し、分岐、尾根の端、尾根の島などの主要な特徴点の特徴の相対位置を追跡します。
中心が5,5である低精度の10x10グリッドを使用する簡単な例では、次のようなパスワードのようなエンコーディングが生成されます。
LB23E75
(ループパターン、2、3で分岐、7、5で終わる尾根)
複雑なシステムでは、高精度のグリッドを使用し、主要な特徴だけでなく、マイナーな特徴も抽出するため、次のような長いパスワードのようなエンコーディングになります。
LD2988B2336E7251X3011
(ループパターン、29、88のデルタ、23、36の尾根分岐、72、51で終わる尾根、30、11の交差)
次に、これらのデータポイントはソルト処理され、ハッシュされて、データベースに格納されます。
各指紋認証システムは一意であるため、同じ指紋でも異なるエンコードを生成できます。高精度のエンコーディングは、非常に長いパスワードとほとんど同じです。パスワードが長いほど、総当り攻撃が難しくなります。 MD5でハッシュされた12文字のパスワードをブルートフォースで試しましたか?
低精度の認証システムのハッシュを解読し、低品質のフィンガープリントをリバースエンジニアリングしても、高精度の認証システムにアクセスできません。いずれの場合でも、ハッシュを抽出してクラックすることができたとしても、認証に合格する必要があります(つまり、「実際の」指紋を作成する必要があります)。
より簡単な方法は、すべてのデータポイントを収集できるように、人から直接指紋を持ち上げることです。しかし、それが成功するかどうかは、指紋センサーで使用されているテクノロジーと、他の形式の認証を組み合わせているかどうかにもかかっています。
これまで言及しなかったことは、一部のシステム(特に政府)は指紋のスキャン画像を保存し、キャプチャした指紋と重ね合わせてグラフィカルに比較することで認証を行うことです。このようなシステムが危険にさらされると、指紋認証スキーム全体が役に立たなくなる可能性があります。
次に、サーバーをハッキングしてハッシュを盗みます。これで、指紋テストをバイパスできます。
いいえ、あなたの推論は正しくありません。マシンにハッシュを導入すると、サーバー上にあるものとは異なる別のハッシュが生成されるため、単に(フィンガープリントの)ハッシュを持つだけでは認証メカニズムをバイパスできません。
言い換えると:
ハッシュ関数は、任意のサイズのデジタルデータを固定サイズのデジタルデータにマッピングするために使用できる任意の関数です。入力データにわずかな違いがあっても、出力データに非常に大きな違いが生じます。
あなたの手が触れたすべてのスペースに指紋が残るので、パスワードのように考えるかもしれないので、それは秘密ではありません。
リモートアクセスの場合、オンサイトアクセスとは異なり、認証に生体認証のみを使用することはできません。彼はサービスまたはデバイスを使用しています。
生体認証システムのセキュリティは、入力デバイスの物理的なセキュリティに依存します。攻撃者が入力デバイスを物理的に制御している場合、盗んだハッシュを直接入力することでバイパスできます。デバイスが監視されていない場合、攻撃者は偽の指/目/何でも使用して、盗まれた生体認証データを入力できます。