matrix-org / matrix-org/matrix-rust-sdk

Failures to deserialize/decrypt backed-up room keys are not shown in the UI

Open
#3,875 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
Rust
Stars
2.3k
Forks
500
Avg merge
1d 16h
Merged PRs (30d)
106

Description

Suppose we find a message which was sent after we registered, but before we logged in. We attempt to download the keys for such messages from the server-side store.

If the key is not found, there is obviously little we can do. However, if we find a key but then cannot decrypt it, or deserialize it, we should probably tell the user that there was an error -- or at least, stop showing "waiting for this message".

This particularly affects users who had old versions of Fluffychat, due to https://github.com/famedly/matrix-dart-sdk/issues/1739 -- but there may be other circumstances in which the key is in some way corrupt.

Contributor guide

Open the contributing guide

Research direction

Start by tracing the backed-up room-key download path, including where returned keys are deserialized and decrypted. Verify how failures are propagated to the message state and UI; done means corrupt or undecryptable keys produce an error indication instead of leaving messages showing "waiting for this message".

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
cryptography
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.