相关疑难解决方法(0)

触摸三星手机上的指纹后出错:android.security.KeyStoreException:未经过身份验证的密钥用户

我的应用程序使用Android 6.0指纹API来保护Android KeyStore中的AES密钥.只有当用户通过指纹传感器进行身份验证时,才能使用存储的密钥,因为KeyGenParameterSpec已初始化setUserAuthenticationRequired(true).

当用户触摸传感器时,我从回调中获得初始化的密码,并将onAuthenticationSucceeded(Cipher)其用于解密.

除了搭载Android 6的三星手机外,这种方法效果很好.当我尝试使用返回的密码时,三星手机有时会抛出android.security.KeyStoreException: Key user not authenticated.因此,即使onAuthenticationSucceeded(Cipher)Android KeyStore 返回密码认为用户未被指纹传感器验证.

当应用程序长时间不使用时,似乎发生了崩溃.当应用程序崩溃时,通常都能正常工作.

因为这个错误是随机发生的,而且只发生在三星手机上...这似乎是由Android 6.0 KeyStore和FingerPrint API的三星实现中的一些内部计时问题引起的.

编辑:此问题也在OnePlus和Acer手机中体验过.

encryption android fingerprint android-keystore android-6.0-marshmallow

13
推荐指数
3
解决办法
9100
查看次数

使用面部解锁的BiometricPrompt在三星S9上崩溃

BiometricPrompt在应用程序中使用了Android P(API 28)中的新API。(我实际上是在基于此项目的包装器中使用它,以便它也可以在较旧的设备上运行,但这与问题无关。)这在我测试过的所有设备上都运行良好,除了三星S9和脸部解锁。

即使BiometricPrompt当前的普通Android版本仅实现指纹认证,三星似乎也对其进行了扩展以支持Face Unlock。当我在我的应用中触发生物特征认证时,“底页”会弹出一个脸部图标(而不是所有其他设备上显示的指纹图标),并且在屏幕顶部会出现一些文字,显示“未检测到脸部”。(请注意,此处显示的图标是操作系统提供的,而不是我提供的,因此显然是三星的设计。)

根据文档,BiometricPromptonAuthenticationSucceeded当身份验证成功后,才应关闭自身并调用我的方法。根据logcat,看起来好像已经成功了:

I/IFaceDaemonCallback: BpFaceDaemonCallback onAcquired()
I/SS_3A:  INFO: AEC: TsAec_process_get_aec_info: 650: [Id=132] algo_out g=1.785 e_time=0.025 IsLLS=0x0 Ev=7.422 Bv=2.348 ProEv=7.348 Cvgd=1 lux=261, lls=0x0
E/CHI: [SS_ERR ]: [CHI_FACTORY ]: chxseccamerafactoryusecase.cpp: ExecuteCaptureRequest: 452: pMetaData is NULL
I/FaceHal: face_processFrontImage[614398]
I/FaceServiceWrapper: ss_face_processFrontImage(data_len = 614398, width = 480, height = 640, rotation = 270)
I/NativeFaceService: FaceService::processFrontImage - data_len (614398) width(480) height(640) rotation(270) format(2)
I/NativeFaceService: SEC_FR_SERVICE_AUTHENTICATE
I/sec_fr_engine_qsee: sec_fr_engine_on_authenticate_frame
D/sec_fr_engine_qsee: call QSEECom_send_cmd
I/SS_3A: …
Run Code Online (Sandbox Code Playgroud)

android biometrics samsung-mobile android-biometric-prompt

10
推荐指数
1
解决办法
974
查看次数