project-everest / mitls-fstar

Verified implementation of TLS 1.3 in F*
https://www.mitls.org
Other
173 stars 16 forks source link

Add support for local verification #239

Open s-zanella opened 5 years ago

s-zanella commented 5 years ago

This adds support for verification of modules in mitls-fstar without having to first build hacl-star.

The trick is to verify dependencies in hacl-star, if needed, without providers/evercrypt/fst in scope. The results are cached locally and used for verification, but can't be used for extraction because mitls-fstar relies on --cmi to e.g. inline EverCrypt.StaticConfig and EverCrypt.TargetConfig definitions, and for soundness of extraction of StackInline functions such as EverCrypt.Hash.alloca.

This PR will

Thanks @nik and @msprotz for suggesting this could be useful and discussing solutions.