6 个版本 (1 个稳定版)
1.0.0 | 2021年1月3日 |
---|---|
0.3.1 | 2020年7月8日 |
0.3.0 | 2019年1月13日 |
0.2.0 | 2018年5月9日 |
0.1.1 | 2016年2月9日 |
#2 in #crypt
40,486 每月下载量
用于 21 个crate(15 个直接使用)
105KB
1.5K SLoC
pwhash
密码哈希和验证例程的集合。
有关API参考,请参阅文档。
入门指南
将以下内容添加到你的Cargo.toml
文件的[dependencies]
部分:
pwhash = "1"
示例
use pwhash::bcrypt;
// Hash a password with default parameters.
let h_new = bcrypt::hash("password").unwrap();
// Verify a password against an existing hash.
let h = "$2y$05$bvIG6Nmid91Mu9RcmmWZfO\
5HJIMCT8riNW0hEp8f6/FuA2/mHZFpe";
assert!(bcrypt::verify("password", h));
摘要
以下算法目前实现(按字母顺序排列):
-
bcrypt
-
bsdi_crypt
-
md5_crypt
-
sha1_crypt
-
sha256_crypt
-
sha512_crypt
-
unix_crypt
每个算法都位于其同名的模块中,并提供了以下接口:
-
verify()
:验证密码与哈希值是否匹配。 -
hash()
:使用默认算法特定参数对密码进行哈希。 -
hash_with()
:使用自定义参数对密码进行哈希。
还有一个便利的模块unix
,它提供了函数unix::crypt
,一个crypt(3)
的替代品,以及unix::verify
。
依赖关系
~1MB
~21K SLoC