jamie-mh / AuthenticatorPro

📱 Two-Factor Authentication (2FA) client for Android + Wear OS
https://authenticatorpro.jmh.me
GNU General Public License v3.0
2.68k stars 193 forks source link

Biometric unlock broken #1150

Open technodrome opened 5 days ago

technodrome commented 5 days ago

Describe the bug Biometric unlock on 1.25.1 does not work. On app startup, I always have to log in using password. When I head to settings and try to enable BU there, modal with fingerprint scan pops up and I can scan my finger. Then the pill button briefly shows BU enabled but then immediately switches back to disabled BU state.

To Reproduce Steps to reproduce the behavior:

  1. Open app, enter password (cannot use BU)
  2. Click on Settings, try to enable BU, scan, shows BU enabled for a moment, then switches automatically back to BU disabled

Error Failed to store cipher appears in log:

1718214892.080 10250 12351 12351 E uthenticatorpr: Invalid ID 0x00000000.
1718214893.317 10250 12351 12351 E AUTHPRO : Failed to store cipher
1718214893.317 10250 12351 12351 E AUTHPRO : System.ArgumentNullException: ArgumentNull_Generic Arg_ParamName_Name, s
1718214893.317 10250 12351 12351 E AUTHPRO :    at System.Text.Encoding.GetBytes(String )
1718214893.317 10250 12351 12351 E AUTHPRO :    at System.Text.UTF8Encoding.UTF8EncodingSealed.GetBytes(String )
1718214893.317 10250 12351 12351 E AUTHPRO :    at AuthenticatorPro.Droid.Storage.BiometricStorage.Store(String password, Cipher cipher)
1718214893.317 10250 12351 12351 E AUTHPRO :    at AuthenticatorPro.Droid.Activity.SettingsActivity.<>c__DisplayClass21_0.<EnableBiometrics>b__0(Object _, AuthenticationResult result)

Expected behavior Working BU.

App Version 1.25.1, Android 11, OnePlus 7Pro

Additional context Full log attached. 12_06-19-54-39_102.log

jamie-mh commented 5 days ago

Hi,

Thanks for the detailed report. Can you try clearing and setting the app password before enabling biometric unlock?

Cheers