Tags: oconnor663/bao
Tags
version 0.12.1 Changes since 0.12.0: - BUGFIX: Fixed mishandling of empty slices in `Encoder::write`. Previously writing exactly 1024 bytes, and then calling `write` once more with an empty slice, would lead to an incorrect hash returned from `Encoder::finalize`. (The chunk should've been finalized as root, but instead it was finalized as non-root.)
version 0.11.0 Changes since 0.10.1: - Encoder, SliceExtractor, Decoder, and SliceDecoder all support into_inner(). - Once an Encoder has been finalized, writing to it or finalizing it again will now panic. - The dependency on upstream blake3 has been updated to 0.3, which affects this crate's callers because blake3::Hash is reexported. - The bao_bin crate has removed the "c" feature and renamed the "c_neon" feature to "neon", for consistency with the upstream blake3 crate. - The license of this crate has been changed from MIT to (CC0 || Apache), for consistency with the upstream blake3 crate.
version 0.10.1 Changes since 0.10.0: - Upgrade the `blake3` dependency to version 0.2. This includes new assembly implementations, so `bao hash` is faster. - Other perf improvements: Don't mmap tiny files, and use a 64 KiB incremental buffer size. This mirrors the behavior of `b3sum`.
version 0.9.0 Changes since 0.8.0: - The hash:: module is gone. It's been merged into the crate root. - Added the copy() helper function, which uses an efficient buffer size. - Fixed a bug in bao_bin where it was using an inefficient buffer size. - No change to the hash output.
version 0.7.0 Changes since 0.6.0: - Compatibility break, due to the following. - Each chunk now gets hashed with a unique node_offset parameter. This change was originally proposed by @zooko at https://twitter.com/zooko/status/1060218512990363650. It discourages caching optimizations that would break constant time execution. - `hash_from_encoded` and other related functions have been removed. They were confusing and questionably useful.
version 0.6 Changes since 0.5.0: - Compatibility break, for all of the reasons below. - Switched from BLAKE2b to BLAKE2s. Detailed reasoning about this change is in the spec. This plus all the optimizations through blake2s_simd 0.5.6 result in a 16% increase in the long slice performance. Other benchmarks are much more dramatically improved, now that the encoder and decoder take advantage of SIMD through the hash_many interface. - Removed the length suffix from hashing the root node. Again detailed reasoning about this change is in the spec. - Change the max_depth parameter from 64 to 255, to better follow the convention defined for max_depth in the BLAKE2 spec.
PreviousNext