package salsa20
Build not checked sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>
On This Page
Salsa20 family of encryption functions, in pure OCaml
Install
dune-project
Dependency
Authors
Maintainers
Sources
salsa20-1.0.0.tbz
sha256=c816c6658b07d70a23faa85f1582719ec5cb08426f6ca0463abc813af7760a76
sha512=8017293d2d4185ee8bd283bfeeccf4b25730d193f1aca0724afade0a7e304bbf630b66493de9777d531033d7930373ca42c2efb8a1100ebf5d8a20cadd03aa09
Description
utop[0]> #require "nocrypto";;
utop[1]> #require "nocrypto.unix";;
utop[2]> Nocrypto_entropy_unix.initialize ();;
- : unit = ()
utop[3]> let key = Nocrypto.Rng.generate 32;;
val key : Cstruct.t = {Cstruct.buffer = <abstr>; off = 0; len = 32}
utop[4]> let nonce = Cstruct.create 8;;
val nonce : Cstruct.t = {Cstruct.buffer = <abstr>; off = 0; len = 8}
utop[5]> #require "salsa20";;
utop[6]> let state = Salsa20.create key nonce;;
val state : Salsa20.t = <abstr>
utop[7]> Salsa20.encrypt (Cstruct.of_string "My secret text") state |> Cstruct.to_string;;
- : string = " 2\193\020`\142\182\234\188H[R\241V"
Added to opam-repository:
README
Salsa20 family of encryption functions, in pure OCaml
A pure OCaml implementation of Salsa20 encryption function family.
Installation
opam install salsa20Usage
utop[0]> #require "nocrypto";;
utop[1]> #require "nocrypto.unix";;
utop[2]> Nocrypto_entropy_unix.initialize ();;
- : unit = ()
utop[3]> let key = Nocrypto.Rng.generate 32;;
val key : Cstruct.t = {Cstruct.buffer = <abstr>; off = 0; len = 32}
utop[4]> let nonce = Cstruct.create 8;;
val nonce : Cstruct.t = {Cstruct.buffer = <abstr>; off = 0; len = 8}
utop[5]> #require "salsa20";;
utop[6]> let state = Salsa20.create key nonce;;
val state : Salsa20.t = <abstr>
utop[7]> Salsa20.encrypt (Cstruct.of_string "My secret text") state |> Cstruct.to_string;;
- : string = " 2\193\020`\142\182\234\188H[R\241V"- Key can either 32 (recommended) or 16 bytes
- Salsa20 state may use a different hashing function, the recommended
Salsa20_core.salsa20_20_coreis used by default.
Dependencies (5)
-
salsa20-core
>= "0.1.0" & < "1.0.0" -
nocrypto
>= "0.5.3" -
cstruct
>= "1.7.0" -
dune
>= "1.8" -
ocaml
>= "4.02.0"
Dev Dependencies (2)
-
alcotest
with-test -
salsa20-core
with-test & >= "0.3.0"
Optional Dependencies
None
Used by
None
Conflicts
None
Build status
Results of building salsa20 with each compiler on check.ci.ocaml.org, run of against opam-repository 8a77e58. All results for this package.
Each result links to its build log. To keep crawlers from overloading the site, build logs require a GitHub sign-in (see ocurrent/opam-health-check). On your first log, GitHub asks you to “Authorize opam-health-check”, the OCurrent app that runs these checks; it sees only your public profile, not your repositories. The sign-in lasts 30 days.
This version is not in the latest run; the versions below are.
- good Package successfully built
- partial One of the dependencies failed to build
- bad Package failed to build
- n/a Package is not available in this environment
- internal Internal failure
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>
On This Page