12个不稳定版本 (3个破坏性版本)
0.4.1 | 2019年8月23日 |
---|---|
0.4.0 | 2019年7月29日 |
0.3.0 | 2019年7月29日 |
0.2.7 | 2018年10月29日 |
0.2.1 | 2015年6月27日 |
#455 in 身份验证
311 每月下载量
在 2 crate 中使用
11KB
114 行
otpauth-rs
为Rust提供HOTP/TOTP两步验证。
安装
将其添加到您的 Cargo.toml
[dependencies]
otpauth = "0.3"
示例
HOTP示例
use otpauth::HOTP;
fn main() {
let auth = HOTP::new("python");
let code = auth.generate(4);
assert_eq!(true, auth.verify(code, 0, 100));
}
TOTP示例
use std::time::{SystemTime, UNIX_EPOCH};
use otpauth::TOTP;
fn main() {
let auth = TOTP::new("python");
let timestamp1 = SystemTime::now().duration_since(UNIX_EPOCH)?.as_secs();
let code = auth.generate(30, timestamp1);
let timestamp2 = SystemTime::now().duration_since(UNIX_EPOCH)?.as_secs();
assert_eq!(true, auth.verify(code, 30, timestamp2));
}
许可证
本作品在MIT许可证下发布。许可证副本可在LICENSE文件中找到。
依赖
~7.5MB
~223K SLoC