En RFC 4226, el algoritmo para HOTP se describe a continuación.
HOTP (K, C) = Truncate (HMAC-SHA-1 (K, C))
TOTP es esencialmente el mismo algoritmo que HOTP, excepto por el hecho de que el contador C se reemplaza por un número entero derivado de la hora actual. En las palabras de RFC 6238,
Básicamente, definimos TOTP como TOTP = HOTP (K, T), donde T es un número entero y representa el número de pasos de tiempo entre el contador inicial tiempo T0 y el tiempo actual de Unix.
Sin embargo, el código de referencia descrito en RFC 6238, así como los valores de prueba listados en el Apéndice B tienen referencia a HMAC-SHA256
y HMAC-SHA512
. Sin embargo, los dos algoritmos no se mencionan en ningún otro lugar, ya sea en RFC 4226 o RFC 6238.
Mi pregunta: ¿Se admite oficialmente HMAC-SHA256
y HMAC-SHA512
como variantes de los algoritmos HOTP y TOTP?