mlswg / mls-implementations

Coordination of implementation and interop specific details
110 stars 14 forks source link

Test vector Messages public_message_commit has no membership_tag MAC #175

Closed RonPeters closed 10 months ago

RonPeters commented 10 months ago

I'm trying to figure out if I'm misinterpreting RFC 9420 or if the Messages test vector for public_message_commit is not correct.

In short, the message is a Public Message where PublicMessage.content.sender.sender_type == member. According to Encoding and Decoding a Public Message, it should end with a MAC membership_tag after the FramedContentAuthData. But the serialized message in the public_message_commit test vector has no data after the FramedContentAuthData (which ends with its own confirmation_tag MAC, but this is obviously different).

Am I misinterpreting the spec, or is the test vector malformed?

RonPeters commented 10 months ago

I thought I was very thorough in reading the raw byte sequences, but at some point during development, my parser is now finding the MAC. So I will say the test vector is correct and my code was at fault.