我正在构建一个应用程序,我只想允许每个设备使用特定的指纹。指纹是原始的、真实的。有没有什么方法可以实现这个想法,也许可以转换成一个数字,我可以将其存储在数据库中并在需要时进行匹配
关于你的问题有几点。
您可以使用根据设备中当前注册的指纹生成的加密密钥。
您需要将其放入初始化程序中:
val builder =
KeyGenParameterSpec.Builder(keyName, KeyProperties.PURPOSE_ENCRYPT or KeyProperties.PURPOSE_DECRYPT)
.setBlockModes(KeyProperties.BLOCK_MODE_CBC) //
.setEncryptionPaddings(KeyProperties.ENCRYPTION_PADDING_PKCS7) //
.setUserAuthenticationRequired(true) //
.setInvalidatedByBiometricEnrollment(true) //
val keyGenParameterSpec = builder.build()
keyGenerator.init(keyGenParameterSpec)
val key = keyGenerator.generateKey()
该密钥存储在 Android KeyStore 中以供以后使用。
生成的密钥不能通过以下方式使用:
- 使用此功能后添加的新指纹将使您之前所做的任何操作对用户来说毫无用处
- 您无权访问任何指纹数据。 - 您得到的唯一信息是以下内容之一:身份验证是否成功,以及使用密码/mac/签名的选项,该选项只能在用户提供指纹身份验证后使用一次(每次使用时需要进行指纹认证。
所以你将无法存储any有关指纹的数据。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)