Acest articol este un articol oglindă al traducerii automate, vă rugăm să faceți clic aici pentru a sări la articolul original.

Vedere: 12357|Răspunde: 0

Diferența dinamică de token OTP, TOTP și HOTP

[Copiază linkul]
Postat pe 25.07.2020 16:41:17 | | | |
Prezentare generală

Autentificarea în doi pași (cunoscută și ca 2FA) este un mecanism care combină două metode diferite de autentificare pentru a autentifica utilizatorii. În martie 2011, Google a anunțat utilizarea autentificării în doi pași online, urmată de MSN și Yahoo.

Pe lângă verificarea numelui de utilizator și a parolei, autentificarea în doi pași necesită și combinarea unui alt dispozitiv fizic, cum ar fi un token RSA sau un telefon mobil.
Produsele certificate în doi factori pot fi împărțite în linii mari în două categorii:

Dispozitive hardware care pot genera tokenuri
Aplicația pentru smartphone

OTP

Parola folosită în verificarea în doi pași este o parolă unică (OTP), cunoscută și sub denumirea de parolă dinamică. Este o tehnologie puternică de autentificare care folosește criptografia pentru a partaja chei între clienți și servere, fiind un mijloc tehnic foarte convenabil de a îmbunătăți autentificarea statică actuală a parolelor, fiind o tehnologie importantă de autentificare prin verificare în doi pași.

OTP este prescurtarea de la One-Time Password, care înseamnă parolă unică. Este împărțit în următoarele două tipuri:

HOTP (Algoritm de parolă unică bazat pe HMAC)

HOTP este o parolă unică generată pe baza algoritmului HMAC, cunoscută și ca parolă dinamică pentru sincronizarea evenimentelor, care este o specificație a algoritmului publicată de ITEF, iar pseudocodul este următorul:



Clientul și serverul negociază o cheie K în avans pentru generarea unei parole de unică folosire. Clientul și serverul au fiecare un contor de evenimente C și sincronizează valorile de numărare în prealabil. Trunchierea este un algoritm care transformă un șir de 20 de octeți generat de HMAC-SHA-1 în mai multe cifre zecimale.

TOTP (Algoritmul Parolei Bazate pe Timp)

TOTP este o versiune îmbunătățită a HOTP care folosește timpul pentru a înlocui contorul de evenimente C al HOTP, cunoscut și sub numele de cifrul dinamic pentru sincronizarea timpului. Pseudocod:


T0 este timpul inițial de testare, care devine implicit 0  
X este pasul de timp, care implicit este de 30 de secunde
Documentația oficială oferă o variantă generală, presupunând ora unix curentă = 59, T0 = 0, X = 30, apoi T=1
Presupunând timpul unix curent=60, T0=0, X=30, apoi T=2
Adică, valoarea lui T este rotunjită în jos, iar zecimalul este aruncat



Din figura de mai sus, putem vedea că există două elemente principale ale algoritmului de intrare: unul este cheia partajată (cunoscută și ca seed), iar celălalt este numărarea (sau factorul de timp), care este calculat de un algoritm specific. Dacă ambele elemente sunt consistente, partea de server și partea de client vor calcula același rezultat, permițând funcționalitatea de autentificare.





Precedent:Seria Angular 9 (XII) generează tokenuri dinamice bazate pe OTP-uri
Următor:.NET/C# generează parole unică bazate pe TOTP
Disclaimer:
Tot software-ul, materialele de programare sau articolele publicate de Code Farmer Network sunt destinate exclusiv scopurilor de învățare și cercetare; Conținutul de mai sus nu va fi folosit în scopuri comerciale sau ilegale, altfel utilizatorii vor suporta toate consecințele. Informațiile de pe acest site provin de pe Internet, iar disputele privind drepturile de autor nu au legătură cu acest site. Trebuie să ștergi complet conținutul de mai sus de pe calculatorul tău în termen de 24 de ore de la descărcare. Dacă îți place programul, te rugăm să susții software-ul autentic, să cumperi înregistrarea și să primești servicii autentice mai bune. Dacă există vreo încălcare, vă rugăm să ne contactați prin e-mail.

Mail To:help@itsvse.com