[][src]Struct libotp::TOTP

pub struct TOTP { /* fields omitted */ }

Provides Time based One Time Passwords.

References

  • This object implements utilities for RFC6328.

Methods

impl TOTP[src]

pub fn new(secret: HOTP, time_step: u64, start_time: u64) -> TOTP[src]

Creates a new TOTP instance.

Arguments

  • secret - HOTP secret to use for TOTP generation.
  • time_step - The time frame to allow every password, in seconds. RFC6238 recommends 30 seconds.
  • start_time - Configurable T0 for OTP.

pub fn get_otp(&self, digits: u32, offset: i32) -> u32[src]

Generates a time based OTP.

Arguments

  • digits - Desired OTP length, should be at least 6.
  • offset - Should be 0 for current time frame, -1 for previous, 1 for next, etc...

pub fn validate(&self, digits: u32, guess: u32, buffer: u32) -> bool[src]

Validates the given OTP.

Arguments

  • digits - The amount of digits set for the OTP.
  • guess - The user provided guess to validate.
  • buffer - Amount of OTPs to check before and after the current one (0=Only current, 1=Previous+Now+Next OTP, etc...)

Auto Trait Implementations

impl Unpin for TOTP

impl Sync for TOTP

impl Send for TOTP

impl UnwindSafe for TOTP

impl RefUnwindSafe for TOTP

Blanket Implementations

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> From<T> for T[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]