FIPS 203 Parse; uniform sampler for the ML-KEM public matrix.
Uniform rejection sampler implementing the Parse function from FIPS 203. Samples uniform elements modulo q from a SHAKE-128 byte stream, rejecting values outside the valid range. The rejection loop is constant-time, eliminating data-dependent timing variation. This core is a required primitive for generating the public matrix A in all ML-KEM parameter sets.
The Rejection Sampler is available now as verified soft IP, foundry-portable and ready for integration.
Foundry-portable design targeting any process node. Technology-independent by default. Synthesis scripts and constraint templates included.
Automated pass/fail testbenches that verify RTL output byte-exact against golden reference vectors on every run.
Independent software oracle for comparison and integration testing. Matches the NIST/RFC specification at every parameter set.
Full cocotb-based test infrastructure for rapid integration into customer verification flows and CI pipelines.
Ready-to-run scripts for technology-independent synthesis. Constraint templates for timing closure on your target process.
Complete interface specification, timing diagrams, integration examples, and design-in guidance for SoC assembly.
Firm/hard IP (hardened netlist for a target node) available on foundry enablement.
Detailed specifications, block diagrams, and resource estimates for the Rejection Sampler. NDA-protected evaluation available.