8个版本 (4个重大更新)
0.5.0 | 2020年12月17日 |
---|---|
0.4.2 | 2020年11月7日 |
0.4.1 | 2020年6月28日 |
0.3.0 | 2019年6月2日 |
0.1.0 | 2019年3月12日 |
#496 in 算法
每月下载量66,486
在 45 个crate中使用 (23直接使用)
14KB
191 行
wyhash快速便携非加密哈希算法
Wang Yi的wyhash算法的Rust实现。
该哈希算法通过了SMHasher测试,随机数生成器通过了BigCrush和practrand测试。目前,它在SMHasher基准测试中是最快的算法(比t1ha和XXH3快)。请参阅此处。
此外,此算法稳健、简单、便携(不需要硬件支持,可以在no_std
环境中使用)且无依赖(除了来自rand_core
的特性和方法)。
生成的哈希值相同(见测试)(见此处),尽管速度不同(欢迎PR)。
用法
use wyhash::WyHash;
use std::hash::Hasher;
fn main() {
let mut hasher = WyHash::with_seed(3);
hasher.write(&[0, 1, 2]);
assert_eq!(0xcc24_2106_e707_6a48, hasher.finish());
}
请参阅文档中的哈希器和RNG的更多示例。
支持
有关问题、问题、功能请求和其他更改,请在github项目中提交问题。
最低支持的Rust版本 (MSRV)
此crate保证在稳定的Rust 1.36.0及以上版本上编译。它可能与旧版本兼容,但在任何新的补丁版本中可能会发生变化。
许可证
根据您的选择,许可为以下之一
- Apache许可证版本2.0 (LICENSE-APACHE 或 https://apache.ac.cn/licenses/LICENSE-2.0)
- MIT许可证 (LICENSE-MIT 或 http://opensource.org/licenses/MIT)
。
贡献
除非您明确声明,否则您提交的任何贡献,根据Apache-2.0许可证定义,应按上述方式双重许可,而不附加任何额外条款或条件。
依赖
~48KB