Generátor kódů TOTP a HOTP
Generuj kódy 2FA TOTP a HOTP z tajemství v Base32 nebo z URI otpauth:// s SHA-1, SHA-256 či SHA-512, živým odpočtem a QR kódem pro aplikace 2FA.
Tajemství 2FA je stejně citlivé jako heslo. Všechno zde běží lokálně ve tvém prohlížeči: tajemství, kódy ani QR kód se nikam neposílají.
- Předchozí kód
- —
- Aktuální kód
- —
- Další kód
- —
Kódy TOTP závisí na hodinách tvého zařízení. Pokud se neshodují, zkontroluj, zda je čas nastaven automaticky.
Nastavit aplikaci pro ověřování
Přidej vydavatele a název účtu, pak naskenuj QR kód nebo zkopíruj odkaz otpauth:// do své ověřovací aplikace.
Jak vygenerovat kódy TOTP
- Vlož tajemství v Base32 (například
JBSWY3DPEHPK3PXP) nebo celý odkazotpauth://do pole Tajemství (Base32) nebo URI otpauth://. Přijímají se mezery, spojovníky, malá písmena i chybějící doplnění=. - Kódy se zobrazí během psaní nebo po kliknutí na Zobrazit kódy. Vložené URI za tebe vyplní pole Typ, Algoritmus, Počet číslic, Perioda (sekundy), Vydavatel a Účet.
- Aktuální kód najdeš uprostřed, Předchozí kód a Další kód po jeho stranách. Lišta pod nimi odpočítává sekundy do změny kódu a Kopírovat kód ho zkopíruje bez mezery.
- Pro kódy podle čítače zvol HOTP (podle čítače), nastav Čítač a tlačítkem Další čítač pokračuj dál.
- Nové tajemství 2FA vytvoříš tlačítkem Nové náhodné tajemství. Vyplň Vydavatele a Účet, pak naskenuj QR kód ověřovací aplikací, použij Kopírovat URI nebo Stáhnout QR kód (PNG).
Jak TOTP a HOTP fungují
HOTP (RFC 4226) vypočítá HMAC 8bajtového čítače se sdíleným tajemstvím a poté použije dynamické zkrácení: poslední čtyři bity HMAC určí posun, od něj se přečtou čtyři bajty, nejvyšší bit se vynuluje a číslo se zredukuje modulo 10^počet číslic. Výsledkem je 6 až 8místný kód.
TOTP (RFC 6238) je HOTP, kde čítač je aktuální časový krok: T = floor(čas Unix / perioda), s výchozí periodou 30 sekund. Tvůj telefon a server vypočítají stejný kód nezávisle, protože sdílejí tajemství a (zhruba) stejné hodiny. Proto se zobrazují Předchozí kód a Další kód: servery obvykle přijímají jeden krok před nebo po, aby tolerovaly odchylku hodin.
HMAC běží přes Web Crypto API tvého prohlížeče s algoritmem SHA-1, SHA-256 nebo SHA-512. SHA-1 se 6 číslicemi a 30 sekundami používá téměř každá služba; SHA-256 a SHA-512 RFC 6238 povoluje, ale některé aplikace je ignorují, takže výchozí hodnoty měň, jen když to služba vyžaduje.
URI otpauth:// a QR kód
Ověřovací aplikace se nastavují pomocí URI jako otpauth://totp/Example:alice@example.com?secret=…&issuer=Example&algorithm=SHA1&digits=6&period=30, obvykle zobrazeného jako QR kód. Tento nástroj takové URI čte (včetně popisků kódovaných procenty, jako ACME%20Co) a vytváří nová. QR kód se kreslí lokálně z URI zobrazeného pod nadpisem URI otpauth://.
Nové náhodné tajemství má 20 bajtů (160 bitů), tedy délku doporučenou v RFC 4226, a pochází z crypto.getRandomValues.
Bezpečnostní tipy
- Tajemství je samotný druhý faktor: kdo ho má, může vytvářet tvoje kódy. Nevkládej tajemství důležitých účtů na sdílených počítačích a nikdy nesdílej snímky obrazovky s QR kódem.
- Všechno se počítá lokálně; po síti se nic neposílá. Až skončíš, zavři kartu.
- Uschovej si záložní kódy od služby: ztracené tajemství nelze obnovit.
Časté dotazy
Proč se můj kód neshoduje s kódem v aplikaci?
Nejdřív zkontroluj hodiny svého zařízení: kódy TOTP se mění každou periodu, takže hodiny, které se liší o více než zhruba 30 sekund, dávají jiné kódy. Pak zkontroluj, zda algoritmus, počet číslic a perioda odpovídají tomu, co služba použila.
Je nástroj kompatibilní s Google Authenticator a podobnými aplikacemi?
Ano. Řídí se RFC 6238 a formátem URI otpauth, který tyto aplikace používají. Naskenuj QR kód nebo zadej tajemství v Base32 do aplikace a obě by měly ukazovat stejný Aktuální kód.
V čem se liší TOTP a HOTP?
TOTP postupuje s časem, takže kód po uplynutí periody vyprší. HOTP postupuje s čítačem, který se zvýší při každém použití kódu, takže kód zůstává platný, dokud se nepoužije nebo nenahradí.
Mohu tento nástroj používat jako svůj každodenní autentikátor?
Je určen k testování, vývoji a obnově. Pro každodenní použití je bezpečnější aplikace v telefonu nebo hardwarový klíč, protože tajemství se nemusí pokaždé vkládat do webové stránky.
Byly výpočty ověřeny podle norem?
Ano. Nástroj je otestován hodnotami HOTP z přílohy D RFC 4226 a hodnotami TOTP z přílohy B RFC 6238 pro SHA-1, SHA-256 a SHA-512.
Související nástroje
- Generátor HMAC Vypočítej HMAC-SHA1, SHA-256, SHA-384 nebo SHA-512 s klíčem v textu, hex nebo Base64, získej výstup v hex a Base64 a zkontroluj podpis webhooku v prohlížeči.
- Generátor hesel Zdarma vytvoř silná náhodná hesla o 4 až 128 znacích v prohlížeči pomocí bezpečného generátoru náhodných čísel. Nic se neukládá ani neodesílá.
- Generátor QR kódů Vytvoř zdarma QR kódy pro odkazy, text, Wi-Fi, kontakty, e-mail a SMS. Přidej barvy a logo a stáhni PNG nebo SVG. Nic neopustí tvoje zařízení.
- Shamirovo sdílení tajemství Rozděl heslo nebo obnovovací frázi na N částí tak, aby ji libovolných M z nich obnovilo. Shamirovo sdílení tajemství v GF(256) lokálně v prohlížeči.