!GsmxjHfeAYLsTEQmjS:nixos.org

Matrix Meta (Nix)

623 Members
Discuss your proposals for the Matrix space here, before suggesting them in #matrix-suggestions:nixos.org177 Servers

Load older messages


SenderMessageTime
16 Jul 2025
@zhaofeng:zhaofeng.liZhaofeng Liand if A goes down forever, no newly-joined homeservers can ever know its keys20:12:23
@k900:0upti.meK900Most homeservers will trust keys fetched from matrix.org20:12:48
@k900:0upti.meK900Which are cached ~forever on matrix.org20:12:54
@k900:0upti.meK900You can configure other servers to be trusted relaying parties for keys20:13:38
@zhaofeng:zhaofeng.liZhaofeng Li
In reply to @k900:0upti.me
Most homeservers will trust keys fetched from matrix.org
Ah, so this is the part that I'm missing
20:13:45
@k900:0upti.meK900But if a certain server is configured to not trust anyone else20:14:14
@k900:0upti.meK900And can't reach the origin server of the event20:14:14
@k900:0upti.meK900It will see an inconsistent state of the room20:14:15
@zhaofeng:zhaofeng.liZhaofeng Li But if A explicitly blocks matrix.org by policy and a newly-joined homeserver doesn't configure additional trusted servers, the room will still be (partly) unusable, right? 20:15:57
@k900:0upti.meK900Kinda20:16:50
@k900:0upti.meK900It depends on how you even join the room20:16:57
@k900:0upti.meK900Because you need to talk to another server to join a room20:17:11
@k900:0upti.meK900So if you just can't federate, you can't do that either20:17:26
@zhaofeng:zhaofeng.liZhaofeng Li
In reply to @k900:0upti.me
Because you need to talk to another server to join a room
let's say the newly-joined homeserver can talk to all homeservers including B and matrix.org (both blocked by A)
20:18:20
@k900:0upti.meK900Can they talk to A though?20:18:42
@k900:0upti.meK900If they can talk to A, they'll fetch the keys directly20:18:47
@k900:0upti.meK900So B and the new server will be on different sides of the split20:19:17
@zhaofeng:zhaofeng.liZhaofeng Li
In reply to @k900:0upti.me
Because you need to talk to another server to join a room
* let's say the newly-joined homeserver can talk to all homeservers including B and matrix.org (both blocked by A) except for A which is down forever
20:19:55
@k900:0upti.meK900Like fundamentally Matrix room state is not consensus, it's CRDT20:21:49
@k900:0upti.meK900So different participants seeing different states is expected20:22:02
@k900:0upti.meK900And ideally everything gets reconciled in the end20:22:17
@zhaofeng:zhaofeng.liZhaofeng Li
In reply to @k900:0upti.me
Like fundamentally Matrix room state is not consensus, it's CRDT
right, it makes sense, but practically it's... unproductive?
20:22:37
@k900:0upti.meK900It is20:23:44
@zhaofeng:zhaofeng.liZhaofeng Liany participating homeserver can become load-bearing and make the room unusable (for many common use cases)20:24:35
@k900:0upti.meK900 I don't think there's a solution for achieving this that is actually good 20:24:57
@k900:0upti.meK900Any sort of consensus algorithm is susceptible to 51% attacks20:25:16
@k900:0upti.meK900And CRDTs are susceptible to splits20:25:28
@magic_rb:matrix.redalder.org@magic_rb:matrix.redalder.org51% is a fun one, ive long been fascinates by distributed systems, but any system you come up with which is based on consensus can be taken over by the 51% thing20:30:40
@k900:0upti.meK900The only thing I can think of is doing some kind of roughtime thing20:31:15
@magic_rb:matrix.redalder.org@magic_rb:matrix.redalder.orgRoughtime?20:31:34

Show newer messages


Back to Room ListRoom Version: 6