Signal Crashes Upon Startup
Actual result: The app immediately crashes. I never even see the UI.
Expected result: Obviously, the app should start.
Device: Samsung S9+ (SM-G965F)
Android version: 9
Signal version: 4.32.8
Try to get an adb logcat or use an app like matlog to retrieve a debug log of the crash
I already did. It's at the top of my bug report.
Looks like you're experiencing a keystore failure:
01-28 21:07:05.808 W/System.err(29670): java.security.UnrecoverableKeyException: Failed to obtain information about key
01-28 21:07:05.808 W/System.err(29670): at android.security.keystore.AndroidKeyStoreProvider.getKeyCharacteristics(AndroidKeyStoreProvider.java:238)
01-28 21:07:05.808 W/System.err(29670): at android.security.keystore.AndroidKeyStoreProvider.loadAndroidKeyStoreKeyFromKeystore(AndroidKeyStoreProvider.java:360)
01-28 21:07:05.808 W/System.err(29670): at android.security.keystore.AndroidKeyStoreSpi.engineGetKey(AndroidKeyStoreSpi.java:116)
01-28 21:07:05.808 W/System.err(29670): at java.security.KeyStoreSpi.engineGetEntry(KeyStoreSpi.java:524)
01-28 21:07:05.808 W/System.err(29670): at java.security.KeyStore.getEntry(KeyStore.java:1621)
01-28 21:07:05.808 W/System.err(29670): at com.samsung.android.dqagent.secure.a.b(Unknown Source:56)
01-28 21:07:05.808 W/System.err(29670): at com.samsung.android.dqagent.secure.a.a(Unknown Source:6)
01-28 21:07:05.808 W/System.err(29670): at com.samsung.android.dqagent.secure.a.a(Unknown Source:116)
01-28 21:07:05.808 W/System.err(29670): at com.samsung.android.dqagent.secure.a.a(Unknown Source:85)
01-28 21:07:05.808 W/System.err(29670): at com.samsung.android.dqagent.b.c.q(Unknown Source:1)
01-28 21:07:05.808 W/System.err(29670): at com.samsung.android.dqagent.b.c.t(Unknown Source:17)
01-28 21:07:05.808 W/System.err(29670): at com.samsung.android.dqagent.CustomApplication.onCreate(Unknown Source:56)
01-28 21:07:05.808 W/System.err(29670): at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1154)
01-28 21:07:05.808 W/System.err(29670): at android.app.ActivityThread.handleBindApplication(ActivityThread.java:6153)
01-28 21:07:05.809 W/System.err(29670): at android.app.ActivityThread.access$1200(ActivityThread.java:235)
01-28 21:07:05.809 W/System.err(29670): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1768)
01-28 21:07:05.809 W/System.err(29670): at android.os.Handler.dispatchMessage(Handler.java:106)
01-28 21:07:05.809 W/System.err(29670): at android.os.Looper.loop(Looper.java:214)
01-28 21:07:05.809 W/System.err(29670): at android.app.ActivityThread.main(ActivityThread.java:6981)
01-28 21:07:05.809 W/System.err(29670): at java.lang.reflect.Method.invoke(Native Method)
01-28 21:07:05.809 W/System.err(29670): at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
01-28 21:07:05.809 W/System.err(29670): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1445)
01-28 21:07:05.809 D/ConnectivityService( 4811): filterNetworkStateForUid() uid: 10041, pid: 6088
01-28 21:07:05.809 W/System.err(29670): Caused by: android.security.KeyStoreException: -62
01-28 21:07:05.809 W/System.err(29670): at android.security.KeyStore.getKeyStoreException(KeyStore.java:1159)
01-28 21:07:05.809 W/System.err(29670): at android.security.keystore.AndroidKeyStoreProvider.getKeyCharacteristics(AndroidKeyStoreProvider.java:240)
01-28 21:07:05.809 W/System.err(29670): ... 21 more
01-28 21:07:05.809 D/DQA (29670): Encrypted Password Creation Failed [Retry Count]: 3
I appreciate your identifying the problem.
However, can you elaborate as to what that means and how to resolve it?
@TraceGroot: Did you restore Signal from a backup before this? If so, did you use 3rd party apps such as Titanium Backup? Is your device rooted?
No, Signal was not restored from backup. This was a fresh install on a new phone. Yes, the phone is rooted - however, I've used Signal previously on rooted phones without any problems whatsoever.
To go back to an earlier question which never got answered, can someone help me understand what the keystore failure implies? Is it a problem on my phone that I need to do something to resolve, or is this a bug with Signal that I have to wait to get fixed?
Same (or similar?) here. Phone not rooted. I did restore from a backup once, not with 3rd party apps.
Happened with update from Android 7 to Android 8.
Signal v4.34.8
I can not use my signal anymore since and cant get its data to an other phone
Can the devs please answer the basic question I've been asking for weeks and explain what the keystore failure means and whether the problem is local to a user's phone or if it's a bug with Signal that we have to wait to get fixed?!?
Same (or similar?) here. Phone not rooted. I did restore from a backup once, not with 3rd party apps.
Happened with update from Android 7 to Android 8.
Signal v4.34.8I can not use my signal anymore since and cant get its data to an other phone
Same thing happens to me...
Devs are not responding to questions here, they're ignoring emails on the issue - I'm seriously considering just dropping Signal completely. This is not how you run a company.
To the best of my knowledge, a java.security.UnrecoverableKeyException in this situation implies that something has gone wrong at a system level, outside of our app. This is an unrecoverable state. If we can't retrieve the key, then we can't access our encrypted database.
Then how do we reset Signal's database so that we can start from scratch instead of leaving it crippled for life?
In this situation, I'd recommend just uninstalling + reinstalling. I'll try to dig into it to see if there's anything else worth doing on our end.
Okay, but that's just it. Uninstalling/reinstalling doesn't work. After I do that, it's still crashing immediately upon startup. I've been unable to use Signal for months.
I looked through your logs again, and I see the following line repeated every so often:
01-28 21:07:04.640 D/TimaKeyStoreProvider(29593): TimaKeyStore is not enabled: cannot add TimaSignature Service and generateKeyPair Service
I looked it up, and it appears to be some Samsung-specific keystore thing.
https://seap.samsung.com/faq/what-knox-tima-keystore
I have no idea if it's related, but maybe it's causing our usage of the keystore to always fail.
Do you have some sort of administration app installed, maybe (like from your company)? Or did you install a system update around the time of the crash happening?
This was a completely new phone when I started having this problem. Personal, not business, so there's no policy-control app.
However, it did update from Oreo to Pie very soon after I got it. I don't recall if Signal was installed immediately before or immediately after that update.
A Google search for "TimaKeyStore is not enabled" shows it in numerous logs for apps which are crashing, but I have yet to find a case where it's related to the cause. So I'm not sure it's relevant.
However, if you have a debug version of Signal that you want me to try which probes the issue more directly, I'm game.
Well, for anyone else having this problem, I found what appears to be the only working fix:
I had this problem with Signal side-loaded into an emulator, and what fixed it was uninstall and re-install.
I'm glad to hear that someone else has experienced this.
Unfortunately, I've tried uninstalling/reinstalling many times, and it's never worked.