我已经在Internet上搜索了有关如何使用我们自己的应用程序添加新指纹的信息,但是我找不到任何东西,我也对此进行了搜索,发现了一些相同的问题,但没有人对此回答正确,所以我决定再问这个问题。
我已经通过指纹成功完成了身份验证 但知道我想向我的应用添加多个指纹 我正在制作一个应用程序,新用户首先在这里注册,然后在其中输入名称,地址,电子邮件ID,年龄和指纹。所有数据存储在MYSQLI中 之后,当新用户成功注册后,当同一个人尝试登录时,他应该做的第一件事是在扫描成功后显示他在注册过程中提到的所有详细信息时扫描手指 我的意思是他的名字,地址,EmailID,年龄
所以,这就是我想要的与生物特征指纹读取器类似的东西,但是我想使用移动指纹扫描仪来做到这一点,有人可以帮助我吗? 我已经做到了 Fingerprint但没有成功帮帮我,谢谢
答案 0 :(得分:0)
使用移动设备内置的指纹读取器/框架在应用程序的指导下添加指纹不可能:
来自Android Source Site:Security:Authentication:Enrollment:
在恢复出厂设置后首次启动设备时,所有身份验证器都准备接收用户的凭据注册。 用户必须首先使用Gatekeeper注册PIN /图案/密码。此初始注册将创建随机生成的64位用户SID(用户安全标识符),该ID用作用户的标识符并用作用户的加密材料的绑定令牌。该用户SID密码绑定到用户密码;对Gatekeeper的成功身份验证会导致AuthToken,其中包含该密码的用户SID。
关键部分是:
用户必须首先使用Gatekeeper注册PIN /图案/密码。
这意味着所有者/用户必须注册一个最终将与指纹相关联的PIN。
想要更改凭证的用户必须提供现有凭证。如果成功验证了现有凭据,则将与现有凭据关联的用户SID转移到新凭据,使用户可以在更改凭据后继续访问密钥。如果用户不提供现有凭证,则使用完全随机的用户SID注册新凭证。用户可以访问设备,但是在旧用户SID下创建的密钥将永久丢失。这被称为不受信任的注册。
在继续阅读时,您阅读:
如果用户不提供现有证书,则使用完全随机的用户SID注册新证书。用户可以访问设备,但是在旧用户SID下创建的密钥将永久丢失。这被称为不受信任的注册。
也许您希望您的应用程序可以调用不受信任的注册
但是
在通常情况下,Android框架不允许不信任的注册,因此大多数用户永远不会看到此功能。。但是,设备管理员或攻击者会强制重置密码,可能会导致这种情况发生。
因此,仅允许应用通过FingerprintManager或BiometricPrompt
知道用户是否已认证了预先注册的指纹。我该怎么办
您必须研究外部指纹读取器才能实现所需的功能。 自定义ROM可能是另一种研究途径,但由于希望每个指纹也都与PIN进行密码关联,因此可能需要进行许多更改(请参见上文第一引号)。