PhilippC / keepass2android

Password manager app for Android
https://play.google.com/store/apps/details?id=keepass2android.keepass2android
GNU General Public License v3.0
4.7k stars 378 forks source link

Fingerprint unlock with fingerprint reader on screen #974

Open ffrenkelzoo opened 4 years ago

ffrenkelzoo commented 4 years ago

Can't use fingerprint unlock with the new Galaxy Note 10 Plus that has the fingerprint reader on the screen?

PhilippC commented 4 years ago

a log reported by a user: 04.10.2019 23:47:46:791 -- DatabaseSettingsActivity.OnPause 04.10.2019 23:47:46:798 -- Timeout start 04.10.2019 23:47:46:810 -- DatabaseSettingsActivity.OnStop 04.10.2019 23:47:48:101 -- GroupActivity.OnDestroyTrue 04.10.2019 23:47:48:178 -- DatabaseSettingsActivity.OnDestroyTrue 04.10.2019 23:47:48:284 -- OngoingNotificationsService.OnTaskRemoved: android.intent.action.MAIN 04.10.2019 23:47:48:286 -- QuickLocking database 04.10.2019 23:47:48:292 -- Starting/Updating OngoingNotificationsService. Database QuickLocked 04.10.2019 23:47:51:774 -- Received broadcast intent: keepass2android.keepass2android.close_database 04.10.2019 23:47:51:774 -- Locking database 04.10.2019 23:47:51:796 -- OngoingNotificationsService.OnDestroy 04.10.2019 23:47:55:637 -- KeePass.OnCreate 04.10.2019 23:47:55:638 -- KeePass:apptask= 04.10.2019 23:47:55:638 -- Loaded task keepass2android.NullTask 04.10.2019 23:47:55:638 -- KeePass.OnCreate 04.10.2019 23:47:55:643 -- KeePass.OnStart 04.10.2019 23:47:55:643 -- KeePass.OnStart 04.10.2019 23:47:55:675 -- Loaded task keepass2android.NullTask 04.10.2019 23:47:55:697 -- FileSelect.OnCreate 04.10.2019 23:47:55:720 -- FileSelect.OnStart 04.10.2019 23:47:55:743 -- PasswordActivity.OnCreate 04.10.2019 23:47:55:743 -- PasswordActivity:apptask= 04.10.2019 23:47:55:808 -- PasswordActivity.OnStart 04.10.2019 23:47:55:809 -- PasswordActivity.OnResume 04.10.2019 23:47:55:809 -- DB null 04.10.2019 23:47:55:810 -- starting: True, Finishing: False, _performingLoad: False 04.10.2019 23:47:55:811 -- Pre-loading database file starting 04.10.2019 23:47:55:814 -- CFS: OpenWhenNoLocalChanges 04.10.2019 23:47:55:815 -- CFS: hashing cached version 04.10.2019 23:47:55:816 -- PasswordActivity.OnPause 04.10.2019 23:47:55:888 -- PasswordActivity.OnResume 04.10.2019 23:47:55:889 -- DB null 04.10.2019 23:47:55:891 -- starting: False, Finishing: False, _performingLoad: False 04.10.2019 23:47:55:892 -- FP: Create FingerprintDecryption 04.10.2019 23:47:55:893 -- FP: Init for Dec 04.10.2019 23:47:55:906 -- failed to init fingerprint unlock:Java.Lang.RuntimeException: Exception of type 'Java.Lang.RuntimeException' was thrown. at keepass2android.FingerprintDecryption.Init () [0x000d0] in <42483a0e42cb482da6be36caa63cd922>:0 at keepass2android.PasswordActivity.InitFingerprintUnlock () [0x00088] in <42483a0e42cb482da6be36caa63cd922>:0 --- End of managed Java.Lang.RuntimeException stack trace --- java.lang.RuntimeException: Failed to init Cipher at md5f0702f468598c68ce18586502249fb40.PasswordActivity.n_onResume(Native Method) at md5f0702f468598c68ce18586502249fb40.PasswordActivity.onResume(PasswordActivity.java:103) at android.app.Instrumentation.callActivityOnResume(Instrumentation.java:1416) at android.app.Activity.performResume(Activity.java:7630) at android.app.ActivityThread.performResumeActivity(ActivityThread.java:4055) at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:4095) at android.app.servertransaction.ResumeActivityItem.execute(ResumeActivityItem.java:51) at android.app.servertransaction.TransactionExecutor.executeLifecycleState(TransactionExecutor.java:145) at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:70) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1994) at android.os.Handler.dispatchMessage(Handler.java:106) at android.os.Looper.loop(Looper.java:216) at android.app.ActivityThread.main(ActivityThread.java:7263) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:494) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:975) Caused by: java.security.InvalidKeyException: Only SecretKey is supported at com.android.org.conscrypt.OpenSSLCipher.checkAndSetEncodedKey(OpenSSLCipher.java:462) at com.android.org.conscrypt.OpenSSLCipher.engineInit(OpenSSLCipher.java:296) at javax.crypto.Cipher.tryTransformWithProvider(Cipher.java:2980) at javax.crypto.Cipher.tryCombinations(Cipher.java:2891) at javax.crypto.Cipher$SpiAndProviderUpdater.updateAndGetSpiAndProvider(Cipher.java:2796) at javax.crypto.Cipher.chooseProvider(Cipher.java:773) at javax.crypto.Cipher.init(Cipher.java:1288) at javax.crypto.Cipher.init(Cipher.java:1223) ... 16 more

