- Fixes
- Include
Makefile
in hex.pm package so it works correctly with erlang.mk
- Include
- Fixes
- Security fix for Misuse of public apis can result in private key exposure #13 (see report here).
- Library Support
- Legacy KECCAK SHA-3 (thanks to @ukazap)
libdecaf_keccak_sha3:hash/2
,libdecaf_keccak_sha3:hash/3
libdecaf_keccak_sha3:init/1
libdecaf_keccak_sha3:update/2
libdecaf_keccak_sha3:final/1
,libdecaf_keccak_sha3:final/2
- Legacy KECCAK SHA-3 (thanks to @ukazap)
- Enhancements
- New Keypair API for Ed25519 and Ed448 operations (see #13).
- Add legacy Keccak support #15 (see also #12.)
- Upstream update to
ed448goldilocks
versionfeatures-20220828
(vendored as part oflibdecaf
app).
- Fixes
- Remove
xnif_slice
related code and refactor to use regular timeslice reduction bumping (see #7). - Compilation problems on macOS and Erlang/OTP 23+ compatibility.
- Remove
- Enhancements
- Upstream update to
ed448goldilocks
versionfeatures-20220121
(now vendored as part oflibdecaf
app). - Added tests for timeslice checking with large input and/or large output.
- Switch from Travis CI to GitHub Actions.
- Relicense library under MIT license.
- Upstream update to
- Upstream update to
ed448goldilocks
version 1.0 - Library Support
- SPONGERNG
libdecaf_spongerng:init_from_buffer/2
libdecaf_spongerng:init_from_file/3
libdecaf_spongerng:init_from_dev_urandom/0
libdecaf_spongerng:next/2
libdecaf_spongerng:stir/2
- Verious improvements to the build system (more appropriate usage of dirty schedulers and time slices).
- Added Ed25519 to X25519 and Ed448 to X448 conversion functions.
- SPONGERNG
-
Upstream version features-20160902 which adds support for Ed25519ctx according to draft 08 of EdDSA.
-
Library Support
- EdDSA
libdecaf_curve25519:ed25519ctx_sign/3
libdecaf_curve25519:ed25519ctx_verify/4
- EdDSA
-
Upstream version features-20160629
-
Fixes
- Support for modern versions of FreeBSD, NetBSD, and DragonflyBSD.
-
Upstream version f29b338f3788f052441478bb03b5d9e6fdd3eb28
-
Library Support
- ECDH
libdecaf:x25519_generate_key/1
libdecaf:x25519/2
libdecaf:x448_generate_key/1
libdecaf:x448/2
- EdDSA
libdecaf:ed25519_derive_public_key/1
libdecaf:ed25519_sign/4
libdecaf:ed25519_sign_prehash/3
libdecaf:ed25519_verify/4
libdecaf:ed25519_verify_prehash/3
libdecaf:ed448_derive_public_key/1
libdecaf:ed448_sign/5
libdecaf:ed448_sign_prehash/4
libdecaf:ed448_verify/5
libdecaf:ed448_verify_prehash/4
- ECDH
-
Fixes
- Include
stdint.h
to hopefully fix build issues on Linux.
- Include
-
Initial Release
-
Publish to hex.pm.
-
Library Support
- ECDH
libdecaf:decaf_x25519_base_scalarmul/1
libdecaf:decaf_x25519_direct_scalarmul/2
libdecaf:decaf_x448_base_scalarmul/1
libdecaf:decaf_x448_direct_scalarmul/2
- EdDSA
libdecaf:decaf_255_eddsa_derive_public_key/1
libdecaf:decaf_255_eddsa_sign/4
libdecaf:decaf_255_eddsa_verify/4
libdecaf:decaf_448_eddsa_derive_public_key/1
libdecaf:decaf_448_eddsa_sign/5
libdecaf:decaf_448_eddsa_verify/5
- SHA-2
libdecaf:sha2_512/2
- Streaming support
libdecaf:sha2_512_init/0
,libdecaf:sha2_512_update/2
,libdecaf:sha2_512_final/2
- SHA-3
libdecaf:sha3_224/1
libdecaf:sha3_256/1
libdecaf:sha3_384/1
libdecaf:sha3_512/1
libdecaf:shake128/2
libdecaf:shake256/2
- Streaming support
libdecaf:sha3_224_init/0
,libdecaf:sha3_224_update/2
,libdecaf:sha3_224_final/1
libdecaf:sha3_256_init/0
,libdecaf:sha3_256_update/2
,libdecaf:sha3_256_final/1
libdecaf:sha3_384_init/0
,libdecaf:sha3_384_update/2
,libdecaf:sha3_384_final/1
libdecaf:sha3_512_init/0
,libdecaf:sha3_512_update/2
,libdecaf:sha3_512_final/1
libdecaf:shake128_init/0
,libdecaf:shake128_update/2
,libdecaf:shake128_final/2
libdecaf:shake256_init/0
,libdecaf:shake256_update/2
,libdecaf:shake256_final/2
- ECDH
-
Basic Tests based on the draft-irtf-cfrg-eddsa, FIPS 180-4, FIPS 202, and RFC 7748 test vectors.