1
0
Fork 0
mirror of https://github.com/BLAKE3-team/BLAKE3 synced 2024-05-12 14:46:15 +02:00
Commit Graph

488 Commits

Author SHA1 Message Date
Jack O'Connor 09df11731e replace a copy-pasted Rust API reference in the C docs 2022-07-22 10:48:33 -07:00
Ricardo Fernández Serrata 79d270283f Fix and shorten link 2022-07-19 09:45:19 -07:00
Ricardo Fernández Serrata b5bd5bc3c9 Add direct link to multithreading section 2022-07-19 09:45:19 -07:00
Jack O'Connor 49a04ca23d clarify unstable Cargo features 2022-06-23 10:07:53 -07:00
Tino Reichardt 915ed384af clarify README - BLAKE3 is a feature of OpenZFS now 2022-06-10 11:42:46 -07:00
Jack O'Connor 46cf7b7315 simplify a line in the docs example code
The same change was previously made in README.md.
2022-06-07 21:52:51 -07:00
Jack O'Connor b776e8f328 clarify "modern" in the README 2022-04-17 13:48:03 -10:00
Jack O'Connor d55ce7e7f6 s/Usage/Adoption/
There's another section called "Usage", so this is a little bit clearer.
2022-04-17 13:04:16 -10:00
JP Aumasson 57c765bb63 users 2022-04-17 19:02:32 -04:00
Jack O'Connor 7692ba52e2 slight simplification in the README example code 2022-04-12 13:44:35 -07:00
Fangrui Song 9114ff8ed1 add prototypes to fix -Wstrict-prototypes warnings 2022-04-09 11:00:17 -07:00
Jack O'Connor 4393a9b79c fix a deprecation warning from clap 2022-03-27 16:50:37 -04:00
Jack O'Connor d77a70f512 refresh the Cargo.lock file for b3sum 2022-03-27 16:50:37 -04:00
Jack O'Connor 34d70d10b5
Merge pull request #237 from strangelittlemonkey/RUSTSEC-2020-0077
Rustsec 2020 0077
2022-03-27 16:50:02 -04:00
Zach Crownover cd0775f8e6
Update crossbeam-utils from yanked version 2022-03-26 01:53:05 +00:00
Zach Crownover f7f535763c
Update crossbeam-channel from yanked version 2022-03-26 01:52:44 +00:00
Zach Crownover be9ff324bd
Update block-buffer from yanked version 2022-03-26 01:50:55 +00:00
Zach Crownover 989c30e249
RUSTSEC-2020-0077
Migrate from the abandoned memmap library to the now maintained fork
of memmap2
2022-03-26 01:48:20 +00:00
Jack O'Connor 9cd41c0cfd link to reference impl ports from the main readme too 2022-03-05 14:52:28 -05:00
Jack O'Connor 039f8cdc20 link to ports of the reference implementation 2022-03-04 21:02:18 -05:00
Jack O'Connor 48c4621edc add "(if any)" regarding keying in the security notes 2022-03-04 10:19:14 -05:00
Jack O'Connor 3e67a8f45b correct the security notes for the C API 2022-03-03 12:06:14 -05:00
Jack O'Connor d295410aad simplify a bit more 2022-03-03 11:52:58 -05:00
Jack O'Connor b3c06e46ed simplify the security notes, avoid referring to entropy 2022-03-02 19:05:15 -05:00
Jack O'Connor 153d46e11a copy the same notes to the C docs 2022-03-02 17:55:05 -05:00
Jack O'Connor ea3bc782d8 document the extended output security issue found by Aldo Gunsing
https://eprint.iacr.org/2022/283
2022-03-02 17:39:25 -05:00
Jack O'Connor 4e84c8c7ae version 1.3.1
Changes since 1.3.0:
- The unstable `traits-preview` feature now includes an implementation
  of `crypto_common::BlockSizeUser`, AKA
  `digest::core_api::BlockSizeUser`. This allows `blake3::Hasher` to be
  used with `hmac::SimpleHmac`.
