De-MLS FURPS
Functionality
- A messaging group can have multiple stewards
- A member can leave a messaging group
- Groups can resync after state partition
Usability
- De-MLS protocol with multi-steward support is published in a specification
- The specification describes how members can leave the group
- The specification describes how groups can resync after a state partition
- The specification contains implementation suggestions to guide developers
- An API spec is published that exposes de-MLS functionality and abstracts consensus
- De-MLS is implemented in Rust
- The De-MLS API is available in Rust and C
- De-MLS is included in the Chat SDK protocol stack specification
- De-MLS is integrated into a working ChatSDK module deployed to Logos Core
Reliability
Performance
- The consensus mechanism is scalable to groups of 10000 members
- The integrated de-MLS protocol is scalable to groups of 10000 members
- Group state can be updated within a reasonable amount of time
Supportability
- Hashgraph-like consensus is separated out into its own library for modularity
Miscellaneous dependencies:
- Dependency on DST for benchmarking of consensus mechanism
- Dependency on DST for benchmarking of de-MLS integrated protocol
- Dependency on ChatSDK to clarify requirements for API