← All repos

digestif

Simple hash algorithms in OCaml

blake2bchashmd5ocamlsha1sha224sha256sha384sha512
Browse cluster: OCaml Systems and Utilities
442commits
24contributors
5languages

Tech stack & purpose

Digestif is a toolbox that implements multiple hash algorithms including MD5, SHA1, SHA2, SHA3, WHIRLPOOL, BLAKE2B, BLAKE2S, and RIPEMD160 in both C and OCaml. The library is built for OCaml and provides a consistent API across all hash functions while allowing users to choose between a faster C implementation or a slower but pure OCaml implementation. It includes security-conscious features like constant-time comparison to protect against timing attacks and is designed to be platform-agnostic, including support for MirageOS and JavaScript compilation via js_of_ocaml. The project was created by Romain Calascibetta and builds upon prior work from the nocrypto library and ocaml-sha.

Languages

OCaml
61.3%
C
38.6%
Shell
0.1%
Makefile
0.0%
Dune
0.0%

Contributors