this repo has no description
1opam-version: "2.0"
2maintainer: [ "Eyyüb Sari <eyyub.sari@epitech.eu>"
3 "Romain Calascibetta <romain.calascibetta@gmail.com>" ]
4authors: [ "Eyyüb Sari <eyyub.sari@epitech.eu>"
5 "Romain Calascibetta <romain.calascibetta@gmail.com>" ]
6homepage: "https://github.com/mirage/digestif"
7bug-reports: "https://github.com/mirage/digestif/issues"
8dev-repo: "git+https://github.com/mirage/digestif.git"
9doc: "https://mirage.github.io/digestif/"
10license: "MIT"
11
12build: [ "jbuilder" "build" "-p" name "-j" jobs ]
13
14depends: [
15 "ocaml" {>= "4.03.0" & < "5.0"}
16 "jbuilder" {>= "1.0+beta7"}
17 "base-bytes"
18 "base-bigarray"
19]
20synopsis: "Hash algorithms in C and OCaml"
21description: """
22[](https://travis-ci.org/mirage/digestif)
23
24Digestif is a toolbox which implements hashes:
25
26 * SHA1
27 * SHA224
28 * SHA256
29 * SHA384
30 * SHA512
31 * BLAKE2B
32 * BLAKE2S
33 * RIPEMD160
34
35Digestif uses a trick about linking and let the end-user to choose which
36implementation he wants to use. We provide 2 implementations:
37
38 * C implementation with `digestif.c`
39 * OCaml implementation with `digestif.ocaml`
40
41Both are well-tested. However, OCaml implementation is slower than the C
42implementation.
43
44
45
46## API
47
48For each hash, we implement the same API which is referentially transparent.
49Then, on the top of these, we reflect functions (like `digesti` or `hmaci`) with
50GADT - however, conversion from GADT to hash type is not possible (but you can
51destruct GADT to a `string`).
52
53## Build Requirements
54
55 * OCaml >= 4.03.0 (may be less but need test)
56 * `base-bytes` meta-package
57 * Bigarray module (provided by the standard library of OCaml)
58 * `dime` to build the project
59
60If you want to compile the test program, you need:
61
62 * `alcotest`
63
64## Credits
65
66This work is from the [nocrypto](https://github.com/mirleft/nocrypto) library
67and the Vincent hanquez's work in
68[ocaml-sha](https://github.com/vincenthz/ocaml-sha).
69
70All credits appear in the begin of files and this library is motivated by two reasons:
71
72 * delete the dependancy with `nocrypto` if you don't use the encryption (and common) part
73 * aggregate all hashes functions in one library"""
74url {
75 src:
76 "https://github.com/mirage/digestif/releases/download/v0.6.1/digestif-0.6.1.tbz"
77 checksum: [
78 "sha256=8def179e27db20f1ed335696690029ea1ecf2fa769c507fb3319745438ee7da3"
79 "md5=9100e0067018123634d3959eb37fdbd2"
80 ]
81}
82available: [ arch != "s390x" ]