限制Android使用一个指纹进行身份验证

限制Android使用一个指纹进行身份验证,android,android-fingerprint-api,Android,Android Fingerprint Api,我正在使用FingerprintManagerCompat在现有的Android应用程序中实现指纹身份验证。我使用了一个教程作为指导,可以找到 (android.support.v4.content.ContextCompat) 由于指纹管理器Compat使用移动设备上保存的指纹,因此可以使用设备上的任何指纹登录应用程序 是否可以查看设备上的哪个指纹用于解锁,如果可以,是否有方法获取设备上可用的所有保存指纹 我四处寻找关于这是否可能的信息,但似乎什么也找不到。我发现Samsung Pass SD

我正在使用FingerprintManagerCompat在现有的Android应用程序中实现指纹身份验证。我使用了一个教程作为指导,可以找到

(android.support.v4.content.ContextCompat)

由于指纹管理器Compat使用移动设备上保存的指纹,因此可以使用设备上的任何指纹登录应用程序

是否可以查看设备上的哪个指纹用于解锁,如果可以,是否有方法获取设备上可用的所有保存指纹

我四处寻找关于这是否可能的信息,但似乎什么也找不到。我发现Samsung Pass SDK确实具有查看所使用指纹的功能,但产品所有者不希望我使用Samsung的Pass SDK,因为他的渗透测试团队发现它不太安全

是否有方法获取设备上可用的所有已保存指纹

没有

是否可以看到设备上的哪个指纹用于解锁

否。
但是,在应用程序中使用指纹进行身份验证存在一些限制。指纹身份验证的结果是,您可以使用加密密钥执行某些加密操作(例如,创建数字签名)。因此,当您在应用程序中添加一个用户时,您通常会创建一个与该用户关联的加密密钥。
然后,当用户想要执行某些需要对其进行身份验证的操作时,您会执行指纹身份验证,这使您能够访问该密钥,哪个用法可以用于执行您需要执行的任何操作,以验证是否允许用户执行该操作

注册新指纹时,任何需要指纹身份验证的现有加密密钥都将永久失效。
这就给我们留下了这样一个场景:在将用户添加到您的应用程序之前,存在多个注册指纹。我不知道有什么方法可以用当前的API来解决这个问题。因此,您最好在指纹启用UI流中添加一些步骤,要求用户验证是否只有他们在设备上注册了指纹(例如,通过选中复选框或单击按钮)