5个版本

0.0.5 2021年5月23日
0.0.4 2021年5月22日
0.0.3 2021年5月22日
0.0.2 2021年5月22日
0.0.1 2021年4月13日

#1050 in 身份验证

MIT许可证

23KB
479

Lugnut

Rust的一次性密码Crate

MIT/Apache-2 licensed


Lugnut仍在实验中,处于建设中。

Lugnut是一个支持规范兼容HOTP和TOTP生成和验证的一次性密码生成器。

示例

添加到Cargo.toml

[dependencies]
lugnut = "0.1.0

HOTP

use lugnut::hotp::Hotp;

let key = String::from("SuperSecretKey");
let counter = 100;

let mut hotp = Hotp::new();
let code = hotp.generate(key, counter).expect("error generating hotp");
let verified = hotp.verify(code, key, counter).expect("error verifying hotp");

assert!(verified);

TOTP

use lugnut::totp::Totp;

let key = String::from("SuperSecretKey");

let mut totp = Totp::new();
let code = totp.generate(key).expect("error generating totp");
let verified = totp.verify(code, key).expect("error verifying totp");
assert!(verified);

Lugnut即将推出

  • 更好的测试覆盖率
  • 支持OTP认证URL生成
  • 支持TOTP的前向和后向窗口配置(目前只支持一个用于两个的值)



许可证

本项目采用MIT许可证

依赖

~4MB
~84K SLoC