A TOTP a „time-based one-time password” (időalapú egyszeri jelszó) rövidítése. Ez a technológia áll az azonosítóalkalmazások által megjelenített számos hatjegyű kód mögött. A TOTP-kódot egy privát beállítási kulcs és az aktuális idő alapján számítják ki, majd rövid idő elteltével lejár.

A TOTP-t általában a kétfaktoros hitelesítés második lépéseként használják. Mobilhálózati jel nélkül is működik, mivel az azonosító alkalmazás a kódot helyileg számítja ki, ahelyett, hogy üzenetre várna.

Milyen információkból áll a TOTP-kód?

Két adat számít: egy megosztott titkos kulcs és egy időszámláló. A fiókszolgáltató a beállítás során létrehoz egy titkos kulcsot, és azt QR-kód vagy manuális kulcs formájában megadja az azonosító alkalmazásnak. Ezután mindkét fél egyenlő időintervallumokra osztja az időt, és elvégzi ugyanazt a kriptográfiai számítást.

Ha a titkos kulcs, az algoritmus és az időablak megegyezik, mindkét fél ugyanazt a rövid kódot állítja elő. Magát a titkos kulcsot nem kell minden bejelentkezéskor továbbítani.

Four-stage TOTP process from secret and time to code validation
Az hitelesítő eszköz és a szolgáltatás egymástól függetlenül számolja ki az értéket ugyanabból a titkos kulcsból és időablakból.

Hogyan működik a TOTP?

  1. A szolgáltató létrehoz egy egyedi titkos kulcsot az azonosító regisztrációjához.
  2. Beolvassa a beállítási QR-kódot, vagy beírja a kézi titkot egy megbízható eszközön.
  3. Az azonosító eszköz a titkos kulcsot az aktuális időablakkal kombinálja.
  4. Az eredményt egy rövid, általában hat számjegyből álló kódra redukálja.
  5. A szolgáltató kiszámítja a várt kódot, és összehasonlítja azt az Ön által megadottal.

Az RFC 6238 a TOTP-t a HOTP időalapú változataként határozza meg. A leggyakoribb konfiguráció 30 másodperces időtartamot, hat számjegyet és HMAC-SHA-1 algoritmust használ, bár léteznek más támogatott algoritmusok és beállítások is.

Miért járnak le a TOTP-kódok?

A rövid érvényességi idő korlátozza, hogy egy másolt kódot mennyi ideig lehet újra felhasználni. Amint az időablak megváltozik, a hitelesítő eszköz új értéket generál. A szolgáltatások tolerálhatnak egy kis eltérést az időablakban a hálózati késleltetés és a kis időeltérések figyelembevétele érdekében, de a nagyobb tolerancia egyúttal megnöveli az elfogadási ablakot is.

Írja be az új kódot a visszaszámlálás kezdete közelében. Ha a kódokat folyamatosan elutasítják, kövesse útmutatónkat a nem működő kétfaktoros hitelesítési kód kijavításához.

TOTP kontra HOTP

A TOTP és a HOTP hasonló számításokat alkalmaz, de eltérő módon haladnak előre:

  • A TOTP egy időlépés szerint változik, ezért az azonosítók óráit szinkronizálni kell.
  • A HOTP akkor változik, amikor a számláló előrelép, például egy gombnyomás vagy sikeres használat után.

A TOTP gyakori a szoftveres hitelesítő alkalmazásokban, mivel az idő automatikus változó tényezőt biztosít. A HOTP-t még mindig használják egyes hardveres tokenek és speciális rendszerek.

TOTP és SMS-kódok

A TOTP-alkalmazás a kódokat az eszközön számítja ki, és általában offline módon működik. Az SMS a telefonhálózatra támaszkodik a kódok kézbesítéséhez. Az SMS kényelmes, de befolyásolhatják a SIM-csere, a számátadás, a lehallgatás és a kézbesítési hibák.

Sem a hagyományos TOTP, sem az SMS nem teljesen ellenálló a phishing-támadásokkal szemben: egy meggyőző hamis bejelentkezési oldal képes rögzíteni és továbbítani az aktuális kódot. Fontos fiókok esetében általában erősebb megoldás egy jelszó vagy FIDO biztonsági kulcs, amennyiben azok támogatottak. Tekintse meg az azonosító alkalmazások és az SMS részletes összehasonlítását.

Mi az a TOTP-titok?

A titkos kulcs az a hosszú élettartamú hitelesítő adat, amely az adott regisztrációhoz tartozó összes jövőbeli kód alapját képezi. Aki rendelkezik vele, beállíthat egy másik hitelesítő alkalmazást, és generálhat hozzá illő értékeket. A beállítási QR-kódról készült képernyőkép érzékeny adatnak minősül, mivel általában tartalmazza ezt a titkos kulcsot.

Útmutatónk elmagyarázza, hol található a kézi 2FA-beállítási kulcs, és hogyan lehet megkülönböztetni a jelszótól vagy a helyreállítási kódtól.

Működik a TOTP offline módban is?

Igen. A beállítás után az azonosítóalkalmazásnak a titkos kulcsra és pontos órára van szüksége, nem pedig aktív internetkapcsolatra. A bejelentkezést ellenőrző szolgáltatásnak azonban továbbra is hozzáférnie kell a tárolt regisztrációs adatokhoz.

Hogyan használjuk biztonságosan a TOTP-generátort?

  • Kizárólag olyan titkokat használjon, amelyek olyan fiókokhoz tartoznak, amelyek kezelésére jogosult.
  • A titok megadása előtt ellenőrizze a webhely címét és az eszközt.
  • Soha ne küldjön titkos kódot vagy beállítási QR-kódot csevegőn vagy ügyfélszolgálati űrlapokon keresztül.
  • A helyreállítási kódokat tartsa elkülönítve a mindennapi hitelesítőtől.
  • Ha a titkos kód esetleg kiszivárgott, generálja újra a regisztrációt.

Engedélyezett tesztelés céljából a Get2FA.dev TOTP-generátor a böngészőjében számítja ki a szabványos kódokat. Fontos fiókok napi használatához inkább válasszon egy megbízható hitelesítő alkalmazást vagy hardveralapú módszert.

Gyakran feltett kérdések

Mennyi ideig érvényes egy TOTP-kód?

A 30 másodperc a szokásos alapértelmezett érték, de a szolgáltató más időtartamot is beállíthat. A visszaszámlálás egy időablakhoz tartozik; a kód megtekintése vagy másolása nem indítja újra.

Miért általában hat számjegyből állnak a TOTP-kódok?

A hat számjegy egyensúlyt teremt a használhatóság és a lehetséges értékek korlátozott száma között. A sebességkorlátozások és a rövid érvényességi időtartamok azért fontosak, mert a kódtér önmagában nem túl nagy.

Két eszköz is megjelenítheti ugyanazt a TOTP-kódot?

Igen, ha mindkettő ugyanazt a titkos kulcsot tárolja, ugyanazokat a beállításokat használja, és az óráik szinkronizálva vannak. Hogy a regisztráció duplikálása megfelelő-e, az a biztonsági irányelveitől függ.

A TOTP megegyezik a 2FA-val?

Nem. A TOTP a hitelesítés egyik lehetséges módja. Olvassa el, mit jelent a 2FA, és hogyan működnek a többi módszerei.