matrix-org / synapse

Synapse: Matrix homeserver written in Python/Twisted.
https://matrix-org.github.io/synapse
Apache License 2.0
11.81k stars 2.13k forks source link

Invited users don't trigger device_list updates when their device lists change. #3504

Open ara4n opened 6 years ago

ara4n commented 6 years ago

If you invite a user to an E2E chat, you have no way of being told when its device list changes as it is not yet participating in the room. As a result, any added devices won't be encrypted for. Options to fix this include:

Related to https://github.com/matrix-org/synapse/issues/3503.

This has been split out from https://github.com/vector-im/riot-web/issues/2713#issuecomment-402989021.

ara4n commented 4 years ago

https://github.com/vector-im/element-web/issues/2713#issuecomment-691480736 gives another possible solution to this: if the servers in the room send lone membership events to the invited server, then the invited server will know who to send device_list updates to.

In other words, the invited server has a read-only participation in the DAG despite not being joined, to a very limited extent, as if it were doing MSC2444 peeking in the room filtered to membership events.