ESS Sync not working after manually editing encryption key

Steps to reproduce

  1. Install everdo on mac
  2. Log in to secure sync on mac everdo
  3. Slightly modify encryption key (same number of characters)
  4. Copy encryption key to google keep
  5. Install everdo on android
  6. Log in to secure sync on android everdo
  7. Copy encryption key to android app from google keep app
  8. Try to sync

Expected result

Sync succeeds

Actual result

Toast message: “Could not sync: encryption key mismatch”

System info

Mac OS X Mojave 10.14.1 running Everdo 1.2.14
Android PQ3A.190505.001 running Everdo 0.80.6

I was able to get this to work by not modifying the encryption key. Still, I would like to be able to provide my own encryption key and sync.

I reported another bug with Android’s bug report system – it happens when I add extra words to the encryption key in Mac and try to sync with that key in Android. The app crashes when trying to sync (entering a crash loop). It looks like Android only supports a certain amount of bytes for an encryption key. I’ll let you look at the stack trace though.

I guess this is not made clear in the app. The thing is, the key should not be edited “randomly” because it’s a passphrase made out of exactly 16 english words out of a large dictionary. Any words not present in the dictionary are invalid meaning they are impossible to use for encryption. This dictionary approach makes it possible to encode a huge key (256-bit) into a relatively manageable passphrase of only 16 words.

The app should not let you specify an incorrect key. If you were able to edit the key from within the app, then that’s definitely a bug.