Better Encrypted Group Chat
Summary: Trail of Bits describes molasses, a Rust implementation of the Message Layer Security (MLS) protocol that implements most of MLS draft 6, and says its main contribution has been detecting errors in the specification and other implementations through unit and interoperability testing. The post explains that existing group messaging designs such as iMessage require N-1 encryptions per message and that sender-key designs used by Signal, WhatsApp, and Keybase require Θ(N²) auxiliary messages on every group change, while MLS uses a ratchet tree (TreeKEM) to send new keying information to subsets of the group.
Why it matters: The post states that a spec error in draft 6 made it impossible for members to be added to any group, and that such errors are hard to catch by reading the spec alone - which is why the implementation work matters to anyone relying on MLS for group chat security.
Read the original at Trail of Bits Blog ↗