RocketChat / RocketChat/Rocket.Chat
E2E - Unable to read messages on a private channel on 4.3.1 version
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 46.1k
- Forks
- 13.9k
- Avg merge
- 3d 3h
- Merged PRs (30d)
- 130
Description
Description:
Hi everyone,
In connection with the tests, for the E2E functionality, there was a problem relating to private room encryption. In some cases, it is not possible to decrypt messages after reset E2E key.
Steps to reproduce:
- Enable E2E encryption feature in administration panel
- Log in to the account of two users
- Accept the encyption feature and save the key password (this applies to two users)
- Create private room, enable E2E encryption and add second user.
- Start typing test messages
- Reset E2E key on owner and user account.
- Log in to the rocket.chat again
- After obtaining new keys, we are unable to decrypt previous messages.
Expected behavior:
After changing the encryption key, both the user and the administrator do not have access to resources in the form of encrypted messages. The channel is unreadable to both sides.
Actual behavior:
Due to the possibility of losing the password to the existing key, there should be a better security in terms of gaining possible access to previous messages. In some cases it is impossible.
Server Setup Information:
- Version of Rocket.Chat Server: 4.3.1
- Operating System: CentOS Linux 7 (Core)
- Deployment Method: docker
- Number of Running Instances: 3
- DB Replicaset Oplog: 3
- NodeJS Version: X
- MongoDB Version: 4.0.14 / wiredTiger (oplog Enable)
Client Setup Information
- Desktop App or Browser Version: Desktop App & Browser version
- Operating System: Windows 10 Pro
Additional context
Relevant logs:
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
The report names no source files, tests, or entry points. Reproduce the issue on Rocket.Chat 4.3.1 using the listed two-user private-room and E2E key-reset steps, then clarify the conflicting expected and actual behavior before locating the encryption flow and defining the correct result.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- docker, mongodb, typescript
- Domain
- cryptography, security
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100