Negative test vectors for invalid encapsulation keys, testing every value in the range [q, 2¹²) and every position in the key.
"Unlucky" vectors that require an unusually large number of XOF reads. (Specifically, 575 bytes, which would ordinarily happen with probability 2⁻³⁸.)
Vectors that fail if strcmp()
is used in ML-KEM.Decaps.
Accumulated vectors (derived from the reference pq-crystals implementation)
for testing randomly reachable edge cases without checking in large amounts
of data, including an extended run of one million tests.
Intermediate values for testing and debugging each intermediate step and partial algorithm. (Previously announced).
References to other test vectors.
--
You received this message because you are subscribed to the Google Groups "pqc-forum" group.
To unsubscribe from this group and stop receiving emails from it, send an email to pqc-forum+...@list.nist.gov.
To view this discussion on the web visit https://groups.google.com/a/list.nist.gov/d/msgid/pqc-forum/b48899fb-f169-4f31-891f-296af7855945%40app.fastmail.com.
Attachments:
- vectors.tar.gz
--
You received this message because you are subscribed to the Google Groups "pqc-forum" group.
To unsubscribe from this group and stop receiving emails from it, send an email to pqc-forum+...@list.nist.gov.
To view this discussion on the web visit https://groups.google.com/a/list.nist.gov/d/msgid/pqc-forum/fg_2tkiKva9A0wZ9U7XM2cUF3nVqdxLvgWgQ9oTCc2KiRg_YTNDMNftrJ_zuhXfmTG7rZNuFNlX6Z5GcEKzPGh0AeKaGfwgMGWf8Xrjkyv4%3D%40vialprado.com.
You are right, nice catch. I called the CPA keygen before getting the randomness for the FO rejection. It seems like the reference implementation does the same thing (which explains why the official test vectors passed, and why Fillipo did not notice it). I will either swap the order for Wycheproof, or maybe just make two explicitly different entropy fields.