Uh oh!
There was an error while loading. Please reload this page.
Blake2: add missing types of common digest sizes - #564
Conversation
BLAKE2s-128 BLAKE2b-128 BLAKE2b-256
Also, I've noticed that only the Any guidance on this would be very welcome! |
newpavlov
commented
Apr 27, 2024
Could you please link cases where those variations are used in practice?
We could add tests for other variants, but we would have to generate tests ourselves. Ideally, we would use "official" test vectors, but we probably couldn't find them at the time. |
HeCorr
commented
Apr 27, 2024
I can't, but I personally always use either 256 or 128 if I need the hash to be shorter. What I can link you though are other projects which do include them and even other less common sizes (160, 384..): |
StackOverflowExcept1on
commented
Apr 30, 2024
I have similar problem that I need hash of 256 bit size, but this crate does not provide BLAKE2b-256. |
HeCorr
commented
Apr 30, 2024
@StackOverflowExcept1on this is how you can currently generate a Blake2b-256 hash: use blake2::{Blake2b,Digest, digest::consts::U32};typeBlake2b256 = Blake2b<U32>;letmut hasher = Blake2b256::new();
hasher.update(b"my_input");let res = hasher.finalize(); |
## Added - `zeroize` support (#545) - `Blake2b128`, `Blake2b256`, `Blake2s128` type aliases (#564) - `CustomizedInit` support (#664) - `alloc` crate feature (#678) ## Changed - Edition changed to 2024 and MSRV bumped to 1.85 (#652) - Relax MSRV policy and allow MSRV bumps in patch releases - Update to `digest` v0.11 - Replace type aliases with newtypes (#678) ## Removed - `std` crate feature (#678) - `Blake2bVar` and `Blake2sVar` types (#744) - SIMD support (#898) ## Fixed - Handling of unkeyed hashes in keyed mode (#510, #612)
See comment #67.
This PR adds the following common fixed digest sizes:
BLAKE2s-128BLAKE2b-128BLAKE2b-256Unsure if I should also add the Mac variants, please let me know!