mlswg / mls-implementations

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

Add tree operations test vector #102

Closed mulmarta closed 1 year ago

mulmarta commented 1 year ago

As discussed, simple tests for applying operations to the tree. The trees were generated using cipher suite 1; let me know if this info is useful and I should add it to description.

bifurcation commented 1 year ago

MLSpp passed on these on the first try! @mulmarta if you could resolve the conflicts, this is good to merge.

TWal commented 1 year ago

Just a quick note: the ratchet tree serialization is malleable, because the protocol document says implementations SHOULD (not MUST) omit blank nodes at the right end of the tree.

bifurcation commented 1 year ago

I would be open to a spec PR that would change that SHOULD to MUST.

TWal commented 1 year ago

Shouldn't this test vector also test applying UpdatePath? There are some non-trivial things happening there, with the parent-hash computation. Or do you consider it's something that belong to the TreeKEM test vector?

bifurcation commented 1 year ago

I think that's covered in the TreeKEM test vector.