Saltar al contenido principal

Generar un código de un solo uso basado en el tiempo (utils.totp_next)

Declaración

codigo, mensaje_error = utils.totp_next(marca_tiempo, enlace[, clave])

Parámetros

  • marca_tiempo
    Tipo entero; marca de tiempo Unix en segundos. Pasar -1 indica que se debe usar la hora actual
  • enlace
    Tipo texto; enlace TOTP con el formato otpauth://totp/...
  • clave
    Tipo texto en formato Base32; parámetro opcional. Si se proporciona, se utiliza esta clave para generar el código

Valores devueltos

  • codigo
    Tipo texto; código de un solo uso generado
  • mensaje_error
    Tipo texto; mensaje de error devuelto cuando falla la generación

Descripción

Disponible a partir de las versiones posteriores a 20260107
Genera un código de un solo uso correspondiente a la hora actual a partir del enlace TOTP
El enlace normalmente debe contener secret y puede incluir digits, period y algorithm
algorithm puede usar SHA1, SHA256 o SHA512

Ejemplo

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