Struct google_authenticator::google_authenticator::GoogleAuthenticator
[−]
[src]
pub struct GoogleAuthenticator { /* fields omitted */ }
Methods
impl GoogleAuthenticator
[src]
pub fn new() -> GoogleAuthenticator
[src]
pub fn create_secret(&self, length: u8) -> String
[src]
Create new secret. characters, randomly chosen from the allowed base32 characters.
Example:
use google_authenticator::GoogleAuthenticator; let google_authenticator = GoogleAuthenticator::new(); google_authenticator.create_secret(32);
pub fn get_code(
&self,
secret: &str,
times_slice: u32
) -> Result<String, GAError>
[src]
&self,
secret: &str,
times_slice: u32
) -> Result<String, GAError>
Calculate the code, with given secret and point in time.
Example:
use google_authenticator::GoogleAuthenticator; let google_authenticator = GoogleAuthenticator::new(); google_authenticator.get_code("I3VFM3JKMNDJCDH5BMBEEQAW6KJ6NOE3", 1523610659 / 30).unwrap();
secret : user secret, it will verify each user. times_slice : unix_timestamp / 30 ,if give 0, it will system unix_timestamp
pub fn verify_code(
&self,
secret: &str,
code: &str,
discrepancy: u32,
time_slice: u32
) -> Result<bool, GAError>
[src]
&self,
secret: &str,
code: &str,
discrepancy: u32,
time_slice: u32
) -> Result<bool, GAError>
Check if the code is correct.
secret
use for verify user
code
the code to verify
discrepancy
This will accept codes starting from discrepancy*30sec ago to discrepancy*30sec from now.
time_slice
if give 0, it will system unix_timestamp
use google_authenticator::GoogleAuthenticator; let google_authenticator = GoogleAuthenticator::new(); google_authenticator.verify_code("I3VFM3JKMNDJCDH5BMBEEQAW6KJ6NOE3", "224124", 3, 1523610659 / 30).unwrap();