salsa20-core

The Salsa20 core functions, in OCaml
README


The Salsa20 core functions, in OCaml

An OCaml implementation of Salsa20 Core functions, both Salsa20/20 Core and the reduced Salsa20/8 Core and Salsa20/12 Core functions.
The hot loop is implemented in C for efficiency reasons.

Salsa 20 Core are functions from 64-byte strings to 64-byte strings.

Installation

opam install salsa20-core

Usage

utop[0]> #require "salsa20-core";;
utop[1]> 0
|> Char.chr
|> String.make 64
|> Cstruct.of_string
|> Salsa20_core.salsa20_20_core (* or salsa20_12_core / salsa20_8_core *)
|> Cstruct.to_string;;
- : string =
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
Install
Sources
1.1.0.tar.gz
md5=176ad572923a6fb22160c376a5300a83
sha512=c10b673774d4379600bb09860827820bce1fd6efd4f33bfaa9184e5b623640ab37ad717e2330c5a7f418fb1ac89a8a3bc3650e95f1d0469acac593b6e3e378d1
Dependencies
alcotest
with-test
ocaml
>= "4.02.0"
cstruct
>= "6.0.0"
dune
>= "1.3.0"
Reverse Dependencies
salsa20
>= "1.1.0"
scrypt-kdf
>= "0.4.0"