- added blake3 / marsupial comparsion benchmark to the benchmarking code
- bumped version to a "quasi-stable" version number
- it may be bumped to a proper 1.x.x release if no additional things are found to be necessary
- fixed remaining incorrect documentation comments referencing a panic after repeated finalization
- update xkcp/k12
- support for xkcp/k12's
ARMv8Asha3
implementation behindTargetImplementation::Armv8Asha3
- note: it doesn't seem rustc is reliable at detecting support for the arm sha3 extensions
- parsing of doxygen comments in
marsupial-sys
- parameterization of
Hash
, permitting constant time equality for hashes of arbitrary length - support for getting out hashes of
KT256
in its canonical length (64 bytes) - property checking of hash functionality
- fuzzing of hash functionality
- made use-after-finalization impossible through the type system
- enabled
target-cpu=native
during benchmarking and tests - the manner in which the security level is specified
- hexadecimal formatting of
Hash
(for now)
- got
marsupial
andmarsupial-sys
on the same version, withmarsupial
depending upon the correct version ofmarsupial-sys
- improved benchmarking program
- slightly more idiomatic
Debug
implementation techniques - addressed a clippy lint in
sys/build.rs
- parameterized
Hasher
to support variableSECURITY_LEVEL
s, and madeRATE
an associated constant ofHasher
to support this correctly - made all of the documentation comments uniform
- comparison against the tiny-keccak crate in the benchmark suite, in addition to comparing responses agains it in the test suite
- support for KT256 (described here)
- full set of test vectors for KT256 from the above document
- benchmarks of marsupial's KT256 bindings
strip.sh
script, which is useful for stripping whitespace from the test vectors provided in the IETF internet draft above
.editorconfig
file
- moved ffi bindings to a separate crate,
marsupial-sys
- some adjustments to documentation comments
- contained custom license combination to
marsupial-sys
,marsupial
is entirely cc0
initial version. changes are documented relative to code previously at https://github.com/oconnor663/kangarootwelve_xkcp.rs
- updated crate dependencies to their latest version
- updated xkcp/k12 and moved to using a git submodule
- adjusted branding to
marsupial
- moved benchmarking to use the criterion crate to permit usage of stable rust for benchmarking
- removed the need to manually run
generate_bindings.sh
by integrating bindgen into thebuild.rs
script
- deleted
k12sum