#hotp #totp #otp #2fa #sha-1 #rfc-6238

r2fa

Rust Two-Factor Authentication (R2FA) is a collection of tools for two-factor authentication

8 releases (4 breaking)

Uses old Rust 2015

0.5.0 Aug 6, 2015
0.4.2 Aug 4, 2015
0.3.0 Jul 29, 2015
0.2.1 Jul 27, 2015
0.1.1 Jul 27, 2015

#7 in #rfc-6238

ISC license

58KB
1.5K SLoC

Build Status R2FA on crates.io R2FA on GitHub

Rust Two-Factor Authentication (R2FA) is a collection of tools for two-factor authentication.

Features

  • HOTP - HMAC-based One-time Password Algorithm (RFC 4226)
    • the key can be passed as bytes, an ASCII string, an hexadicimal string or a base32 string
    • customizable counter
    • customizable hash function (sha1, sha256, sha512)
    • customizable output length
    • customizable output alphabet
  • TOTP - Time-based One-time Password Algorithm (RFC 6238)
    • the key can be passed as bytes, an ASCII string, an hexadicimal string or a base32 string
    • customizable timestamp
    • customizable period
    • customizable initial time (T0)
    • customizable hash function (sha1, sha256, sha512)
    • customizable output length
    • customizable output alphabet

Dependencies

~4MB
~51K SLoC