Expand description
This library is for generating Time-based One-time Password (TOTP) codes/tokens, which is defined in RFC 6238.
Features of this crate:
- Both low-level and high-level APIs are provided.
- The length of the codes, the initial counter time (T0), update time interval (period) and hash algorithm are configurable.
- HMAC algorithms are implemented by RustCrypto or ring.
- Read or write “Key Uri Format”
(URIs start with
otpauth://totp/
) (theoathuri
feature gate). - Read or write
key
from base32-encoded string (theoathuri
feature gate).
Note: This implementation does NOT consider the time earlier than the
Unix epoch (1970-01-01T00:00:00Z
).
See high_level::TotpGenerator
for an example.
Features that may be related to but not implemented in this crate:
- Read or write QR codes.
Re-exports§
pub use high_level::TotpGenerator;
pub use low_level::HashAlgorithm;
Modules§
- high_
level - High-level APIs for TOTP code generation.
- low_
level - Low-level APIs for TOTP code generation.
- oath_
uri - Read or write URIs start with
otpauth://totp/
.