Files
amethyst/quartz
Claude f7f550e354 feat: implement P1 RFC 9420 compliance fixes
1. RatchetTree trailing blank stripping (RFC 9420 Section 7.8):
   encodeTls now omits trailing blank nodes, matching OpenMLS/mls-rs
   wire format. Reduces serialized tree size.

2. X.509 credential support (RFC 9420 Section 5.3):
   Added Credential.X509 class with cert chain (List<ByteArray>).
   decodeTls now handles credential type 2 instead of throwing.
   Full encoding/decoding round-trip supported.

3. ReInit proposal (RFC 9420 Section 12.1.5):
   Added Proposal.ReInit with groupId, version, cipherSuite, extensions.
   Full TLS encoding/decoding for interop with implementations that
   use group reinitialization.

4. ExternalInit proposal (RFC 9420 Section 12.1.6):
   Added Proposal.ExternalInit with kemOutput field.
   Enables external commit flow for non-members joining groups.

5. Membership MAC verification (RFC 9420 Section 6.2):
   Added verifyMembershipTag() to MlsGroup for PublicMessage
   authentication using HMAC(membership_key, AuthenticatedContent).

All 120 MLS tests pass (41 interop + 79 unit), 0 failures.

https://claude.ai/code/session_01NocQDWj2Y92FugjfgazzL3
2026-04-03 23:30:20 +00:00
..
2026-04-01 15:45:46 -04:00