package digestif
 sectionYPositions = computeSectionYPositions($el), 10)"
  x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
  >
  
  
On This Page
  - v1.2.0 2024-03-18 Paris (France)
- v1.1.4 2023-03-23 Paris (France)
- v1.1.3 2022-10-20 Paris (France)
- v1.1.2 2022-04-08 Paris (France)
- v1.1.1 2022-03-28 Paradou (France)
- v1.1.0 2021-10-11 Paris (France)
- v1.0.1 2020-02-08 Paris (France)
- v1.0.0 2020-11-02 Paris (France)
- v0.9.0 2020-07-10 Paris (France)
- v0.8.1 2020-06-15 Paris (France)
- v0.8.0 2019-20-09 Saint Louis (Sénégal)
- v0.7.3 2019-07-09 Paris (France)
- v0.7.2 2019-05-16 Paris (France)
- v0.7.1 2018-11-15 Paris (France)
- v0.7 2018-10-15 Paris (France)
- v0.6.1 2018-07-24 Paris (France)
- v0.6 2018-07-05 Paris (France)
- v0.4 2017-10-30 Mysore / ಮೈಸೂರು (India)
- v0.3 2017-07-21 Phnom Penh (Cambodia)
- v0.2 2017-07-05 Phnom Penh (Cambodia)
- v0.1 2017-05-12 Rạch Giá (Vietnam)
  Hashes implementations (SHA*, RIPEMD160, BLAKE2* and MD5)
Install
    
    dune-project
 Dependency
Authors
Maintainers
Sources
  
    
      digestif-1.3.0.tbz
    
    
        
    
  
  
  
    
  
  
    
  
        sha256=9a6cdcb332539c87f4723fc3bd73626b2675a7b1161fdf0fed309186ce18f427
    
    
  sha512=986d98eeb79f75ff69842a7ed4b93b4ff3795df7c09d455ca0c41408d67415a6743253a96c7e0de653dc62db95cb1fd29b1c654472fa11259cddde65dd5dd352
    
    
  doc/CHANGES.html
