Anar al contingut

Algoritme de contrasenya d'un sol us basada en el temps

De L'Enciclopèdia, la wikipedia en valencià
Algoritme de contrasenya d'un sol us basada en el temps
Erro al crear miniatura:
2fa de 979, que mostra contrasenyes d'un sol us basades en el temps

L'algoritme de contrasenya d'un sol us o TOTP (Clave-based one clave password en anglés) és un algoritme que permet generar una contrasenya d'un sol us (OTP) que utilisa l'hora actual com a font de singularitat. És una extensió del algoritme de contrasenya d'un sol us basat en HMAC (HOTP), i està considerat com una tecnologia estàndar pel Grup de Treball d'Ingenieria d'Internet baix l'identificador Plantilla:IETF RFC.[1]

L'algoritme TOTP és la base de l'Iniciativa per a l'autenticació oberta (OATH), una iniciativa de l'indústria que promou la generalisació d'esta tecnologia en un bon número de sistemes d'autenticació de doble factor. Existixen un ampli palmito d'aplicacions informàtiques (tant de còdic obert com a propietàries) orientades a usuaris finals i que permeten l'autenticació en servidors que utilisen esta tecnologia.

Història

El borrador de l'algoritme TOTP naix en 2008 impulsat per la colaboració de varis membres de la OATH, el fi de la qual era el de crear un estàndart obert que respalara la majoria de l'indústria. Complementa a l'estàndart HOTP basat en events, i permet que les empreses enfocades a usuaris finals i les organisacions puguen desenrollar la seua pròpia implementació o triar aquella que més li convinga segons les seues pròpies directrius de seguritat.[2] En maig de 2011, l'algoritme TOTP es va convertir oficialment en l'estàndart RFC 6238.[1]

Algoritme

Per a establir l'autenticació TOTP, l'usuari i el autenticador deuen dispondre tant dels paràmetros HOTP com els següents paràmetros propis:

  • T0, el temps Unix a partir de la qual escomençar a contar les unitats de temps (per defecte és 0).
  • TX, un interval que s'utilisarà per a calcular el valor del contador CT (per defecte és 30 segons).

Basant-se en estos paràmetros, abdós parts implicades calculen el valor TOTP. Quan l'usuari desija autenticarse, comunica la seua clau al servidor autenticador i est pot verificar la seua validea comprovant si este valor coincidix en el que s'ha computat de forma local.

Algunes implementacions de l'autenticador toleren cert marge d'error sobre el temps, donant com a vàlits valors que deurien haver-se generat abans de l'hora actual (generalment uns pocs segons). Açò permet considerar factors com el biaix de rellonge, la latencia de la ret o el temps de reacció de l'usuari.

TOTP usa internament l'algoritme HOTP, reemplanzando el contador en un valor no decreixent basat en l'hora actual:

VTOTP(K)=VHOTP(K,CT)

A on el valor del contador es calcula com:

CT=⌊T−T0TX⌋
  • CT és el reconte del número d'intervals TX entre T0 i T.
  • T és el temps actual en segons des d'una época en particular.
  • T0 és l'época especificada en segons contant a partir de l'época Unix (si s'usa Temps Unix, llavors T0 serà 0).
  • TX és la duració d'un interval de temps (per eixemple, 30 seconds).

Vore també

Referències


Referències