Kakšna je razlika med OTP, TOTP in HOTP?

Branje: 4 min

Zagotavljanje varnega dostopa do aplikacij in programske opreme v oblaku je stalen izziv za podjetja v vseh panogah. Preprosta, a zanesljiva varnost za uporabnike je ključna za zaščito podatkov uporabnikov in občutljivih podatkov podjetja.

Tehnološka podjetja se proti kraji gesel in drugim vrstam kibernetskih napadov borijo med drugim z enkratnimi gesli (OTP). OTP je oblika večfaktorskega preverjanja pristnosti (MFA), zasnovana tako, da hekerjem precej oteži dostop do zaščitenih podatkov.

MFA poleg preprostega gesla zahteva dodatne poverilnice, preden končni uporabnik dobi dostop do aplikacije ali sistema. MFA s sporočili SMS na primer uporabniku pošlje sporočilo z nizom številk, ki ga mora vnesti, preden dobi dostop. Ta koda je ena od vrst OTP.

Tako podjetja B2B kot B2C želijo zaščititi podatke uporabnikov in podjetja, hkrati pa ohraniti odlično uporabniško izkušnjo (UX), kar pomeni, da mora biti vsaka varnostna rešitev, ki jo izberejo, poenostavljena in ne sme drastično posegati v uporabnikov potek dela.

Preverjanje pristnosti z OTP je eleganten odgovor tako na varnostne pomisleke kot na UX. Obstajata dve vrsti OTP: HOTP in TOTP. Spodaj predstavljamo razlike med njima. Najprej pa se nekoliko poglobimo v OTP.

Kaj je OTP in kako deluje?

OTP je kot geslo, vendar ga lahko uporabiš le enkrat, zato je kratica za enkratno geslo (one-time password). Pogosto se uporablja v kombinaciji z običajnim geslom kot dodaten mehanizem preverjanja pristnosti, ki zagotavlja dodatno varnost.

OTP je točno to, kar pove ime: enkrat in konec. Ko enkrat uporabiš geslo, izgine, in ko moraš naslednjič v aplikacijo, potrebuješ drugo. To poveča varnost in nepridipravom precej oteži vdor v zasebne račune.

Uporabniki lahko do OTP za določeno aplikacijo ali spletno stran dostopajo prek aplikacije na pametnem telefonu, sporočila SMS ali lastnega žetona (na primer obeska za ključe). OneLogin Protect je primer generatorja OTP, ki ga lahko uporabljaš kot aplikacijo na telefonu. Vsakič, ko po SMS-u prejmeš kodo, ki ti pomaga pri prijavi na spletno stran ali v aplikacijo, uporabljaš OTP.

Obstaja več standardnih algoritmov, na primer SHA-1, ki ustvarjajo OTP. Vsak algoritem za ustvarjanje kode OTP uporablja dva vhoda: seme in spremenljivi faktor. Seme je statična vrednost (skrivni ključ), ki nastane, ko na strežniku za preverjanje pristnosti ustvariš nov račun.

Medtem ko se seme ne spreminja, se spremenljivi faktor spremeni ob vsaki zahtevi za novo OTP. Način ustvarjanja spremenljivega faktorja je glavna razlika med HOTP in TOTP.

Kaj je HOTP?

»H« v HOTP pomeni Hash-based Message Authentication Code (HMAC). Algoritem enkratnih gesel na osnovi HMAC (HOTP) je, poenostavljeno povedano, dogodkovno zasnovana OTP, pri kateri spremenljivi faktor vsake kode temelji na števcu.

Vsakič, ko je HOTP zahtevana in potrjena, se spremenljivi faktor poveča glede na števec. Ustvarjena koda je veljavna, dokler aktivno ne zahtevaš nove in je strežnik za preverjanje pristnosti ne potrdi. Generator OTP in strežnik se sinhronizirata vsakič, ko je koda potrjena in uporabnik dobi dostop. Yubico YubiKey je primer generatorja OTP, ki uporablja HOTP.

Kaj je TOTP?

Časovno zasnovano enkratno geslo (TOTP) je OTP, ki temelji na času. Seme TOTP je statično, tako kot pri HOTP, vendar spremenljivi faktor TOTP temelji na času, ne na števcu.

Čas, v katerem je posamezno geslo veljavno, imenujemo časovni korak. Časovni koraki so običajno dolgi 30 ali 60 sekund. Če gesla v tem oknu nisi uporabil, ni več veljavno in za dostop do aplikacije moraš zahtevati novo.

Video: HOTP vs TOTP - what are the differences? Which one is better? (2FAS - Authenticator and Password Manager, v angleščini)

Omejitve in prednosti

Čeprav sta obe precej varnejši kot popolna odsotnost MFA, imata tako HOTP kot TOTP svoje omejitve in prednosti. TOTP (novejša od obeh tehnologij) je enostavna za uporabo in uvedbo, vendar lahko zaradi časovnega elementa pride do časovnega zamika (zakasnitve med ustvarjanjem in uporabo gesla). Če uporabnik TOTP ne vnese takoj, obstaja možnost, da poteče, preden to stori. Strežnik mora to upoštevati in uporabniku olajšati ponoven poskus, ne da bi ga samodejno zaklenil.

Ker HOTP nima časovne omejitve, je nekoliko prijaznejša do uporabnikov, vendar je lahko bolj občutljiva za napade s surovo silo. Razlog je potencialno daljše okno, v katerem je HOTP lahko veljavna. Nekatere oblike HOTP so to ranljivost upoštevale tako, da so kodi dodale časovno komponento, s čimer se meje med obema vrstama OTP nekoliko zabrišejo.

Povzetek

Ne glede na to, katero vrsto OTP uporabljaš, je generator OTP, na primer aplikacija za preverjanje pristnosti ali obesek za ključe, varnejši način uporabe MFA kot možnosti s sporočili SMS. Prevaranti so našli ustvarjalne načine za prestrezanje teh kod SMS, bodisi z goljufijo s karticami SIM bodisi z drugimi vrstami vdorov, s katerimi pridejo do tvojih sporočil SMS. Čeprav je MFA prek SMS-a morda boljša kot nobena MFA, je precej manj varna od aplikacije za preverjanje pristnosti na telefonu ali generatorja kod na obesku za ključe.

Nazaj na blog