v1.3.0 2025-04-14 Paris (France)
- Use CAMLexternrather thanexternincaml_*forward declarations to support bytecode linking on Windows (@jonahbeckford, #157)
- Add x-maintenance-intentinto OPAM file (@hannesm, #158)
- Implement feedable hmac (@reynir, #155)
v1.2.0 2024-03-18 Paris (France)
- Update the description to include SHA3 (@Leonidas-from-XIV, #146)
- Add a new type hash', a polymorphic variant (@reynir, @dinosaure, #150)
- Lint fmtdependency lower-bound (@reynir, #152)
- Add get_into_bytesfunction and a fuzzer about it (@reynir, @dinosaure, #149)
v1.1.4 2023-03-23 Paris (France)
- Add a test about CVE-2022-37454 (@dinosaure, #143)
- Lint the distribution and delete the pkg-configdependency (@dinosuare, 1eff5c5)
- Fix primitives used for bytes and fix the support of js_of_ocaml5 (@hhugo, #144)
v1.1.3 2022-10-20 Paris (France)
- Support MSVC compiler (@jonahbeckford, #137)
- Fix CI on Windows (test_conv.mlrequires/dev/urandom) (@dinosaure, #138)
- Fix threads support (@dinosaure, #140)
- Delete the META trick needed for MirageOS 3 when we install digestif(@dinosaure, #141) This version ofdigestifbreaks the compatibility with MirageOS 3 andocaml-freestanding. This PR should unlock the ability to usedune-cache.
v1.1.2 2022-04-08 Paris (France)
- Minor update on the README.md (@punchagan, #133)
- Support only OCaml >= 4.08, update with ocamlformat.0.21.0and removebigarray-compatdependency (@hannesm, #134)
v1.1.1 2022-03-28 Paradou (France)
- Hide C functions (sha3_keccakf) (@hannesm, #125)
- Use ocamlto runinstall.mlinstead of a shebang (@Nymphium, #127)
- Use command -vinstead ofwhich(@Numphium, #126)
- Add @sincemeta-data in documentation (@c-cube, @dinosaure, #128)
- Update the README.md (@dinosaure, @mimoo, #130)
- ocaml-solo5provides- __ocaml_solo5__instead of- __ocaml_freestanding__(@dinosaure, #131)
v1.1.0 2021-10-11 Paris (France)
- Add Keccak256 module (ethereum padding) (@maxtori, @dinosaure, #118)
- Update README.md to include the documentation (@mimoo, @dinosaure, 65a5c12)
- Remove deprecated function from fmtlibrary (@dinosaure, #121)
- NOTE: This version lost the support of OCaml 4.03 and OCaml 4.04.
v1.0.1 2020-02-08 Paris (France)
- Fix esysupport (@dinosaure, #115)
- Fix big-endian support (@dinosaure, #113)
v1.0.0 2020-11-02 Paris (France)
- breaking changes Upgrade the library with MirageOS 3.9 (new layout of artifacts) Add tests about compilation of unikernels (execution and link) (#105, @dinosaure, @hannesm)
- Fix esyinstallation (#104, @dinosaure)
- breaking changes Better GADT (#103, @dinosaure) As far as I can tell, nobody really use this part of digestif. The idea is to provide a GADT which contains the type of the hash. From third-part libraries point-of-view, it's better to pattern-match with such information instead to use a polymorphic variant (as before).
- breaking changes key used for HMAC is a constant string(#101, @dinosaure, @hannesm) The key should not follow the same type as the digest value (string,bytes,bigstring). This update restricts the user to user only constant key (as astring).
v0.9.0 2020-07-10 Paris (France)
- Add sha3 implementation (#98), @lyrm, @dinosaure, @hannesm and @cfcs
v0.8.1 2020-06-15 Paris (France)
- Move to dune.2.6.0(#97)
- Apply ocamlformat.0.14.2(#97)
- Fix tests according alcotest.1.0.0(#95)
v0.8.0 2019-20-09 Saint Louis (Sénégal)
- Fake version to prioritize dune's variants instead of old linking trick
- Use stdlib-shimsto keep compatibility with < ocaml.4.07.0
v0.7.3 2019-07-09 Paris (France)
- Fix bug about specialization of BLAKE2{B,S} (#85, #86) reported by @samoht, fixed by @dinosaure, reviewed by @hannes and @cfcs
v0.7.2 2019-05-16 Paris (France)
- Add conflict with < mirage-xen-posix.3.1.0packages (@hannesm)
- Add a note on README.md about the linking-trick and order of dependencies (@rizo)
- Use experimental feature of variants with - dune(@dinosaure, review @rgrinberg)- digestifrequires at least- dune.1.9.2
v0.7.1 2018-11-15 Paris (France)
- Cross compilation adjustments (@hannesm) (# 76)
- Add the WHIRLPOOL hash algorithm (@clecat) (#77)
- Backport fix on opam file (@dinosaure, @kit-ty-kate)
v0.7 2018-10-15 Paris (France)
- Fixed HMAC on BLAKE2{S,B} (@emillon) (#46, #51)
- Fixed convenient_of_hex(@dinosaure, @hannesm, @cfcs) (#55)
- Add of_raw_string/to_raw_string(@samoht) (#57)
- Test digestifon solo5 and xen backends (@samoht)
- breaking change, commont type tis an abstract type (#58, #56)
- Fixed META file (@dinosaure, @g2p) (#75)
- New dependency eqaf(@dinosaure, @cfcs, @hannesm) (constant-time equal function) (#33, #34, #48, #50, #52, #65)
- Remove Obj.magicin common implementation (@dinosaure, @samoht) (#61, #62)
- Add conveniences functions in common implementation (@hcarty) (#63)
- Add option-returning functions in common implementation (@harcty) (#63)
- Verify length of string on of_raw_stringfunction (@hcarty) (#63)
- Release runtime lock (@andersfugmann, @dinosaure, @cfcs) (#69, #70)
- Bounds check (@cfcs, @dinosaure) (#71, #72)
- Fixed linking problem (@andersfugmann, @g2p, @dinosaure) (#49, #53, #73, #74)
- Update OPAM file (@dinosaure)
v0.6.1 2018-07-24 Paris (France)
- breaking change API: Digestif implements a true linking trick. End-user need to explicitely link with digestif.{c,ocaml}and it needs to be the first of your dependencies.
- move to jbuilder/dune
v0.6 2018-07-05 Paris (France)
- breaking change API: From a consensus between people who use digestif, we decide to delete*.Bytes.*and*.Bigstring.*sub-modules. We replace it byfeed_{bytes,string,bigstring}(digest_, andhmac_too)
- breaking change semantic: streaming and referentially transparent Add feedi_{bytes,string,bigstring},digesti_{bytes,string,bigstring}andhmaci_{bytes,string,bigstring}(@hannesm, @cfcs)
- Constant time for eq/neqfunctions (@cfcs)
- breaking change semantic on compareandunsafe_compare:compareis not a lexicographical comparison function (rename tounsafe_compare) (@cfcs)
- Add consistent_of_hex(@hannesm, @cfcs)
v0.4 2017-10-30 Mysore / ಮೈಸೂರು (India)
- Add an automatised test suit
- Add the RIPEMD160 hash algorithm
- Add the BLAKE2S hash algorithm
- Update authors
- Add feed_bytesandfeed_bigstringforBytesandBigstring
v0.3 2017-07-21 Phnom Penh (Cambodia)
- Fixed issue #6
- Make a new test suit
v0.2 2017-07-05 Phnom Penh (Cambodia)
- Implementation of the hash function in pure OCaml
- Link improvement (à la mtime) to decide to use the C stub or the OCaml implementation
- Improvement of the common interface (pretty-print, type t, etc.)
v0.1 2017-05-12 Rạch Giá (Vietnam)
- First release
 sectionYPositions = computeSectionYPositions($el), 10)"
  x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
  >
  
  
  On This Page
  - v1.2.0 2024-03-18 Paris (France)
- v1.1.4 2023-03-23 Paris (France)
- v1.1.3 2022-10-20 Paris (France)
- v1.1.2 2022-04-08 Paris (France)
- v1.1.1 2022-03-28 Paradou (France)
- v1.1.0 2021-10-11 Paris (France)
- v1.0.1 2020-02-08 Paris (France)
- v1.0.0 2020-11-02 Paris (France)
- v0.9.0 2020-07-10 Paris (France)
- v0.8.1 2020-06-15 Paris (France)
- v0.8.0 2019-20-09 Saint Louis (Sénégal)
- v0.7.3 2019-07-09 Paris (France)
- v0.7.2 2019-05-16 Paris (France)
- v0.7.1 2018-11-15 Paris (France)
- v0.7 2018-10-15 Paris (France)
- v0.6.1 2018-07-24 Paris (France)
- v0.6 2018-07-05 Paris (France)
- v0.4 2017-10-30 Mysore / ಮೈಸೂರು (India)
- v0.3 2017-07-21 Phnom Penh (Cambodia)
- v0.2 2017-07-05 Phnom Penh (Cambodia)
- v0.1 2017-05-12 Rạch Giá (Vietnam)