I’m happy to announce the second release of callipyge which is an implementation of
curve25519 in OCaml and eqaf which is an implementation of the equal function on
string in a linear time - specially to avoid timing attacks.
digestif will be updated with
The goal of
callipyge is to have a good implementation of
curve25519 but it should be replaced by a C stub extracted from the HACL Star project (like what Firefox does). So, currently, we provide this implementation which is 3 times slower than the reference implementation.
Then, it’s a good project to introduce
eqaf which provides only one function
equal : string -> string -> bool (a binding to the OpenBSD’s implementation) and ensure to execute this function on linear time and avoid timing attacks. So we did some benchmarks and compare them with the current implementation of
String.equal from the standard library of OCaml. Then, we get expected results: in any situation
eqaf took the same time to compare two
string which is not the case with
So, happy hacking!