2022-01-25 12:02:56 -05:00
Jack O'Connor 15447749ef add a release checklist 2022-01-25 12:02:56 -05:00
Jack O'Connor 540f708a94 check the HMAC output bytes 2022-01-24 20:52:22 -05:00
jbis9051 509e97ed90 Adds test 2022-01-24 19:29:33 -05:00
jbis9051 e069e46116 Add blocksize trait 2022-01-23 15:46:04 -05:00
Jack O'Connor 1631016b86 add a RAYON_NUM_THREADS=1 run to CI 2022-01-18 14:29:44 -05:00
Jack O'Connor 4056af6d7f silence a couple more warnings on 32-bit Windows
https://github.com/BLAKE3-team/BLAKE3/issues/218#issuecomment-1009510462
2022-01-10 21:02:37 -05:00
Samuel Neves a4ce789f28 fix some compiler warnings 2022-01-08 18:00:52 -05:00
Jack O'Connor 9643f9563a version 1.3.0
Changes since 1.2.0:
- Added blake3_hasher_reset to the C API, for parity with the Rust API.
- Updated digest to v0.10. This version merged the crypto-mac crate with
  digest, so the dependency on crypto-mac has been removed. These trait
  implementations are still gated behind the "traits-preview" feature.
- Updated clap to v3.
2022-01-08 00:09:10 -05:00
Jack O'Connor 43ce77aaaf add Samuel Neves as a listed author of the Rust crate
Samuel wrote all of the assembly implementations, with the sole
exception of the SSE2 port.
2022-01-08 00:08:53 -05:00
Jack O'Connor 81c8640410 update clap to v3 2022-01-07 23:57:15 -05:00
Jack O'Connor 7d8c005071 add blake3_hasher_reset to the C API 2022-01-07 15:51:35 -05:00
Jack O'Connor c7b5881928 a few more comment tweaks 2021-12-30 13:34:13 -05:00
Matthias Schiffer 61d6621ba5 Update digest crate to 0.10 for traits-preview feature
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-12-30 13:31:20 -05:00
Jack O'Connor 8dcba1514b check in the Cargo.lock for b3sum
We'll need to make sure to update this when we do a version bump. Adding
an explicit `!Cargo.lock` line to b3sum/.gitignore helps with this, by
making sure Cargo.lock shows up by defauls in searches like:

    rg "1\.2\.0"

Closes https://github.com/BLAKE3-team/BLAKE3/issues/210.
2021-12-18 15:27:57 -05:00
Jack O'Connor da4c792d80 add an assert and remove an iter_mut in reference_impl
Suggested in https://github.com/rust-lang/rust-clippy/issues/8039.
2021-11-30 14:05:08 -05:00
Jack O'Connor 315e44f875 fix a typo in the check doc 2021-11-13 09:24:15 -05:00
Jack O'Connor c61c663ec5 version 1.2.0
Changes since 1.1.0:
- SECURITY FIX: Fixed an instance of undefined behavior in the Windows
  SSE2 assembly implementations, which affected both the Rust and C
  libraries in their default build configurations. See
  https://github.com/BLAKE3-team/BLAKE3/issues/206. The cause was a
  vector register that wasn't properly saved and restored. This bug has
  been present since SSE2 support was initially added in v0.3.7. The
  effects of this bug depend on surrounding code and compiler
  optimizations; see test_issue_206_windows_sse2 for an example of this
  bug causing incorrect hash output. Note that even when surrounding
  code is arranged to trigger this bug, the SSE2 implementation is
  normally only invoked on CPUs where SSE4.1 (introduced in 2007) isn't
  supported. One notable exception, however, is if the Rust library is
  built in `no_std` mode, with `default_features = false` or similar. In
  that case, runtime CPU feature detection is disabled, and since LLVM
  assumes that all x86-64 targets support SSE2, the SSE2 implementation
  will be invoked. For that reason, Rust callers who build `blake3` in
  `no_std` mode for x86-64 Windows targets are the most likely to
  trigger this bug. We found this bug in internal testing, and we aren't
  aware of any callers encountering it in practice.
- Added the Hasher::count() method.
2021-11-05 14:38:36 -04:00
Jack O'Connor 371b5483c9 fix incorrect output / undefined behavior in Windows SSE2 assembly
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-05 12:25:44 -04:00
Jack O'Connor 04571021fb add Hasher::count 2021-11-04 20:37:05 -04:00
Jack O'Connor 1042917e16 make field ordering more consistent in the reference impl 2021-10-29 14:44:42 -04:00
Jack O'Connor 600f0b51fe distinguish between key and key_words in the reference impl 2021-10-29 14:04:22 -04:00
Jack O'Connor f35d031578 remove an incorrect comment 2021-10-29 12:07:28 -04:00
Jack O'Connor 1f2010d79e update NEON docs in lib.rs 2021-10-23 13:09:52 -04:00