Aller au contenu principal

Générer un code à usage unique basé sur l’heure (utils.totp_next)

Déclaration

Code, message d’erreur = utils.totp_next(horodatage, lien[, clé secrète])

Paramètres

  • Horodatage
    Type entier, horodatage Unix en secondes ; -1 signifie utiliser l’heure actuelle
  • Lien
    Type texte, lien TOTP au format otpauth://totp/...
  • Clé secrète
    Type texte au format Base32, paramètre facultatif ; lorsqu’elle est fournie, elle sert à générer le code

Valeur de retour

  • Code
    Type texte, code à usage unique généré
  • Message d’erreur
    Type texte, message renvoyé en cas d’échec

Description

Disponible dans les versions postérieures à 20260107. Génère le code à usage unique correspondant à l’heure actuelle à partir du lien TOTP. Le lien doit généralement contenir secret et peut contenir digits, period et algorithm. algorithm accepte SHA1, SHA256 ou SHA512.

Exemple

local url = "otpauth://totp/Demo:alice?secret=JBSWY3DPEHPK3PXP&issuer=Demo&digits=6&period=30&algorithm=SHA1"

local code, err = utils.totp_next(-1, url)
if code then
nLog(code)
else
nLog(err)
end