GaloisInc / hacrypto

Experiments in high-assurance crypto.
BSD 3-Clause "New" or "Revised" License
46 stars 14 forks source link

generalize test vector support across implementations #46

Open kiniry opened 10 years ago

kiniry commented 10 years ago

After auditing a dozen or more crypto libraries we have found that the best library authors do in terms of testing/validation is to run a handful of published test vectors (e.g., NIST standard or submission vectors). So, while these vectors are hand-encoded into unit/system tests in dozens of libraries, and thus we can run the vectors by triggering test runs, we'd rather encode them once-and-for-all, abstractly, generically, in the library/language-neutral specification we are writing. Then, with appropriate automated tool support in our V&V infrastructure, we can automatically inject the vectors into all implementations. The first stage of this work is showing how to encode the vectors, so I'll take responsibility for that in our EBON system design (#1, #3, #5).