1
0
Fork 0
mirror of https://github.com/BLAKE3-team/BLAKE3 synced 2024-05-21 23:36:03 +02:00
BLAKE3/c
Jack O'Connor d7d71b2c5f move 0-length checks to the top-level C API functions 2020-01-10 10:49:33 -05:00
..
.gitignore remove the C code's duplicated copy of the test vectors 2020-01-09 09:48:52 -05:00
Makefile merge BLAKE3-c into this repo 2020-01-09 09:48:52 -05:00
README.md replace the C code README with a "not yet ready" remark 2020-01-09 09:48:52 -05:00
blake3.c move 0-length checks to the top-level C API functions 2020-01-10 10:49:33 -05:00
blake3.h merge BLAKE3-c into this repo 2020-01-09 09:48:52 -05:00
blake3_avx2.c merge BLAKE3-c into this repo 2020-01-09 09:48:52 -05:00
blake3_avx512.c merge BLAKE3-c into this repo 2020-01-09 09:48:52 -05:00
blake3_dispatch.c merge BLAKE3-c into this repo 2020-01-09 09:48:52 -05:00
blake3_impl.h merge BLAKE3-c into this repo 2020-01-09 09:48:52 -05:00
blake3_neon.c merge BLAKE3-c into this repo 2020-01-09 09:48:52 -05:00
blake3_portable.c merge BLAKE3-c into this repo 2020-01-09 09:48:52 -05:00
blake3_sse41.c merge BLAKE3-c into this repo 2020-01-09 09:48:52 -05:00
main.c merge BLAKE3-c into this repo 2020-01-09 09:48:52 -05:00
test.py remove the C code's duplicated copy of the test vectors 2020-01-09 09:48:52 -05:00

This is the C implementation of BLAKE3. It's tested, and parts of it are linked into the Rust implementation for AVX-512 and NEON support. However, it doesn't yet have a friendly public interface.

This implementation is simpler than the Rust implementation. It doesn't support multithreading, and it doesn't parallelize parent hashes, so throughput is lower.