0

TOTP-generátor — Élő 2FA hitelesítő kód

Illesszen be egy Base32 TOTP titkot, és nézze meg, hogy a valódi, élő hatjegyű hitelesítő kód 30 másodpercenként forog – teljesen offline módban a böngészőjében.

- -

30 Másodpercek

Feldolgozás... 0%

Eredmény

Ez az eszköz valódi, szabványoknak megfelelő időalapú egyszeri jelszó (TOTP) kódokat állít elő egy Base32 titkos adatból, ugyanazokat a hat számjegyű, forgó kódokat, amelyeket olyan alkalmazások mutatnak be, mint a Google Authenticator vagy az Authy. Illessze be a titkot, amelyet a kétfaktoros hitelesítés beállításakor kapott – ugyanazt a karakterláncot általában QR-kód mögé rejtve –, és nézze meg az élő kód visszaszámlálását és 30 másodpercenkénti frissítését, pontosan úgy, mint egy telefonos alkalmazásban. Az Ön tulajdonában lévő vagy ellenőrzött 2FA-titkok tesztelésére és ellenőrzésére szolgál: az Ön által épített bejelentkezési folyamat hibakeresése, a biztonsági kód megerősítése, mielőtt kidobja a kiépítési QR-kódot, vagy kétszeri ellenőrzése, hogy a titkot helyesen írta-e be.

A motorháztető alatt ez az RFC 6238 (TOTP) valódi megvalósítása, amely RFC 4226-ra (HOTP) épül, nem pedig kozmetikai visszaszámlálás. A Base32 titkot RFC 4648 szerint nyers kulcsbájtokra dekódolják, az aktuális Unix-időt elosztják az időlépéssel, hogy mozgó számlálót kapjunk, és ez a számláló egy 8 bájtos big-endian pufferként van kódolva. A böngésző natív webes kriptográfiai API-ja (crypto.subtle) egy HMAC-t számít ki ezen a pufferen keresztül az Ön által választott hash-sel – az SHA-1 továbbra is az univerzális alapértelmezett kompatibilitás a meglévő hitelesítő alkalmazásokkal, míg az SHA-256 és SHA-512 az erősebb változatokat támogató beállításokhoz kínálja. Az RFC 4226 dinamikus csonkítása ezután négy bájtot húz ki a HMAC kimenetből az utolsó bájtból vett eltolás mellett, maszkolja a felső bitet, és lecsökkenti az eredményt modulo 10^6 vagy 10^8 értékkel, hogy 6 vagy 8 számjegyű kódot állítson elő – pontosan ugyanazt az aritmetikát, amelyet a telefon hitelesítő alkalmazása is futtat belülről.

A folyamat minden része helyben történik: nincs szerverkomponens, nincs a titkát hordozó analitikai jeladó, és nincs semmilyen külső API-hívás. A mezőbe beillesztett Base32 szöveget a lapon futó JavaScript közvetlenül elemzi, és soha nem hagyja el. Ez biztonságos módszer a 2FA-titok józan ellenőrzésére egy megbízható gépen, bár mint minden más hitelesítési anyagot érintő eszköznél, továbbra is kerülnie kell a titkok beillesztését megosztott vagy nyilvános számítógépekre, és ezt mindig csak az Ön tulajdonában lévő vagy kifejezetten tesztelésre feljogosított fiókokhoz kapcsolódó kódokhoz használja.

Az algoritmus, a számjegyek és az időlépések vezérlői azért léteznek, mert a valós TOTP-telepítések nem teljesen egységesek: a legtöbb fogyasztói szolgáltatás 6 számjegyű és 30 másodperces lépésből álló SHA-1-et használ, de egyes vállalati és fejlesztői eszközök SHA-256 vagy SHA-512 titkokat, 8 számjegyű 6 vagy 6 nem szabványos időkódokat adnak ki. Ha ezeket a beállításokat a kiépítési URI-n vagy a beállítási oldalon megadja, pontosan azt a kódot reprodukálhatja, amelyet a hitelesítő alkalmazás megjelenít, ami felbecsülhetetlen, ha saját TOTP-ellenőrző szerverét implementálja, és megbízható, offline hivatkozásra van szüksége az összehasonlításhoz.