Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Generate test vectors deterministically #88

Open
bifurcation opened this issue Feb 14, 2023 · 0 comments
Open

Generate test vectors deterministically #88

bifurcation opened this issue Feb 14, 2023 · 0 comments

Comments

@bifurcation
Copy link
Collaborator

The test vectors contain a lot of fields that are freely generated by the creator. These degrees of freedom could be removed by defining a deterministic pseudo-random generator from which they should be derived. For example, I implemented a scheme in MLSpp where each test vector creates a seed value as Extract("", <type of test vector>), and then the fields in the test vector are populated by calling ExpandWithLabel from that seed.

Generating test vectors deterministically makes it easier to look at diffs between test vectors. In many cases, this will allow verification that two implementations generate the same test vectors, in addition to verifying a generate/verify round-trip. (The exception being cases where the client injects randomness, e.g., randomized signature schemes or reuse_guard.)

@bifurcation bifurcation added this to the Test vector finalization milestone Feb 14, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

No branches or pull requests

1 participant