Skip to content
This repository has been archived by the owner on Sep 20, 2023. It is now read-only.

Support keyed BLAKE2 #196

Open
mithrandi opened this issue Oct 7, 2017 · 1 comment
Open

Support keyed BLAKE2 #196

mithrandi opened this issue Oct 7, 2017 · 1 comment
Labels

Comments

@mithrandi
Copy link

This is probably more of an API issue than an implementation issue, since the current hash algorithm APIs make no provision for keying.

@vincenthz
Copy link
Member

This is typically API available in Crypto.MAC. The C files already support the functionality:

e.g.

int blake2b_init_key( blake2b_state *S, size_t outlen, const void *key, size_t keylen )

It just need to be exposed

MatthiasValvekens added a commit to MatthiasValvekens/cryptonite that referenced this issue Apr 24, 2022
This fixes haskell-crypto#196.

 - FFI: expose keyed init functions for all Blake2 variants
 - Add HashBlake2 typeclass in Crypto.Hash.Blake2 to support keyed init
 - Add KeyedBlake2 module to Crypto.MAC
MatthiasValvekens added a commit to MatthiasValvekens/cryptonite that referenced this issue Sep 23, 2023
This fixes haskell-crypto#196.

 - FFI: expose keyed init functions for all Blake2 variants
 - Add HashBlake2 typeclass in Crypto.Hash.Blake2 to support keyed init
 - Add KeyedBlake2 module to Crypto.MAC

Uses KAT vectors from BLAKE2/BLAKE2 repository, plus quickcheck tests
analogous to those in the KAT_KMAC test module.
MatthiasValvekens added a commit to MatthiasValvekens/cryptonite that referenced this issue Sep 23, 2023
This fixes haskell-crypto#196.

 - FFI: expose keyed init functions for all Blake2 variants
 - Add HashBlake2 typeclass in Crypto.Hash.Blake2 to support keyed init
 - Add KeyedBlake2 module to Crypto.MAC

Uses KAT vectors from BLAKE2/BLAKE2 repository, plus quickcheck tests
analogous to those in the KAT_KMAC test module.
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

No branches or pull requests

2 participants