バンキングアプリの開発と顧客向けの開発に取り組んでいます。 AppleのiOSにTouchIDを実装し、Androidに指紋チェックを実装する必要があります。
まず、このテクノロジーに関連して考えられるセキュリティリスクと考慮事項は何ですか?次に、アプリを安全に保護する/テクノロジーを安全に使用するにはどうすればよいですか?
問題は、フィンガープリントのハッシュを保存できないことです。フィンガープリントには、完全に異なるハッシュを与えるわずかなバリエーションが含まれる場合があるためです。また、指紋が危険にさらされた場合(触れたオブジェクトに触れるか、直接サーバーから取得した場合)、指紋を変更することはほとんどできません。10本までの指を使用できます。
しかし、指紋は2FA認証に近づくため、秘密鍵のロックを解除する正しい方法になる可能性があります。つまり、所有しているもの(秘密鍵)と、所有しているもの(指紋)です。そして、妥協した場合、いつでも鍵を取り消すことができます。つまり、認証に指紋を安全に使用するには、指紋をX509証明書と組み合わせる必要があります。
リスクは、ソフトウェアの考慮事項に加えて、携帯電話/ラップトップ上にある指紋リーダーのタイプに大きく依存します。
http://www.androidauthority.com/how-fingerprint-scanners-work-670934/
その記事によると、最も基本的な指紋スキャナーは指紋の画像だけでだまされる可能性があり、最も高度なものは指紋を高精度で3D印刷するようなものを必要とします。
デバイスにどのようなセキュリティを適用する場合でも、顧客が使用するスキャナーの種類は、その種類の認証が安全であるかどうかに大きく影響することに注意してください。
TouchIDの場合、指紋は電話を離れません(AppleがtouchIDを導入したときに述べたように)。
APIはLocalAuthenticationと呼ばれ、比較的簡単です: https://developer.Apple.com/documentation/localauthentication
このチュートリアルもよく説明されています: http://www.appcoda.com/touch-id-api-ios8/
他の人が述べたように、問題は指紋を変更することができず、検証も正確ではないという事実にあります。また、指紋を変更できないという事実は、プライバシーの問題になる可能性があります。
他の回答への追加:クライアントを信頼しないでください。指紋認証がデバイスで行われる場合、誰でも常に偽の指紋リーダーをエミュレートするルート化されたデバイスまたはカスタムデバイスを使用できることに注意してください。すべてに一致します。