cryspen / libcrux

The formally verified crypto library for Rust
https://cryspen.com/libcrux
Apache License 2.0
81 stars 13 forks source link

Make ML-KEM F* extraction panic-free #319

Closed mamonet closed 1 month ago

mamonet commented 3 months ago

Make sure the extracted F* files of libcrux_ml_kem are verifiable. This work is being tracked in branches dev_ml_kem_hax on libcrux and on hax.

franziskuskiefer commented 2 months ago

Catch up with the code changes and push as far as possible this week. Try to get it merged next week.

franziskuskiefer commented 2 months ago

This (loops) are blocked on https://github.com/hacspec/hax/issues/394

karthikbhargavan commented 2 months ago

We have made a plan for this and will update this issue on Monday after finalizing the plan. The high-level point is that for some modules, proving panic freedom requires doing many of the steps needed for full functional verification. So, for these, we believe it would be best to skip panic freedom and go straight to functional proofs. Consequently, we will mark those modules accordingly and close this issue, opening a new one for full verification.

karthikbhargavan commented 1 month ago

We are closing this issue. The rest of the proofs will be done as part of the ML-KEM verificaition: https://github.com/cryspen/libcrux/issues/454