KeyStoreException: Invalid key blob
- Android version: 11
- Phone model: Samsung SM-G970F (beyond0ltexx)
- Briar version: 1.4.5 (4df523aa)
- User feedback: "I tried to login, entered my password and then Briar just crashed. I used this account before. But then I restored my phone from the backup I made a month ago."
Log:
03-07 19:47:35.275 I/BriarApplicationImpl: Created
03-07 19:47:35.321 I/AccountManagerImpl: Found database key in primary file
03-07 19:47:39.685 I/BaseActivity: Creating SplashScreenActivity
03-07 19:47:39.700 I/BaseActivity: Starting SplashScreenActivity
03-07 19:47:39.702 I/BaseActivity: Resuming SplashScreenActivity
03-07 19:47:40.210 I/BaseActivity: Pausing SplashScreenActivity
03-07 19:47:40.222 I/BaseActivity: Creating NavDrawerActivity
03-07 19:47:40.266 I/BaseActivity: Starting NavDrawerActivity
03-07 19:47:40.270 I/BaseActivity: Resuming NavDrawerActivity
03-07 19:47:40.270 I/BriarActivity: Not signed in, launching StartupActivity
03-07 19:47:40.277 I/BaseActivity: Pausing NavDrawerActivity
03-07 19:47:40.282 I/BaseActivity: Creating StartupActivity
03-07 19:47:40.288 I/AccountManagerImpl: Found database key in primary file
03-07 19:47:40.289 I/BaseActivity: Starting StartupActivity
03-07 19:47:40.303 I/BaseActivity: Resuming StartupActivity
03-07 19:47:40.394 I/BaseActivity: Stopping NavDrawerActivity
03-07 19:47:40.803 I/BaseActivity: Stopping SplashScreenActivity
03-07 19:47:40.804 I/BaseActivity: Destroying SplashScreenActivity
03-07 19:47:47.649 I/AccountManagerImpl: Found database key in primary file
03-07 19:47:48.424 I/AndroidKeyStrengthener: Loaded key from keystore
Stacktrace:
java.lang.RuntimeException: java.security.InvalidKeyException: Keystore operation failed
at org.briarproject.briar.android.AndroidKeyStrengthener.strengthenKey(AndroidKeyStrengthener.java:101)
at org.briarproject.bramble.crypto.CryptoComponentImpl.decryptWithPassword(CryptoComponentImpl.java:412)
at org.briarproject.bramble.account.AccountManagerImpl.loadAndDecryptDatabaseKey(AccountManagerImpl.java:214)
at org.briarproject.bramble.account.AccountManagerImpl.signIn(AccountManagerImpl.java:200)
at org.briarproject.briar.android.login.StartupViewModel.lambda$validatePassword$0(StartupViewModel.java:112)
at org.briarproject.briar.android.login.StartupViewModel.$r8$lambda$5aurY1rQupylNVXCUST5DjfL1L4(Unknown Source:0)
at org.briarproject.briar.android.login.StartupViewModel$$ExternalSyntheticLambda0.run(Unknown Source:4)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
at java.lang.Thread.run(Thread.java:923)
Caused by: java.security.InvalidKeyException: Keystore operation failed
at android.security.KeyStore.getInvalidKeyException(KeyStore.java:1383)
at android.security.KeyStore.getInvalidKeyException(KeyStore.java:1393)
at android.security.keystore.KeyStoreCryptoOperationUtils.getInvalidKeyExceptionForInit(KeyStoreCryptoOperationUtils.java:54)
at android.security.keystore.AndroidKeyStoreHmacSpi.ensureKeystoreOperationInitialized(AndroidKeyStoreHmacSpi.java:184)
at android.security.keystore.AndroidKeyStoreHmacSpi.engineInit(AndroidKeyStoreHmacSpi.java:101)
at javax.crypto.Mac.chooseProvider(Mac.java:443)
at javax.crypto.Mac.init(Mac.java:513)
at org.briarproject.briar.android.AndroidKeyStrengthener.strengthenKey(AndroidKeyStrengthener.java:98)
... 9 more
Caused by: android.security.KeyStoreException: Invalid key blob
at android.security.KeyStore.getKeyStoreException(KeyStore.java:1306)
... 16 more