O que são Time based One Time Passwords (TOTP)?
Time based One Time Passwords (TOTP) é um método que fornece códigos curtos e expiráveis para confirmar um início de sessão. O seu telemóvel e o serviço conhecem ambos um segredo partilhado e a hora atual, por isso chegam de forma independente ao mesmo código de seis dígitos. Imagine uma combinação de cacifo que vai mudando enquanto observa, sim, é tão simples.
TOTP precisa de sinal de telefone para funcionar. Não. A app gera códigos no seu dispositivo usando o tempo e um segredo partilhado, por isso funciona mesmo em modo avião.
Como funcionam os Time based One Time Passwords (TOTP)
Aqui está o fluxo quando o ativa para iniciar sessão numa exchange ou numa carteira.
- Início: Nas definições de segurança, escolha a opção de uma app autenticadora e escaneie o código QR.
- Segredo: A sua app guarda uma semente partilhada, frequentemente chamada de chave secreta, que emparelha o seu dispositivo com o serviço.
- Sincronização: Ambos os lados leem o mesmo relógio em intervalos curtos e executam os cálculos padrão para gerar um código de seis dígitos.
- Introduzir: Ao iniciar sessão, introduza o código antes de o temporizador expirar.
- Verificar: O serviço verifica o código com os mesmos cálculos e permite o acesso se coincidir.
Pronto, é isso.
Porque Time based One Time Passwords (TOTP) é importante
Responda ao "e daí" em termos simples:
- Benefício: Impede muitos acessos não autorizados à conta mesmo que alguém conheça a sua palavra-passe.
- Perspectiva: Códigos SMS podem ser frágeis devido a trocas de cartão SIM, por isso TOTP é um segundo passo mais seguro. A maioria dos serviços permite ativar a autenticação de dois fatores 2FA com uma app autenticadora.
- Relevância: Encontrá-lo-á em exchanges, mercados de NFT, painéis DeFi e portais de custódia.
Anote ou guarde de forma segura a semente quando a configurar, e mantenha o relógio do telemóvel em atualização automática. Perder a semente e a deriva do relógio resultam em bloqueio de acesso.
Principais características dos Time based One Time Passwords (TOTP)
Pontos rápidos a saber:
- Validade: Os códigos duram cerca de trinta segundos e depois mudam.
- Offline: Uma vez configurada, a sua app gera códigos sem internet.
- Partilhado: Ambos os lados dependem do mesmo segredo guardado na configuração.
- Aberto: Baseado num RFC público, razão pela qual muitas apps o suportam.
Como é calculado o Time based One Time Passwords (TOTP)?
Por baixo do capô, TOTP usa uma função unidirecional com o tempo como entrada. Não é preciso fazer isto manualmente, mas aqui está a ideia:
TOTP code = Truncate(HMAC SHA 1(secret, counter)) mod 10^digits counter = floor(unix time in seconds divided by step) step = 30 and digits = 6 in most apps Variações
Principais variantes que verá:
- HOTP: Um código baseado em contador que avança a cada uso, não ligado ao tempo.
- Push: Uma notificação na app que aprova, semelhante ao TOTP sem ter de digitar um código.
- Hardware: Um token pequeno que mostra códigos num ecrã ou chaveiro.
- Multi: Apps que armazenam várias contas e opções de backup para recuperação.
O TOTP não o salva se inserir um código válido num site falso. Esteja atento aos riscos de phishing e verifique sempre a barra de endereços antes de confirmar.
Exemplo
Inicia sessão numa exchange de criptomoedas, insere a sua palavra-passe, depois abre a sua app autenticadora para digitar um Time based One Time Passwords (TOTP) de seis dígitos que expira em trinta segundos.
Curiosidade
O TOTP foi normalizado no RFC 6238 pela comunidade OATH, e é a espinha dorsal silenciosa por trás do Google Authenticator e de muitas outras apps. Rolex encontra threads do Reddit, mas para códigos de início de sessão.
Resumo
Pense no TOTP como um pequeno cadeado sincronizado por tempo que torna o seu início de sessão mais difícil de roubar e fácil de usar.