04.10.2019 23:47:56:65 -- FileSelect.OnStop 04.10.2019 23:47:56:104 -- FileSelect.OnDestroyTrue 04.10.2019 23:47:56:105 -- KeePass.OnStop 04.10.2019 23:47:56:105 -- KeePass.OnDestroyTrue 04.10.2019 23:47:56:105 -- KeePass.OnDestroyTrue 04.10.2019 23:47:56:662 -- CFS: Files in Sync 04.10.2019 23:47:56:663 -- Pre-loading database file completed 04.10.2019 23:48:04:522 -- LockingActivity: OnActivityResult 04.10.2019 23:48:04:523 -- PasswordActivity.OnActivityResult 874348/1000 04.10.2019 23:48:04:538 -- status message: Initializing... 04.10.2019 23:48:04:539 -- status submessage: 04.10.2019 23:48:04:570 -- status message: Lade Datenbank… 04.10.2019 23:48:04:572 -- status submessage: Führe Schlüsseltransformationen durch… 04.10.2019 23:48:04:586 -- status submessage: Entschlüssele Datenbank… 04.10.2019 23:48:04:600 -- OnFinish message: Ungültiger zusammengesetzter Schlüssel! Bitte erneut probieren. 04.10.2019 23:48:04:620 -- FP: Create FingerprintDecryption 04.10.2019 23:48:04:621 -- FP: Init for Dec 04.10.2019 23:48:04:635 -- failed to init fingerprint unlock:Java.Lang.RuntimeException: Exception of type 'Java.Lang.RuntimeException' was thrown. at keepass2android.FingerprintDecryption.Init () [0x000d0] in <42483a0e42cb482da6be36caa63cd922>:0 at keepass2android.PasswordActivity.InitFingerprintUnlock () [0x00088] in <42483a0e42cb482da6be36caa63cd922>:0 --- End of managed Java.Lang.RuntimeException stack trace --- java.lang.RuntimeException: Failed to init Cipher at mono.java.lang.RunnableImplementor.n_run(Native Method) at mono.java.lang.RunnableImplementor.run(RunnableImplementor.java:30) at android.os.Handler.handleCallback(Handler.java:873) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loop(Looper.java:216) at android.app.ActivityThread.main(ActivityThread.java:7263) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:494) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:975) Caused by: java.security.InvalidKeyException: Only SecretKey is supported at com.android.org.conscrypt.OpenSSLCipher.checkAndSetEncodedKey(OpenSSLCipher.java:462) at com.android.org.conscrypt.OpenSSLCipher.engineInit(OpenSSLCipher.java:296) at javax.crypto.Cipher.tryTransformWithProvider(Cipher.java:2980) at javax.crypto.Cipher.tryCombinations(Cipher.java:2891) at javax.crypto.Cipher$SpiAndProviderUpdater.updateAndGetSpiAndProvider(Cipher.java:2796) at javax.crypto.Cipher.chooseProvider(Cipher.java:773) at javax.crypto.Cipher.init(Cipher.java:1288) at javax.crypto.Cipher.init(Cipher.java:1223) ... 9 more

