5个版本 (稳定)
2.1.0 | 2021年9月7日 |
---|---|
2.0.0 | 2021年9月6日 |
1.0.1 | 2021年9月2日 |
0.1.0 | 2021年8月22日 |
#2489 in 密码学
用于 secwords
14KB
216 行
vep
可变长度扩展传递函数。(即短密码到长哈希密码)
[dependencies]
vep = "2.1.0"
或
[dependencies]
vep = { version = "2.1.0", default-features = false } # no-std
如何使用
use vep::Vep;
use sha2::{Sha256, Digest}; // can be any hasher(dyn Digest from `digest` crate)
let src = b"hello vep!"; // <- 10 bytes
let expanded = Vep(Sha256::new()).expand(src); // -> 10 * 32 bytes == `320 bytes`
assert_eq!(expanded.len(), Vep::<Sha256>::output_size_calc(src));
固定大小可用
let src = b"hello vep!"; // <- 10 bytes
let result = Vep(Sha256::new()).expand_and_then_reduce(src); // -> 320 bytes -> `32 bytes` (reduced)
assert_eq!(result.len(), Vep::<Sha256>::reduced_size_calc());
* 算法
依赖项
~360KB