私のAndroidデバイスでは、ホームボタンに組み込まれている指紋スキャナーでスマートフォンのロックを解除するために、最大3つの指紋を保存できます。iPhoneでは、間違っていない場合は5つの指紋です。しかし、ほとんどの人は10本の指を持っており、指紋のハッシュを3回ではなく10回チェックすることによるパフォーマンスの違いが重要であるとは思えません。
ユーザーが3つまたは5つの指紋のみを記録するようにスマートフォンを制限するセキュリティ上の理由はありますか?
私の推測では、ユーザーがより多くの指紋を記録できるようにすると、誤検知の可能性が高まるか、または私が考えていなかったより多くの指紋を記録できるようにすることにより、サイドチャネルの脆弱性が存在する可能性があります。
いいえ、保存される指紋の数を制限する特定のセキュリティ上の理由はありません。
ただし、これらの指紋モジュールは通常、スマートカードのようなHSMであり、指紋を保存すると、指紋モジュールが保存できる秘密の数とサイズが制限されます。
指紋テンプレートを保存することは、パスワードハッシュをパスワードデータベースに保存することとは異なるため、指紋テンプレートも非常に大きくなる可能性があることに注意してください。指紋が読み取られるたびに、以前の読み取りとはまったく異なる結果が得られます。これは、登録したときと同じように、指を置いたり正確にしたりしていないためです。
ここで、指紋リーダーは、入力指紋画像について難しい計算を行う必要がありますandテンプレート画像は、指紋が読み取っただけで十分である場合に結論を出すために必要です類似認証に成功するために、現在登録されている指紋に。この類似性は認証機能への入力として表すことができます。ここでは、認証の「感度」を選択できます(感度が高すぎる=指を拒否する頻度が高すぎる、弱すぎる=許可されていないユーザーがログインできる可能性があります)あなたとして)
これは、指紋リーダーが登録のために指を複数回置くように要求する理由でもあります。リーダーはこれらを使用して、テンプレート内に保存されている指の最適な「感度」値を計算するためです。
次のように考えてください。カメラを取り出し、家の写真を撮ります。この写真をポートフォリオに入れ、「これは私の家です」として保存します。数日後、あなたは家を見て、それがあなたの家かどうか知りたいです。あなたは家の写真を撮ります。ご存知かもしれませんが、これらの2つの画像をビット単位で比較したり、SHA256ハッシュを比較したりすることはできません。同じ家の写真であっても、画像の角度、回転、光はわずかに異なるためです。そうした場合、「認証」は常に失敗します。
画像が同じオブジェクトであるかどうかを確認するには、画像に対して複雑な数学的計算を行う必要があります。
つまり、指紋リーダーの「テンプレート」は、指紋リーダーで使用されるアルゴリズムによってはかなり大きくなる可能性があります。
内部キーを使用してテンプレートを暗号化し、テンプレートをAEAD(関連データを使用した認証済み暗号化)としてエクスポートして、標準の保護されていないメモリ(ギガバイトが存在する)に保存できる指紋リーダーがあります。しかし、これがセキュリティに及ぼす影響について考えてみてください。これは、登録済みの指紋画像でこのAEADを「盗む」ことができることを意味します。その後、Craigslistでその電話を販売し、新しい所有者が指紋を登録したときに、盗んだAEADを指で使用するとします。電話のロックを解除します。
これが、電話機が指紋テンプレートを安全なメモリ内に保存する必要がある理由であり、指紋テンプレートの数が制限されている理由です。
iOSデバイス(そしておそらくAndroid onesも同様))は、指紋リーダーと直接通信して独自に指紋を比較する専用のハードウェアセキュリティモジュールを使用します。電話のOSはそれを制御できません-それは認証が成功したかどうかの結果と、オプションで、その認証によって保護されたシークレット(ある場合)を取得します。
デバイスがそれほど強力ではなく、複数の指紋をチェックすると、実際に認識時間が長くなるか、リーダーと一致するアルゴリズムの精度と許容度に応じて(ビットごとに2ビットをスキャンすることはできません)指紋の同一の画像、それは常に少しぼやけているため、ある程度の許容範囲が必要です。また、ハッシュ化することもできません)、実際には、誤検知のリスクが高すぎる可能性があります。
結局、それらのソリューションの開発に関与している人々だけが、そのような制限の背後にある彼らの正確な動機を教えてくれます。どこかのエンジニアが「5フィンガープリントで十分」と考え、HSMのファームウェアに制限をハードコードしたか、または会社が追加のフィンガープリントを保存できるHSMに追加料金を請求している可能性があります。電話。
それはおそらく、誰かが指紋であなたの電話に入る可能性が50,000分の1であり、それが5つの指紋しか許可しない場合、誰かがあなたの指紋を改ざんする機会が少なくなるからだと思います。