Yet Another OTP generator
Vous ne pouvez pas sélectionner plus de 25 sujets Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.

Accounts.kt 589B

123456789101112131415
  1. package com.chameth.yaotp.accounts
  2. import com.chameth.yaotp.algos.*
  3. sealed class Account(val label: String, val issuer: String? = null, val timeBased: Boolean) {
  4. abstract fun generateOtp(): Otp
  5. }
  6. class HotpAccount(label: String, issuer: String?, var counter: Long, val params: HotpParams) : Account(label, issuer, false) {
  7. override fun generateOtp() = hotp(params, counter.toByteArray()).also { counter++ }
  8. }
  9. class TotpAccount(label: String, issuer: String?, val params: TotpParams) : Account(label, issuer, true) {
  10. override fun generateOtp() = totp(params)
  11. }