main.rs 809 B

123456789101112131415161718192021222324252627282930
  1. use std::time::Instant;
  2. use rand::rngs::OsRng;
  3. use rand::RngCore;
  4. fn main() {
  5. let mut msg = [0u8; 65536];
  6. OsRng.fill_bytes(&mut msg);
  7. let mut builder = equix::EquiXBuilder::new();
  8. builder.runtime(equix::RuntimeOption::CompileOnly);
  9. let start = Instant::now();
  10. let sol_array_res = builder.solve(&msg[..]);
  11. let dur = start.elapsed();
  12. println!("solve() took {dur:?}");
  13. for ref sol in sol_array_res.unwrap_or_else(|err| {
  14. panic!(
  15. "Panicked with {err:?} at {}:{} (git sha: {:?})",
  16. file!(),
  17. line!(),
  18. option_env!("GIT_SHA")
  19. )
  20. }) {
  21. let start_v = Instant::now();
  22. let _ = builder.verify(&msg[..], sol);
  23. let dur_v = start_v.elapsed();
  24. println!("verify() took {dur_v:?}");
  25. }
  26. }