04.10.2019 23:48:07:985 -- LockingActivity: OnActivityResult 04.10.2019 23:48:07:985 -- PasswordActivity.OnActivityResult 874348/1000 04.10.2019 23:48:08:6 -- status message: Initializing... 04.10.2019 23:48:08:7 -- status submessage: 04.10.2019 23:48:08:39 -- status message: Lade Datenbank… 04.10.2019 23:48:08:40 -- CFS: OpenWhenNoLocalChanges 04.10.2019 23:48:08:40 -- CFS: hashing cached version 04.10.2019 23:48:08:743 -- CFS: Files in Sync 04.10.2019 23:48:08:745 -- status submessage: Führe Schlüsseltransformationen durch… 04.10.2019 23:48:08:780 -- status submessage: Entschlüssele Datenbank… 04.10.2019 23:48:08:780 -- status submessage: Entschlüssele Datenbank… 04.10.2019 23:48:08:786 -- status submessage: Lese Datenbank ein… 04.10.2019 23:48:08:804 -- ReadXmlStreamed: 16ms 04.10.2019 23:48:08:805 -- status submessage: 04.10.2019 23:48:08:806 -- status message: Aktualisiere lokale Sicherungskopie... 04.10.2019 23:48:08:817 -- LoadDB OK 04.10.2019 23:48:08:820 -- Starting/Updating OngoingNotificationsService. Database Unlocked 04.10.2019 23:48:08:916 -- PasswordActivity.OnPause 04.10.2019 23:48:08:918 -- Timeout start 04.10.2019 23:48:08:932 -- StackBaseActivity.OnActivityResult Ok/1 04.10.2019 23:48:08:932 -- No AppTask in OnActivityResult 04.10.2019 23:48:08:987 -- GroupActivity.OnCreate 04.10.2019 23:48:08:987 -- GroupActivity:apptask= 04.10.2019 23:48:08:989 -- Loaded task keepass2android.NullTask 04.10.2019 23:48:09:15 -- GroupActivity.OnStart 04.10.2019 23:48:09:15 -- GroupActivity.OnResume 04.10.2019 23:48:09:16 -- DatabaseIsUnlocked=True 04.10.2019 23:48:09:16 -- Timeout cancel 04.10.2019 23:48:09:434 -- PasswordActivity.OnStop 04.10.2019 23:48:09:435 -- PasswordActivity.OnDestroyTrue 04.10.2019 23:48:13:125 -- GroupActivity.OnPause 04.10.2019 23:48:13:126 -- Timeout start 04.10.2019 23:48:13:144 -- DatabaseSettingsActivity.OnCreate 04.10.2019 23:48:13:144 -- DatabaseSettingsActivity:apptask= 04.10.2019 23:48:13:191 -- DatabaseSettingsActivity.OnStart 04.10.2019 23:48:13:192 -- DatabaseSettingsActivity.OnResume 04.10.2019 23:48:13:192 -- DatabaseIsUnlocked=True 04.10.2019 23:48:13:192 -- Timeout cancel 04.10.2019 23:48:13:574 -- GroupActivity.OnStop 04.10.2019 23:49:14:608 -- DatabaseSettingsActivity.OnPause 04.10.2019 23:49:14:608 -- Timeout start 04.10.2019 23:49:14:631 -- FingerprintSetupActivity.OnCreate 04.10.2019 23:49:14:632 -- FingerprintSetupActivity:apptask= 04.10.2019 23:49:14:685 -- FingerprintSetupActivity.OnStart 04.10.2019 23:49:14:686 -- FingerprintSetupActivity.OnResume 04.10.2019 23:49:14:686 -- DatabaseIsUnlocked=True 04.10.2019 23:49:14:687 -- Timeout cancel 04.10.2019 23:49:14:709 -- FingerprintSetupActivity.OnPause 04.10.2019 23:49:14:709 -- Timeout start 04.10.2019 23:49:14:785 -- FingerprintSetupActivity.OnResume 04.10.2019 23:49:14:786 -- DatabaseIsUnlocked=True 04.10.2019 23:49:14:787 -- Timeout cancel 04.10.2019 23:49:15:103 -- DatabaseSettingsActivity.OnStop 04.10.2019 23:49:22:757 -- FingerprintSetupActivity.OnPause 04.10.2019 23:49:22:759 -- Timeout start 04.10.2019 23:49:22:779 -- DatabaseSettingsActivity.OnStart 04.10.2019 23:49:22:780 -- DatabaseSettingsActivity.OnResume 04.10.2019 23:49:22:781 -- DatabaseIsUnlocked=True 04.10.2019 23:49:22:781 -- Timeout cancel 04.10.2019 23:49:23:158 -- FingerprintSetupActivity.OnStop 04.10.2019 23:49:23:159 -- FingerprintSetupActivity.OnDestroyTrue 04.10.2019 23:49:24:805 -- DatabaseSettingsActivity.OnPause 04.10.2019 23:49:24:806 -- Timeout start 04.10.2019 23:49:24:828 -- GroupActivity.OnStart 04.10.2019 23:49:24:829 -- GroupActivity.OnResume 04.10.2019 23:49:24:829 -- DatabaseIsUnlocked=True 04.10.2019 23:49:24:829 -- Timeout cancel 04.10.2019 23:49:25:209 -- DatabaseSettingsActivity.OnStop 04.10.2019 23:49:25:210 -- DatabaseSettingsActivity.OnDestroyTrue 04.10.2019 23:49:25:892 -- GroupActivity.OnPause 04.10.2019 23:49:25:892 -- Timeout start 04.10.2019 23:49:25:918 -- GroupActivity.OnStop 04.10.2019 23:49:26:914 -- GroupActivity.OnDestroyTrue 04.10.2019 23:49:26:985 -- OngoingNotificationsService.OnTaskRemoved: android.intent.action.MAIN 04.10.2019 23:49:26:986 -- QuickLocking database 04.10.2019 23:49:26:989 -- Starting/Updating OngoingNotificationsService. Database QuickLocked 04.10.2019 23:49:30:429 -- Received broadcast intent: keepass2android.keepass2android.close_database 04.10.2019 23:49:30:429 -- Locking database 04.10.2019 23:49:30:441 -- OngoingNotificationsService.OnDestroy 04.10.2019 23:49:32:744 -- KeePass.OnCreate 04.10.2019 23:49:32:745 -- KeePass:apptask= 04.10.2019 23:49:32:745 -- Loaded task keepass2android.NullTask 04.10.2019 23:49:32:746 -- KeePass.OnCreate 04.10.2019 23:49:32:750 -- KeePass.OnStart 04.10.2019 23:49:32:750 -- KeePass.OnStart 04.10.2019 23:49:32:781 -- Loaded task keepass2android.NullTask 04.10.2019 23:49:32:801 -- FileSelect.OnCreate 04.10.2019 23:49:32:825 -- FileSelect.OnStart 04.10.2019 23:49:32:847 -- PasswordActivity.OnCreate 04.10.2019 23:49:32:847 -- PasswordActivity:apptask= 04.10.2019 23:49:32:917 -- PasswordActivity.OnStart 04.10.2019 23:49:32:917 -- PasswordActivity.OnResume 04.10.2019 23:49:32:917 -- DB null 04.10.2019 23:49:32:918 -- starting: True, Finishing: False, _performingLoad: False 04.10.2019 23:49:32:920 -- Pre-loading database file starting 04.10.2019 23:49:32:921 -- CFS: OpenWhenNoLocalChanges 04.10.2019 23:49:32:921 -- CFS: hashing cached version 04.10.2019 23:49:32:923 -- PasswordActivity.OnPause 04.10.2019 23:49:32:986 -- PasswordActivity.OnResume 04.10.2019 23:49:32:986 -- DB null 04.10.2019 23:49:32:986 -- starting: False, Finishing: False, _performingLoad: False 04.10.2019 23:49:32:988 -- FP: Create FingerprintDecryption 04.10.2019 23:49:32:989 -- FP: Init for Dec 04.10.2019 23:49:33:2 -- failed to init fingerprint unlock:Java.Lang.RuntimeException: Exception of type 'Java.Lang.RuntimeException' was thrown. at keepass2android.FingerprintDecryption.Init () [0x000d0] in <42483a0e42cb482da6be36caa63cd922>:0 at keepass2android.PasswordActivity.InitFingerprintUnlock () [0x00088] in <42483a0e42cb482da6be36caa63cd922>:0 --- End of managed Java.Lang.RuntimeException stack trace --- java.lang.RuntimeException: Failed to init Cipher at md5f0702f468598c68ce18586502249fb40.PasswordActivity.n_onResume(Native Method) at md5f0702f468598c68ce18586502249fb40.PasswordActivity.onResume(PasswordActivity.java:103) at android.app.Instrumentation.callActivityOnResume(Instrumentation.java:1416) at android.app.Activity.performResume(Activity.java:7630) at android.app.ActivityThread.performResumeActivity(ActivityThread.java:4055) at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:4095) at android.app.servertransaction.ResumeActivityItem.execute(ResumeActivityItem.java:51) at android.app.servertransaction.TransactionExecutor.executeLifecycleState(TransactionExecutor.java:145) at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:70) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1994) at android.os.Handler.dispatchMessage(Handler.java:106) at android.os.Looper.loop(Looper.java:216) at android.app.ActivityThread.main(ActivityThread.java:7263) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:494) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:975) Caused by: java.security.InvalidKeyException: Only SecretKey is supported at com.android.org.conscrypt.OpenSSLCipher.checkAndSetEncodedKey(OpenSSLCipher.java:462) at com.android.org.conscrypt.OpenSSLCipher.engineInit(OpenSSLCipher.java:296) at javax.crypto.Cipher.tryTransformWithProvider(Cipher.java:2980) at javax.crypto.Cipher.tryCombinations(Cipher.java:2891) at javax.crypto.Cipher$SpiAndProviderUpdater.updateAndGetSpiAndProvider(Cipher.java:2796) at javax.crypto.Cipher.chooseProvider(Cipher.java:773) at javax.crypto.Cipher.init(Cipher.java:1288) at javax.crypto.Cipher.init(Cipher.java:1223) ... 16 more

