Skip to content

3. HOTP

indrajit edited this page Jul 21, 2020 · 1 revision

HOTP

Config

val config = HOTPConfig("secret", digits = 6, digest = Digest.SHA1)
// or
val config = HOTPConfig(Base32.encode("secret"), digits = 6, digest = Digest.SHA1)
// or
val config = HOTPConfig("secret")
// or
val config = HOTPConfig(Base32.encode("secret"))

HOTP

val hotp = HOTP(config)

Otp generation

hotp.at(1_111_111_111)                 // 145381

Verification

hotp.verify("145381", 1_111_111_111)   // 1111111111  => verified
hotp.verify("000000", 1_111_111_111)   // null        => not verified

Provisioning Uri

hotp.provisioningUri("KOTP")           // otpauth://hotp/KOTP?secret=ONSWG4TFOQ&counter=0&digits=6
Clone this wiki locally