Yleiskatsaus
Kaksivaiheinen tunnistautuminen (tunnetaan myös nimellä 2FA) on mekanismi, joka yhdistää kaksi erilaista todennusmenetelmää käyttäjien tunnistamiseksi. Maaliskuussa 2011 Google ilmoitti kaksivaiheisen tunnistautumisen käytöstä verkossa, jota seurasivat MSN ja Yahoo.
Käyttäjätunnuksen ja salasanan varmistamisen lisäksi kaksivaiheinen tunnistautuminen vaatii myös toisen fyysisen laitteen, kuten RSA-tunnuksen tai matkapuhelimen, yhdistelmän. Kaksivaiheiset sertifioidut tuotteet voidaan karkeasti jakaa kahteen kategoriaan:
Laitteistolaitteet, jotka voivat tuottaa tokeneita Älypuhelinsovellus
OTP
Kaksivaiheisessa varmennuksessa käytetty salasana on kertakäyttösalasana (OTP), joka tunnetaan myös nimellä dynaaminen salasana. Se on vahva todennusteknologia, joka käyttää kryptografiatekniikkaa avainten jakamiseen asiakkaiden ja palvelimien välillä, ja se on erittäin kätevä tekninen keino parantaa nykyistä staattista salasanan tunnistautumista sekä tärkeä kaksivaiheinen varmennusteknologia.
OTP on lyhenne sanoista One-Time Password, joka tarkoittaa kertakäyttösalasanaa. Se jaetaan seuraaviin kahteen tyyppiin:
HOTP (HMAC-pohjainen kertakäyttöinen salasanaalgoritmi)
HOTP on kertakäyttöinen salasana, joka on luotu HMAC-algoritmin pohjalta, tunnetaan myös nimellä dynaaminen salasana tapahtumien synkronointiin, ja se on ITEFin julkaisema algoritmimäärittely, ja pseudokoodi on seuraava:
Asiakas ja palvelin neuvottelevat avaimen K etukäteen kertakäyttöisen salasanan luomiseksi. Asiakkaalla ja palvelimella on tapahtumalaskuri C, ja ne synkronoivat lukumäärät etukäteen. Truncate on algoritmi, joka muuntaa HMAC-SHA-1:n generoiman 20 tavun merkkijonon useiksi desimaalinumeroiksi.
TOTP (Aikaperusteinen kertakäyttöinen salasanaalgoritmi)
TOTP on parannettu versio HOTP:sta, joka käyttää aikaa korvatakseen HOTP:n tapahtumalaskurin C:n, joka tunnetaan myös dynaamisena salauksena ajan synkronointiin. Pseudokoodi:
T0 on alkuperäinen testiaika, joka oletuksena on 0 X on aikaaskel, joka oletuksena on 30 sekuntia Virallinen dokumentaatio antaa kastanjan, olettaen nykyisen unix-ajan = 59, T0 = 0, X = 30 ja sitten T=1 Oletetaan nykyinen unix-aika=60, T0=0, X=30 ja sitten T=2 Eli T:n arvo pyöristetään alaspäin ja desimaali hylätään
Yllä olevasta kuvasta näemme, että syötealgoritmissa on kaksi pääelementtiä: toinen on jaettu avain (tunnetaan myös nimellä siemen) ja toinen on laskenta (tai aikatekijä), joka lasketaan tietyllä algoritmilla. Jos molemmat elementit ovat johdonmukaisia, palvelin- ja asiakaspuoli laskevat saman tuloksen, mahdollistaen todennustoiminnallisuuden.
|