ootp 0.0.5

OOTP (Open One-time Password) is a supports multiple programming languages. The generated one-time passwords are fully compliant with HOTP (HMAC-based One-time Password) and TOTP (Time-based One-time Password). 🚀It's easy to use!
Documentation
# OOTP

OOTP (Open One-time Password) is a supports multiple programming languages. The generated one-time passwords are fully compliant with HOTP (HMAC-based One-time Password) and TOTP (Time-based One-time Password). 🚀It's easy to use!

## Introduction

The [OOTP for Rust](https://crates.io/crates/ootp) library is a [Rust](https://www.rust-lang.org/) implementation of the [OOTP](https://github.com/bytegem/ootp) library.

## Features

 * Generate one-time passwords for multiple languages
 * 100% Open source
 * HOTP
 * TOTP
 * [RFC 4226]https://tools.ietf.org/html/rfc4226
 * [RFC 6238]https://tools.ietf.org/html/rfc6238

## Installation

Add the following line to your Cargo.toml file:

```toml
[dependencies]
ootp = "0.2"
```

or use the following command:

```bash
$ cargo install ootp
```

## Get started
```rust
use ootp::*;

fn main() {
    let secret = String::from("Base32 decoded secret");
    let totp = Totp::secret(
        secret,
        TotpWithSecretCreateOption::Default
    );

    let otp = totp.make(); // Generate a one-time password
    println!("{}", otp); // Print the one-time password
}
```

## Examples

 * [OOTP for Rust example]https://github.com/bytegem/ootp/tree/main/examples/rust-example

## Documentation

 * [Rust docs.rs page]https://docs.rs/ootp

## License

The OOTP for Rust library is licensed under the [MIT license](https://github.com/bytegem/ootp/blob/main/LICENSE).