Sobes.tech
Back to questions
Middle+
4

Что такое TOTP?

Companies where asked
SberDevices

Answer from AI

sobes.tech AI

TOTP (Time-based One-Time Password) — это алгоритм генерации одноразовых паролей, основанный на текущем времени. Он используется для двухфакторной аутентификации (2FA), где пользователь вводит временный код, который меняется каждые 30-60 секунд.

Принцип работы:

  • На сервере и клиенте есть общий секретный ключ.
  • Из этого ключа и текущего времени (обычно округленного до 30-секундных интервалов) вычисляется хеш.
  • Из хеша извлекается числовой код фиксированной длины (обычно 6 цифр).

Преимущество TOTP в том, что код меняется со временем и не требует постоянного подключения к серверу, достаточно синхронизации времени и общего секрета.

Пример использования — Google Authenticator, Microsoft Authenticator и другие приложения для 2FA.

Пример генерации TOTP на JavaScript с библиотекой otplib:

const { totp } = require('otplib');
const secret = 'KVKFKRCPNZQUYMLXOVYDSQKJKZDTSRLD';
const token = totp.generate(secret);
console.log(token); // например, '492039'