1

FingerprintManagerCompat を利用して、既存の Android アプリケーションに指紋認証を実装しています。ここにあるチュートリアルをガイダンスとして使用しました。

(android.support.v4.content.ContextCompat)

FingerprintManagerCompat はモバイル デバイスに保存された指紋を使用するため、デバイス上の任意の指紋を使用してアプリケーションにログインできます。

デバイスのどの指紋がロック解除に使用されたかを確認することはできますか? もしそうなら、デバイスで利用可能なすべての保存された指紋を取得する方法はありますか?

これが可能かどうかについての情報を探しましたが、何も見つからないようです。Samsung Pass SDK にはどの指紋が使用されているかを確認する機能があることがわかりましたが、製品所有者は、侵入テスト チームがあまり安全ではないことを発見したため、Samsung の Pass SDK を使用することを望んでいません。

4

1 に答える 1

2

デバイスで使用できるすべての保存済み指紋を取得する方法はありますか?

いいえ。

デバイスのどの指紋がロック解除に使用されたかを確認することはできますか?

いいえ。
ただし、アプリ内での認証に使用できる指紋にはいくつかの制限があります。指紋認証の結果、何らかの暗号化操作 (デジタル署名の作成など) を実行するための暗号化キーが使用可能になります。したがって、アプリにユーザーを追加するときは、通常、そのユーザーに関連付ける暗号化キーを作成します。
その後、ユーザーが認証を必要とする何らかのアクションを実行したい場合は、指紋認証を実行します。これにより、キーにアクセスできます。これにより、検証に必要なことは何でも行うことができます。ユーザーがアクションを実行できるようにする必要があります。

新しい指紋が登録されると、指紋認証を必要とする既存の暗号化キーは永久に無効になります。これにより、ユーザーがアプリに追加される前に
複数の指紋が登録されているというシナリオが残ります。現在の API を使用してこれについて何かを行う方法を知りません。そのため、指紋を有効にする UI フローに何らかのステップを追加して、デバイスに自分だけが指紋を登録したことを確認するようにユーザーに求めることが最善の方法かもしれません (たとえば、チェックボックスをオンにするか、ボタンをクリックすることによって)。

于 2016-11-04T07:18:18.500 に答える