Zum Hauptinhalt springen

Zeitbasiertes Einmalpasswort erzeugen (utils.totp_next)

Deklaration

Einmalpasswort, Fehlermeldung = utils.totp_next(Zeitstempel, Link[, Geheimnis])

Parameter

  • Zeitstempel
    Ganzzahl, Unix-Zeitstempel in Sekunden; -1 verwendet die aktuelle Zeit
  • Link
    Text, TOTP-Link im Format otpauth://totp/...
  • Geheimnis
    Text im Base32-Format, optional; bei Übergabe wird dieses Geheimnis zum Erzeugen des Einmalpassworts verwendet

Rückgabewerte

  • Einmalpasswort
    Text, erzeugtes Einmalpasswort
  • Fehlermeldung
    Text; bei einem Fehler wird die Fehlermeldung zurückgegeben

Hinweise

Diese Funktion ist erst in Versionen nach 20260107 verfügbar.
Erzeugt anhand des TOTP-Links das zur aktuellen Zeit gehörende Einmalpasswort.
Der Link muss normalerweise secret enthalten; digits, period und algorithm sind optional.
Für algorithm können SHA1, SHA256 oder SHA512 verwendet werden.

Beispiel

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