| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2023-05-28 | test_fuzz_xofxof_integration | Jack O'Connor | |
| 2023-05-28 | integrate xof_many with the Rust implementation and with Rust and C tests | Jack O'Connor | |
| 2023-05-23 | Fix typos | Joel Rosdahl | |
| 2023-05-01 | small doc tweak | Jack O'Connor | |
| 2023-05-01 | add `from_bytes` for conversions from `[u8; 32]` | Eduardo Leegwater Simões | |
| The function is `const`, so it is fundamentally different from the `From` trait implementation by allowing compile-time instantiation of a `Hash`. | |||
| 2023-05-01 | make `Hash::as_bytes` const | Eduardo Leegwater Simões | |
| 2022-11-22 | test multiple initial counter values for hash_many | Jack O'Connor | |
| I'm adding the i32::MAX test case here because I personally screwed it up while I was working on https://github.com/BLAKE3-team/BLAKE3/issues/271. The correct implementation of the carry bit is the ANDNOT of old high bit (1) and the new high bit (0). Using XOR instead of ANDNOT gives the correct answer in the overflow case, but it also reports an incorrect "extra" overflow when the high bit goes from 0 to 1. | |||
| 2022-07-28 | Fix doc typo | Ricardo Fernández Serrata | |
| 2022-06-07 | simplify a line in the docs example code | Jack O'Connor | |
| The same change was previously made in README.md. | |||
| 2022-03-04 | add "(if any)" regarding keying in the security notes | Jack O'Connor | |
| 2022-03-03 | simplify a bit more | Jack O'Connor | |
| 2022-03-02 | simplify the security notes, avoid referring to entropy | Jack O'Connor | |
| 2022-03-02 | document the extended output security issue found by Aldo Gunsing | Jack O'Connor | |
| https://eprint.iacr.org/2022/283 | |||
| 2022-01-24 | check the HMAC output bytes | Jack O'Connor | |
| 2022-01-24 | Adds test | jbis9051 | |
| 2022-01-23 | Add blocksize trait | jbis9051 | |
| 2021-12-30 | a few more comment tweaks | Jack O'Connor | |
| 2021-12-30 | Update digest crate to 0.10 for traits-preview feature | Matthias Schiffer | |
| Adjust to the following changes that happened in digest: - The crypto-mac crate has been merged into digest (with "mac" feature enabled) - Various traits have been split up - The Digest and Mac traits now share their update/finalize/reset implementations - The BlockInput trait was dropped without replacement apparently (as long as the low-level core API is not used) | |||
| 2021-11-05 | fix incorrect output / undefined behavior in Windows SSE2 assembly | Jack O'Connor | |
| The SSE2 patch introduced xmm10 as a temporary register for one of the rotations, but xmm6-xmm15 are callee-save registers on Windows, and SSE4.1 was only saving the registers it used. The minimal fix is to use one of the saved registers instead of xmm10. See https://github.com/BLAKE3-team/BLAKE3/issues/206. | |||
| 2021-11-04 | add Hasher::count | Jack O'Connor | |
| 2021-10-29 | remove an incorrect comment | Jack O'Connor | |
| 2021-10-23 | update NEON docs in lib.rs | Jack O'Connor | |
| 2021-10-07 | Implement better target detection for NEON | rsdy | |
| 2021-09-10 | clarify that OutputReader::position is equivalent to Seek::stream_position | Jack O'Connor | |
| 2021-09-10 | link to the paper in the derive_key docs | Jack O'Connor | |
| 2021-07-25 | update README examples | Jack O'Connor | |
| 2021-05-18 | upgrade to arrayvec 0.7.0 | Jack O'Connor | |
| This version uses const generics, which bumps our minimum supported compiler version to 1.51. | |||
| 2021-05-18 | explicitly document the properties of short outputs | Jack O'Connor | |
| Suggested by @joshtriplett at: https://github.com/BLAKE3-team/BLAKE3/issues/168#issuecomment-829609667 | |||
| 2021-03-28 | more cleaup of undocumented API | Jack O'Connor | |
| 2021-03-28 | update doc comments on guts module | Jack O'Connor | |
| 2021-03-21 | implement Display for Hash | Jack O'Connor | |
| 2021-03-21 | get rid of the standalone "*_rayon" functions | Jack O'Connor | |
| These clutter the toplevel API, and their prominence might lead callers to prefer them as a first resort, which probably isn't a good idea. Restricting multithreading to `Hasher::update_rayon` feels better, similar to what we've done with `Hasher::finalize_xof`. (But I think `update_rayon` is still an improvement over the trait-based interface that it replaced.) | |||
| 2021-03-21 | gate digest and crypto-mac implementations behind "traits-preview" | Jack O'Connor | |
| This approach was suggested by @tarcieri at https://github.com/BLAKE3-team/BLAKE3/pull/157. | |||
| 2021-03-20 | Rayon-related doc fixes | Jack O'Connor | |
| 2021-03-14 | add *_rayon methods | Jack O'Connor | |
| 2021-03-14 | re-privatize the Join trait | Jack O'Connor | |
| 2021-02-28 | make derive_key() return an array | Jack O'Connor | |
| 2021-02-28 | impl PartialEq<[u8]> for Hash | Jack O'Connor | |
| 2021-02-25 | Cargo.toml: upgrade all non API breaking dependencies | Paul Grandperrin | |
| 2021-02-04 | rename ParseError to HexError and update docs | Jack O'Connor | |
| 2021-02-04 | implement Error for ParseError, make it opaque, and support from_hex(&[u8]) | Jack O'Connor | |
| 2021-02-03 | merge "Adding from_hex and implementing FromStr for Hash" | Jack O'Connor | |
| https://github.com/BLAKE3-team/BLAKE3/pull/24 | |||
| 2020-09-29 | add more test cases at shorter input lengths | Jack O'Connor | |
| 2020-09-10 | cargo fmt | Jack O'Connor | |
| 2020-08-31 | add the dynamic check for SSE2 support | Jack O'Connor | |
| It will be very rare that this actually executes, but we should include it for completeness. | |||
| 2020-08-31 | fix a build break on x86 targets without guaranteed SSE2 support | Jack O'Connor | |
| This is quite hard to trigger, because SSE2 has been guaranteed for a long time. But you could trigger it this way: rustup target add i686-unknown-linux-musl RUSTFLAGS="-C target-cpu=i386" cargo build --target i686-unknown-linux-musl Note a relevant gotcha though: The `cross` tool will not forward environment variables like RUSTFLAGS to the container by default, so if you're testing with `cross` you'll need to use the `rustc` command to explicitly pass the flag, as I've done here in ci.yml. (Or you could create a `Cross.toml` file, but I don't want to commit one of those if I can avoid it.) | |||
| 2020-08-31 | Merge pull request #110 from mkrupcale/sse2 | Samuel Neves | |
| Add SSE2 implementations | |||
| 2020-08-31 | Implement `fmt::Debug` using builders | Nikolai Vazquez | |
| This enables pretty printing via `{:#?}`. The normal style for `{:?}` is kept exactly the same. | |||
| 2020-08-25 | Write _mm_blend_epi16 emulation without multiplication | Matthew Krupcale | |
| Use _mm_and_si128 and _mm_cmpeq_epi16 rather than expensive multiplication _mm_mullo_epi16 with _mm_srai_epi16 that compiler may not be able to optimize. | |||
| 2020-08-24 | Fix unreachable expression compiler warning | Matthew Krupcale | |
| SSE2 target_feature appears to always be present for x86_64. | |||