04.10.2019 23:49:33:68 -- FileSelect.OnStop 04.10.2019 23:49:33:120 -- FileSelect.OnDestroyTrue 04.10.2019 23:49:33:121 -- KeePass.OnStop 04.10.2019 23:49:33:121 -- KeePass.OnDestroyTrue 04.10.2019 23:49:33:121 -- KeePass.OnDestroyTrue 04.10.2019 23:49:33:849 -- CFS: Files in Sync 04.10.2019 23:49:33:850 -- Pre-loading database file completed 04.10.2019 23:49:46:495 -- LockingActivity: OnActivityResult 04.10.2019 23:49:46:496 -- PasswordActivity.OnActivityResult 874348/1000 04.10.2019 23:49:46:520 -- status message: Initializing... 04.10.2019 23:49:46:520 -- status submessage: 04.10.2019 23:49:46:572 -- status message: Lade Datenbank… 04.10.2019 23:49:46:574 -- status submessage: Führe Schlüsseltransformationen durch… 04.10.2019 23:49:46:591 -- status submessage: Entschlüssele Datenbank… 04.10.2019 23:49:46:592 -- status submessage: Entschlüssele Datenbank… 04.10.2019 23:49:46:593 -- status submessage: Lese Datenbank ein… 04.10.2019 23:49:46:612 -- ReadXmlStreamed: 19ms 04.10.2019 23:49:46:613 -- status submessage: 04.10.2019 23:49:46:614 -- status message: Aktualisiere lokale Sicherungskopie... 04.10.2019 23:49:46:622 -- LoadDB OK 04.10.2019 23:49:46:627 -- Starting/Updating OngoingNotificationsService. Database Unlocked 04.10.2019 23:49:46:712 -- PasswordActivity.OnPause 04.10.2019 23:49:46:713 -- Timeout start 04.10.2019 23:49:46:728 -- StackBaseActivity.OnActivityResult Ok/1 04.10.2019 23:49:46:728 -- No AppTask in OnActivityResult 04.10.2019 23:49:46:773 -- GroupActivity.OnCreate 04.10.2019 23:49:46:774 -- GroupActivity:apptask= 04.10.2019 23:49:46:777 -- Loaded task keepass2android.NullTask 04.10.2019 23:49:46:808 -- GroupActivity.OnStart 04.10.2019 23:49:46:808 -- GroupActivity.OnResume 04.10.2019 23:49:46:809 -- DatabaseIsUnlocked=True 04.10.2019 23:49:46:809 -- Timeout cancel 04.10.2019 23:49:47:229 -- PasswordActivity.OnStop 04.10.2019 23:49:47:230 -- PasswordActivity.OnDestroyTrue 04.10.2019 23:49:50:305 -- GroupActivity.OnPause 04.10.2019 23:49:50:305 -- Timeout start 04.10.2019 23:49:50:322 -- DatabaseSettingsActivity.OnCreate 04.10.2019 23:49:50:323 -- DatabaseSettingsActivity:apptask= 04.10.2019 23:49:50:373 -- DatabaseSettingsActivity.OnStart 04.10.2019 23:49:50:374 -- DatabaseSettingsActivity.OnResume 04.10.2019 23:49:50:374 -- DatabaseIsUnlocked=True 04.10.2019 23:49:50:374 -- Timeout cancel 04.10.2019 23:49:50:747 -- GroupActivity.OnStop 04.10.2019 23:49:55:322 -- DatabaseSettingsActivity.OnPause 04.10.2019 23:49:55:323 -- Timeout start 04.10.2019 23:49:59:398 -- DatabaseSettingsActivity.OnStop 04.10.2019 23:51:18:275 -- DatabaseSettingsActivity.OnStart 04.10.2019 23:51:18:276 -- DatabaseSettingsActivity.OnResume 04.10.2019 23:51:18:276 -- DatabaseIsUnlocked=True 04.10.2019 23:51:18:276 -- Timeout cancel

qrees commented 3 years ago

I had the same problem when migrating to new phone. Had to reset app data and it is working. @PhilippC Can Keepass detect that the same data is used on another phone and discard some settings? Other than that migration was working flawlessly. Restored backup on the new phone and I did not have to set anything except for providing database password.