Lugnut

A One-time Password Crate for Rust

[![MIT/Apache-2 licensed](https://img.shields.io/crates/l/reqwest.svg)](./LICENSE-APACHE)
> Lugnut is still experimental and under construction. Lugnut is a one-time password generator that supports specification compliant HOTP and TOTP generation and verification.

Examples

Add to Cargo.toml

```toml [dependencies] lugnut = "0.1.0 ```

HOTP

```rust 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

```rust 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); ```

Upcoming for Lugnut



License

This project is licensed under the MIT License