Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Using Blake3 as a hash function #103

Closed
aniampio opened this issue Jan 27, 2020 · 1 comment
Closed

Using Blake3 as a hash function #103

aniampio opened this issue Jan 27, 2020 · 1 comment

Comments

@aniampio
Copy link
Contributor

Recently, Jack O'Connor, Samuel Neves, Jean-Philippe Aumasson, and Zooko published Blake3 hash function, which can be used as PRF (pseudo-random function), MAC (message authentication code), KDF (key derivation function), and XOF (extendable-output function), as well as a regular hash: link

Blake3 is supposedly much faster than previous Blakes or MD5, SHA-1, SHA-2, SHA-3. It's secure against length extension, unlike SHA-2 and highly parallelizable across any number of threads and SIMD lanes, because it's a Merkle tree on the inside.

There are Rust and C implementations available.

Since we use or will use many times various hash functions (for example in Sphinx, but also we might need it for some authentication, or in Ococnut), we might consider using Blake3 (hence swap in the existing code or add in a new one) and measure whether it indeed speeds up things.

@tommyv1987
Copy link
Contributor

Closing issue, archiving for future planning session — the issues / tasks have moved to a new project board, so we can evaluate shortly.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants