pub struct TOTP { /* private fields */ }
Expand description
Implementations§
Source§impl TOTP
impl TOTP
Sourcepub fn new(secret: HOTP, time_step: u64, start_time: u64) -> TOTP
pub fn new(secret: HOTP, time_step: u64, start_time: u64) -> TOTP
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.
Sourcepub fn get_otp(&self, digits: u32, offset: i32) -> u32
pub fn get_otp(&self, digits: u32, offset: i32) -> u32
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…
Sourcepub fn validate(&self, digits: u32, guess: u32, buffer: u32) -> bool
pub fn validate(&self, digits: u32, guess: u32, buffer: u32) -> bool
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 Freeze for TOTP
impl RefUnwindSafe for TOTP
impl Send for TOTP
impl Sync for TOTP
impl Unpin for TOTP
impl UnwindSafe for TOTP
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more