0

Генератор на TOTP — 2FA код за удостоверяване на живо

Поставете Base32 TOTP секрет и гледайте как истинският, жив 6-цифрен код за удостоверяване се върти на всеки 30 секунди — изцяло офлайн във вашия браузър.

- -

30 Секунди

Обработка... 0%

Резултат

Този инструмент генерира реални, съвместими със стандартите кодове за еднократна парола (TOTP), базирани на времето, от Base32 тайна, същите шестцифрени ротационни кодове, показани от приложения като Google Authenticator или Authy. Поставете тайната, която сте получили, когато настройвате двуфакторна автентификация – същият низ, който обикновено е скрит зад QR код – и гледайте как кодът на живо отброява и се опреснява на всеки 30 секунди, точно както в приложение за телефон. Той е предназначен за тестване и проверка на 2FA тайни, които притежавате или контролирате: отстраняване на грешки в потока на влизане, който изграждате, потвърждаване на резервен код, преди да изхвърлите QR за осигуряване, или двойна проверка дали тайната е въведена правилно.

Под капака това е истинска реализация на RFC 6238 (TOTP), изградена върху RFC 4226 (HOTP), а не козметично обратно броене. Тайната на Base32 се декодира съгласно RFC 4648 в необработени ключови байтове, текущото време на Unix се разделя на времевата стъпка, за да се получи движещ се брояч, и този брояч се кодира като 8-байтов буфер с голямо начало. Вътрешният Web Crypto API на браузъра (crypto.subtle) изчислява HMAC върху този буфер с избрания от вас хеш — SHA-1 остава почти универсалната по подразбиране за съвместимост със съществуващи приложения за удостоверяване, докато SHA-256 и SHA-512 се предлагат за настройки, които поддържат по-силните варианти. Динамичното отрязване на RFC 4226 след това изтегля четири байта от изхода на HMAC при отместване, взето от последния му байт, маскира горния бит и намалява резултата по модул 10^6 или 10^8, за да произведе 6- или 8-цифрен код — точно същата аритметика, която приложението за удостоверяване на вашия телефон изпълнява вътрешно.

Всяка част от процеса се случва локално: няма сървърен компонент, няма аналитичен маяк, носещ вашата тайна, и никакво външно API извикване от какъвто и да е вид. Текстът Base32, който поставяте в полето, се анализира директно от JavaScript, работещ във вашия раздел, и никога не го напуска. Това прави това безопасен начин за проверка на надеждността на 2FA тайна на машина, на която имате доверие, въпреки че както при всеки инструмент, който докосва материал за удостоверяване, все пак трябва да избягвате поставянето на тайни на споделени или обществени компютри и трябва да използвате това само за кодове, свързани с акаунти, които притежавате или сте изрично упълномощени да тествате.

Алгоритъмът, броят на цифрите и контролите на стъпките във времето съществуват, защото внедряването на TOTP в реалния свят не е идеално еднакво: повечето потребителски услуги използват SHA-1 с 6 цифри и стъпка от 30 секунди, но някои корпоративни инструменти и инструменти за разработчици издават тайни SHA-256 или SHA-512, 8-цифрени кодове или нестандартни времеви стъпки като 15 или 60 секунди. Съпоставянето на тези настройки с какъвто и да е URI за предоставяне или страница за настройка, ви позволява да възпроизведете точно кода, който вашето приложение за удостоверяване би показало, което е безценно, когато внедрявате свой собствен сървър за проверка на TOTP и се нуждаете от надеждна офлайн препратка за сравнение.