我正在利用FingerprintManagerCompat在一个现有的安卓应用程序中实现指纹认证。我使用了一个教程作为指南,可以找到这里。
(android.support.v4.content.ContextCompat)
由于FingerprintManagerCompat使用移动设备上保存的指纹,设备上的任何指纹都可以用于登录应用程序。
是否有可能看到设备上的哪个指纹被用来解锁,如果是的话,是否有一种方法可以获取设备上所有保存的指纹?
我四处寻找这是否可能的信息,我似乎找不到任何东西。我发现三星Pass确实具有查看使用什么指纹的功能,但产品所有者不希望me使用三星的Pass,因为他的渗透测试小组发现它并不十分安全。
发布于 2016-11-04 07:18:18
是否有一种方法可以获取设备上所有保存的指纹?
不是的。
能不能看一下那个装置上的指纹是用来解锁的?
不是的。
但是,指纹可以在应用程序中进行身份验证,但也有一些限制。指纹认证的结果是使密码密钥可用于执行某些加密操作(例如创建数字签名)。因此,当您在应用程序中添加用户时,通常会创建一个与该用户关联的加密密钥。
然后,当用户想要执行一些需要他/她进行身份验证的操作时,您可以进行指纹身份验证,它允许您访问密钥,该密钥可以用来执行您需要做的任何事情,以验证用户是否应该被允许执行该操作。
注册新指纹时所发生的情况是,任何需要指纹验证的现有密码密钥都将永久失效。
这就给我们留下了这样的场景:在你的应用程序中添加用户之前,会有多个注册指纹。我不知道如何用当前的API来解决这个问题。因此,您可以做的最好是在指纹中添加一些步骤--启用UI流,其中要求用户验证只有他们在设备上注册了指纹(例如,检查复选框或单击按钮)。
https://stackoverflow.com/questions/40375899
复制相似问题