package eqaf
Install
Dune Dependency
Authors
Maintainers
Sources
sha256=67d1369c57c4d2d14a10d02632d45e355224abeb98aec08979c0bae5843092ee
sha512=7f75b5d5667e3605f8d95e2d6fda40953129033e6a342ee2c98ee4135c2428e1db87547971868605ab989374757c47c21c5397d4c3da578952d716826a156979
CHANGES.md.html
v0.10 2024-06-14 Kyoto (Japon)
Implement functions provided by
eqaf
on bytes (@FantomeBeignet, #41)Choose the right clock on MSVC systems (@dra27, #40)
Fix the lower bounds about base64 (@hannesm, #45)
Split
eqaf
andeqaf-cstruct
(@dinosaure, @hannesm, #43)
v0.9 2022-07-24 Paris (France)
Add support of OCaml 5.00 (@kit-ty-kate, #37)
Add support for current-bench and fix bad r² for unequal strings (@Zined-Ada, @art-w, #38)
Add benchmark with
bechamel
(@Zineb-Ada, @art-w, #38)
v0.8 2021-08-06 Paris (France)
Fix the check tool on 4.11.0 (@dinosaure, @cfcs, @stedolan, #30) The compilation on 4.11 triggers a case where the locality of the expected value when we test
exists_uint8
must be the same. Otherwise, the access to this value can have a cost which faults our result.Add several utility functions (@cfcs, @dinosaure, #26)
bytes_of_hex
&string_of_hex
, hex decodinghex_of_bytes
&hex_of_string
, hex encodingdivmod
, unsignedint32
division with small divisorsascii_of_int32
, conversion fromint32
to decimalstring
representationlowercase_ascii
&uppercase_ascii
, constant-time implementation ofString.{lower,upper}case_ascii
select_a_if_in_range
, likeselect_int
but only supporting positive rangesint_of_bool
&bool_of_int
, constant-time ofBool.to_int
A documentation exists for each function. The constant-time is checked only systematically for
divmod
.Merge optional sub-packages (@kit-ty-kate, @hannesm, @dinosaure, #27)
cstruct
becomes a required dependency ofeqaf
Fix FreeBSD support and remove support of < OCaml 4.07 and remove the dependency to
bigarray-compat
(@hannesm, @dinosaure, #32)Add a CI on FreeBSD (@dinosaure, @hannesm, #33)
Remove the test
check/check.exe
(@dinosaure, #31) The testcheck/check.exe
is really volatile and should be executed into a controlled environment (for instance, withnice -n19
and a bare-metal computer). We still require the test for any improvement ofeqaf
but it is executed separately from our CI.
v0.7 2020-04-16 Paris (France)
Add
find_uint8
(@dinosaure, @cfcs, #20)Add
exists_uint8
(@dinosaure, @cfcs, #20)
v0.6 2020-03-11 Paris (France)
remove build dependency on dune (@CraigFe, #16)
add bigarray-compat and optional dependencies (@hannesm, #17)
add
select_int
,one_if_not_zero
,zero_if_not_zero
(@cfcs, @dinosaure, #19, #18)
v0.5 2019-07-01 Paris (France)
Delete
min
and use<>
operator to compare length onequal
functionImplementation of
compare_{be,le}{,with_len}
function (@cfcs, @hannesm, @dinosaure)Test on
compare
function (@dinosaure)Unit test on
compare
(@dinosaure)Fuzz test on
compare
(@dinosaure)Documentation (@dinosaure, @cfcs)
v0.4 2019-05-24 Paris (France)
Distribution integrate an attack example
Fuzzer to test
equal
functionUnroll internal loop over 16 bits integers instead 32 bits
Put x86 ASM output in implementation (and audit)
Do second check even if first on fails (bad r²)
Avoid indirection to
Pervasives
functions
v0.3 2019-05-02 Paris (France)
Provide
Eqaf_bigstring
Provide
Eqaf_cstruct
New check tool and delete any dependencies on
eqaf
package (@dinosaure, @hannesm, @cfcs)
NOTE: This version is buggy, you MUST use v0.2 or v0.4
v0.2 2018-10-15 Paris (France)
Dunify project
Update OPAM file
Avoid
core_bench
dependencyMake benchmark to test constant-time on
eqml
Move
equal
function to the OCaml implementation (instead C implementation)Port benchmark on Windows and Mac OSX
v0.1 2018-08-31 Paris (France)
First release