Rocket.Chat.ReactNative icon indicating copy to clipboard operation
Rocket.Chat.ReactNative copied to clipboard

After upgrading to 4.7.0 E2EE messages fail to show on IOS app

Open lovekyleman opened this issue 2 years ago • 7 comments

image

lovekyleman avatar May 06 '22 00:05 lovekyleman

Messages encrypted before upgrading to 4.7.0 are not showing. Messages encrypted after upgrading are OK

lovekyleman avatar May 06 '22 00:05 lovekyleman

Same for Android client...

skibbipl avatar May 08 '22 19:05 skibbipl

Hi there, Any updates on this issue? Thanks

cuongnn-smartosc avatar Jun 07 '22 10:06 cuongnn-smartosc

Hi there, Any updates on this issue? Thanks

It's in our pipe, but there are other priorities ahead. We are open to PRs.

dnlsilva avatar Jun 07 '22 12:06 dnlsilva

"Other priorities"? You completely broke the E2EE functionality in a release. As usual, there are too many regressions and existing users take a back seat, for shame.

antgel avatar Jun 10 '22 12:06 antgel

Hi @lovekyleman , @cuongnn-smartosc, @antgel! Sorry for you facing this problem. So, here are some questions for you: 1 - The problem was recognized after upgrading the Server to 4.7.0, or are you using another version of the server? 2 - The problem of decrypting is only for the mobile app, or is it occurring in the web app/desktop app? 3 - Did you recently reset the E2E key by the mobile app? 4 - Which is the version of the mobile app you are using?

While we are awaiting your answers, we started to research the fix for this critical problem. Later, we will bring some news and we are open to PRs.

reinaldonetof avatar Jun 11 '22 03:06 reinaldonetof

Hi @lovekyleman , @cuongnn-smartosc, @antgel!

Sorry for you facing this problem. So, here are some questions for you:

1 - The problem was recognized after upgrading the Server to 4.7.0, or are you using another version of the server?

2 - The problem of decrypting is only for the mobile app, or is it occurring in the web app/desktop app?

3 - Did you recently reset the E2E key by the mobile app?

4 - Which is the version of the mobile app you are using?

While we are awaiting your answers, we started to research the fix for this critical problem. Later, we will bring some news and we are open to PRs.

  1. after upgrading the Server to 4.7.0,4.8.0,4.8.1 the E2EE messages decrypting is broken ( E2EE messages before upgrading) 2.Mac app is okay. decrypting is broken for the mobile app
  2. No E2E key reset
  3. Latest mobile app (IOS)

lovekyleman avatar Jun 11 '22 04:06 lovekyleman

Any update? The Android app version 4.33.1 is still experiencing the same issue. Whenever I update the server to versions 4.7 - 5.4, the problem occurs. Does anyone have a workaround for this issue?

Only old messages are affected by this issue. New messages that are sent using the web client or the app are displayed correctly. The old messages are displayed correctly in the web client.

Thanks in advance

MuRF2 avatar Dec 11 '22 01:12 MuRF2

Any update?

The Android app version 4.33.1 is still experiencing the same issue. Whenever I update the server to versions 4.7 - 5.4, the problem occurs. Does anyone have a workaround for this issue?

Only old messages are affected by this issue. New messages that are sent using the web client or the app are displayed correctly. The old messages are displayed correctly in the web client.

Thanks in advance It's been long time ago. Seems no one cares about it.

lovekyleman avatar Dec 12 '22 05:12 lovekyleman

Hey folks.

Whenever I update the server to versions 4.7 - 5.4

That's new information. If true, for some reason the server update would break the e2e keys on mobile apps? Can anybody else confirm?

I'm asking because we released a new version of the mobile app last week as well. I've tried to reproduce this a few times, but I wasn't able. Can you explain us the steps to do it?

Also resetting the E2E keys should work, since it's going to regenerate the keys on both clients. Thanks!

diegolmello avatar Dec 12 '22 13:12 diegolmello

I have installed the RocketChat server manually, following the instructions in your documentation. Both RocketChat and MongoDB are running on separate machines. Several channels and direct messages were encrypted with E2E from the start. The MongoDB database is from a previous installation using RocketChat snap package 3.x. Currently, I am using RocketChat 4.5.5 and MongoDB 5.0.

The error is occurring with a self-compiled app based on the single server branch with exchanged assets. However, the app from the Play Store is also experiencing the same problem.

Here's what I've tried: Upgrade RocketChat server from version 4.5.5 to 4.8.6.

  • Web client no issue.
  • Android app 4.29-4.33 cannot decrypt the old messages. From this point forward, new messages are not a problem and are displayed correctly.

For two accounts, the E2E encryption key was reset.

  • Web client no issue.
  • Android app cannot display old messages. No issue with new messages.

When running the app in "debug mode" and entering a channel with "broken" messages, I get the following output. However, please forgive me if this is completely useless or incorrect, as I have no idea what I am doing. :D

It would be helpful if someone else could perform a similar test to check my setup. Thanks in advance. And thanks for the quick reply @diegolmello @lovekyleman

MuRF2 avatar Dec 13 '22 03:12 MuRF2

Hey.

I get the following output.

Yeah, it's just an unrelated warning from React.

It would be helpful if someone else could perform a similar test

That would be amazing.

What I'm thinking here is why it would fail for old messages while working on new ones, but without changing any key. And logging out or uninstalling the app doesn't solve the issue as well?

The error is occurring with a self-compiled app based on the single server branch with exchanged assets. However, the app from the Play Store is also experiencing the same problem.

It's like if the user stops working on mobile apps after the server is updated?

diegolmello avatar Dec 13 '22 13:12 diegolmello

I just realized that the android app version 4.28 correctly displays old messages after the RocketChat server was upgraded! (This time 4.5.5 to 5.4)

And logging out or uninstalling the app doesn't solve the issue as well?

No, for Android Version 4.29-4.33 this does not help.

It's like if the user stops working on mobile apps after the server is updated?

I don't know if I understand the question correctly (non-native English speaker). Anyway, after the server update, the android app can still be used normally and non-encrypted messages are displayed correctly. However, any existing E2E encrypted messages that were sent before the server update are no longer decrypted and cannot be viewed. New E2E encrypted messages that are sent after the update are displayed correctly.

MuRF2 avatar Dec 13 '22 14:12 MuRF2

We recently merged this and it could fix your issue https://github.com/RocketChat/Rocket.Chat.ReactNative/pull/4763 We're going to release it in a few days.

Can you try and let us know if it works? Thanks!

diegolmello avatar Jan 20 '23 17:01 diegolmello

5.4.2 Still not working.

We recently merged this and it could fix your issue https://github.com/RocketChat/Rocket.Chat.ReactNative/pull/4763

We're going to release it in a few days.

Can you try and let us know if it works?

Thanks!

lovekyleman avatar Jan 25 '23 23:01 lovekyleman

I didn't get. We released 4.35.0 on mobile. Server version is irrelevant.

diegolmello avatar Jan 26 '23 13:01 diegolmello

I didn't get.

We released 4.35.0 on mobile.

Server version is irrelevant.

I'm using 4.35.0 iOS app now. Still can't read old messages. Anyway. Maybe old messages are not important. Never mind Thanks for your time

lovekyleman avatar Jan 26 '23 13:01 lovekyleman