| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2019-12-31 | WIPbg_reader | Jack O'Connor | |
| 2019-12-29 | add the guts module to share code with Bao | Jack O'Connor | |
| 2019-12-28 | make derive_key take a key of any length | Jack O'Connor | |
| The previous version of this API called for a key of exactly 256 bits. That's good for optimal performance, but it would mean losing the use-with-other-algorithms property for applications whose input keys are a different size. There's no way for an abstraction over the previous version to provide reliable domain separation for the "extract" step. | |||
| 2019-12-24 | switch back to counting trailing 0 bits | Jack O'Connor | |
| These things are totally equivalent, and I keep going back and forth, but now I think this is slightly clearer. | |||
| 2019-12-24 | use self.flags instead of self.chunk_state.flags in the reference impl | Jack O'Connor | |
| This is clearer, and because of padding requirements it doesn't change the size of the Hasher struct. (We have a test for this.) | |||
| 2019-12-24 | switch from counting trailing 0 bits to counting trailing 1 bits | Jack O'Connor | |
| 2019-12-23 | get rid of unnecessary variables in push_chunk_chaining_value | Jack O'Connor | |
| 2019-12-23 | add a parent_cv helper function to the reference impl | Jack O'Connor | |
| Also use fewer array references (the compiler doesn't care) be more explicit with a `new_cv` mutable variable. This clarifies push_chunk_chaining_value just a bit. Since that's the trickiest function in the entire thing, it's good to clarify it. (It also gets excerpted directly into the spec.) | |||
| 2019-12-23 | switch to simplified rotations | Jack O'Connor | |
| This is a performance improvement on modern x86 chips (Skylake and later), and the LLVM optimizer can convert these to AVX-512 rotations when those are enabled. | |||
| 2019-12-22 | rework push_chunk_chaining_value in terms of trailing 0's | Jack O'Connor | |
| 2019-12-15 | add a readme link to b3sum | Jack O'Connor | |
| 2019-12-15 | add a LICENSE file including CC0 and Apache 2.0 | Jack O'Connor | |
| 2019-12-14 | docs tweaks | Jack O'Connor | |
| 2019-12-14 | a few more comments in reference_impl.rs | Jack O'Connor | |
| 2019-12-13 | show the default value for b3sum --length | Jack O'Connor | |
| 2019-12-13 | make the b3sum --help text wording more consistent | Jack O'Connor | |
| 2019-12-13 | make b3sum --keyed and --derive-key read the key from stdin | Jack O'Connor | |
| Putting secret keys on the command line is bad practice, because command line args are usually globally visible within the OS. Even if these flags are mostly intended for testing and experimentation, we might as well do the right thing. Plus this saves people the trouble of hex encoding their keys. | |||
| 2019-12-13 | fix another warning in b3sum --no-default-features | Jack O'Connor | |
| 2019-12-13 | silence another warning in the --no-default-features tests | Jack O'Connor | |
| 2019-12-13 | test release mode in CI | Jack O'Connor | |
| As part of this, get rid of the BLAKE3_FUZZ_ITERATIONS variable. I wasn't using it anywhere, and it was leading to some compiler warnings in --no-default-features mode. | |||
| 2019-12-13 | fix the doc tests build | Jack O'Connor | |
| 2019-12-13 | add to b3sum/README.md | Jack O'Connor | |
| 2019-12-13 | add --no-names to b3sum | Jack O'Connor | |
| Printing all names by default is more consistent with Coreutils. | |||
| 2019-12-13 | expand the docs | Jack O'Connor | |
| 2019-12-13 | rename 1_chunk benchmarks to 1_kib | Jack O'Connor | |
| 2019-12-13 | add 2 KiB benchmarks | Jack O'Connor | |
| 2019-12-12 | update MAX_DEPTH | Jack O'Connor | |
| 2019-12-12 | fix benchmarks build | Jack O'Connor | |
| 2019-12-12 | rename "offset" to "counter" and always increment it by 1 | Jack O'Connor | |
| This is simpler than sometimes incrementing by CHUNK_LEN and other times incrementing by BLOCK_LEN. | |||
| 2019-12-12 | reduce the CHUNK_LEN from 2048 bytes to 1024 bytes | Jack O'Connor | |
| Smaller chunk sizes are a big benefit for parallelism at shorter input lengths, and recent benchmarks show that this reduction has a relative small cost in terms of peak throughput. It's also a nice round number. | |||
| 2019-12-12 | add some more description in README.md | Jack O'Connor | |
| 2019-12-12 | make the "c_avx512" feature a no-op on non-x86 | Jack O'Connor | |
| This lets us enable it by default in b3sum. | |||
| 2019-12-12 | fix the test_vectors build | Jack O'Connor | |
| 2019-12-12 | initial version of b3sum | Jack O'Connor | |
| 2019-12-12 | struct OutputReader | Jack O'Connor | |
| 2019-12-11 | fix syntax errors in ci.yml | Jack O'Connor | |
| 2019-12-11 | run the test vectors on cross tests (ARM, MIPS) on CI | Jack O'Connor | |
| 2019-12-11 | account for Windows newlines when checking for test vector changes | Jack O'Connor | |
| 2019-12-11 | fix bench tests running in the wrong directory | Jack O'Connor | |
| 2019-12-11 | delete an unused import | Jack O'Connor | |
| 2019-12-11 | run test vectors and bench tests in the regular CI test matrix | Jack O'Connor | |
| 2019-12-11 | switch to representing CVs as words for the compression function | Jack O'Connor | |
| The portable implementation was getting slowed down by converting back and forth between words and bytes. I made the corresponding change on the C side first (https://github.com/veorq/BLAKE3-c/commit/12a37be8b50922a358c016ba07f46816a3da4a31), and as part of this commit I'm re-vendoring the C code. I'm also exposing a small FFI interface to C so that blake3_neon.c can link against portable.rs rather than blake3_portable.c, see c_neon.rs. | |||
| 2019-12-11 | test_checked_in_vectors_up_to_date | Jack O'Connor | |
| 2019-12-11 | test against test_vectors.json in CI | Jack O'Connor | |
| 2019-12-11 | check in test_vectors.json | Jack O'Connor | |
| This file is generated with: cd ./test_vectors cargo run --bin generate > ./test_vectors.json | |||
| 2019-12-11 | add the test_vectors sub-crate | Jack O'Connor | |
| 2019-12-10 | add `cargo +nightly test --benches` to CI | Jack O'Connor | |
| 2019-12-09 | typo in ci.yml | Jack O'Connor | |
| 2019-12-09 | set ARMv7 NEON compiler flags automatically | Jack O'Connor | |
| 2019-12-09 | fix a syntax error in ci.yml | Jack O'Connor | |
