5个版本 (3个重大更新)
0.4.1 | 2022年2月17日 |
---|---|
0.4.0 | 2021年12月7日 |
0.3.0 | 2020年6月12日 |
0.2.0 | 2019年2月26日 |
0.1.0 | 2019年2月25日 |
#2604 in 密码学
1,810 每月下载量
在 5 crates 中使用
21KB
342 代码行
RustCrypto: Shabal
Shabal密码哈希算法的纯Rust实现。
关于
Shabal标准中指定了5个标准算法
Shabal192
,这是将结果截断到192位的Shabal
算法Shabal224
,这是将结果截断到224位的Shabal
算法Shabal256
,这是将结果截断到256位的Shabal
算法。Shabal384
,这是将结果截断到384位的Shabal
算法。Shabal512
,这是不截断结果的Shabal
算法。
有一个Shabal算法。所有变体都有不同的初始化,除了Shabal512之外,所有变体都会截断结果。
用法
use shabal::{Shabal256, Digest};
// create a Shabal256 hasher instance
let mut hasher = Shabal256::new();
// process input message
hasher.input(b"helloworld");
// acquire hash digest in the form of GenericArray,
// which in this case is equivalent to [u8; 32]
let result = hasher.result();
assert_eq!(result[..], hex!("d945dee21ffca23ac232763aa9cac6c15805f144db9d6c97395437e01c8595a8"));
最低支持的Rust版本
Rust 1.41 或更高。
最低支持的Rust版本可能会在未来改变,但将会通过小版本号增加来完成。
SemVer策略
- 此库的所有默认功能均受SemVer保护
- 如上所述,MSRV被视为免于SemVer
许可证
许可如下
任选其一。
贡献
除非您明确说明,否则您提交的任何有意包含在本作品中的贡献,如Apache-2.0许可证中定义的,将根据上述条款双许可,不附加任何额外的条款或条件。
依赖关系
~330KB