O que é a autenticação de dois fatores? Guia simples
A autenticação de dois fatores (2FA) é um início de sessão que pede dois tipos diferentes de prova de que é quem diz ser — normalmente algo que sabe, como uma palavra-passe, mais algo que tem, como o seu telemóvel ou uma chave de segurança. Se um criminoso roubar ou adivinhar a sua palavra-passe, ainda não consegue entrar sem o segundo fator. É uma das formas mais simples de proteger contas que importam.
Porque é que importa quando se cria com IA
Quando pede a um construtor de IA um "início de sessão", normalmente obtém email e palavra-passe. É um bom começo, mas as palavras-passe são reutilizadas, alvo de phishing e divulgadas. Se a sua aplicação guarda algo valioso — registos de clientes, faturas, controlos de administração, definições de pagamento —, uma única palavra-passe roubada pode expor tudo.
A 2FA também afeta decisões em que talvez não pense logo à partida:
- Quem tem de a usar. Opcional para todos, obrigatória para administradores ou obrigatória para todos?
- Que métodos suporta. Códigos de uma app, mensagens de texto, passkeys, chaves de segurança.
- O que acontece quando alguém fica bloqueado. Telemóveis perdidos são o pedido de apoio mais comum em qualquer aplicação com 2FA.
- Onde é aplicada. A verificação tem de acontecer no servidor. Um ecrã de 2FA que apenas esconde a página no navegador pode ser ignorado.
Não precisa de construir a criptografia por si — bibliotecas testadas e fornecedores de autenticação tratam disso. Mas precisa de saber o que pedir.
Uma analogia do dia a dia
Pense num cofre de um banco. Para o abrir, precisa do seu documento de identificação (algo que o banco verifica que você é ou sabe) e da chave física (algo que tem). Um ladrão que copie a sua assinatura continua sem a chave. Um ladrão que roube a chave continua sem passar a verificação de identidade.
A 2FA funciona da mesma forma. A palavra-passe é a assinatura; o telemóvel ou a chave de segurança é a chave física. Cada uma sozinha não basta.
Os três tipos de fatores
As normas de segurança, como as diretrizes de identidade digital do National Institute of Standards and Technology (NIST) dos EUA, agrupam os fatores em três tipos:
| Fator | Exemplos |
|---|---|
| Algo que sabe | Palavra-passe, PIN |
| Algo que tem | Telemóvel com uma app de autenticação, uma chave de segurança, um dispositivo com uma passkey |
| Algo que é | Impressão digital, rosto — normalmente usado para desbloquear um dispositivo que depois faz a verificação real |
A palavra-chave é diferente. Uma palavra-passe mais uma pergunta de segurança são duas coisas que sabe, por isso não é uma verdadeira autenticação de dois fatores. Se uma única fuga de informação revelar ambas, conta apenas como uma.
Os métodos de 2FA comuns comparados
| Método | Como funciona | Força | Notas |
|---|---|---|---|
| Código por SMS | Um código é enviado por mensagem para o seu número | Mais fraco | Vulnerável a SIM swapping e phishing, mas muito melhor do que não ter 2FA |
| Código por email | Um código é enviado por email | Fraco | Só é tão seguro quanto a conta de email |
| App de autenticação (TOTP) | Uma app como o Google Authenticator gera um novo código de 6 dígitos, normalmente a cada 30 segundos | Bom | Funciona offline; continua vulnerável a phishing se um site falso pedir o código |
| Aprovação por notificação | Uma app pergunta "Foi você?" e carrega em aprovar | Bom | Atenção à "fadiga de aprovação", em que os utilizadores aceitam para deixar de ver pedidos repetidos |
| Passkey ou chave de segurança | Uma chave criptográfica num dispositivo prova que está no site verdadeiro | Mais forte | Resiste a phishing porque não responde a um domínio parecido |
As orientações do NIST tratam os métodos em que se escreve um código (SMS, email, apps de autenticação) como não resistentes a phishing, e classificam o envio de códigos pela rede telefónica como "restrito". As passkeys e as chaves de segurança físicas, baseadas nas normas WebAuthn/FIDO2, são as que considera resistentes a phishing.
Uma conclusão prática: uma app de autenticação é um padrão forte e fácil para a maioria das aplicações, e as passkeys valem a pena se os seus utilizadores se sentirem à vontade com elas.
Um exemplo prático: 2FA para um portal de clientes
Imagine que criou um portal onde um pequeno gabinete de contabilidade partilha documentos fiscais com os clientes. Eis como funciona uma configuração sensata de 2FA, passo a passo.
Ativar (registo). A Priya, uma cliente, abre as Definições e clica em "Ativar autenticação de dois fatores". A aplicação gera um segredo e mostra-o como código QR. Ela lê-o com a sua app de autenticação, que começa a mostrar códigos de seis dígitos. Escreve o código atual de volta no portal para provar que a configuração funcionou. A aplicação mostra dez códigos de recuperação e pede-lhe que os guarde num sítio seguro.
Entrar depois.
- A Priya introduz o email e a palavra-passe. O servidor verifica-os.
- Em vez de a deixar entrar de imediato, o servidor marca a sessão como "palavra-passe correta, segundo fator pendente" e mostra o ecrã do código.
- Ela escreve o código da app. O servidor compara-o com o segredo guardado, tolerando um pequeno desvio do relógio.
- Só agora o servidor cria uma sessão completa e a deixa ver os documentos.
O que vê um atacante. Se a palavra-passe da Priya tiver sido divulgada noutro site, o atacante fica bloqueado no passo 3. Cada tentativa de código errada é contada, e após várias falhas a conta é bloqueada temporariamente e a Priya recebe um email.
Perder o telemóvel. A Priya usa um dos seus códigos de recuperação para entrar, desativa e volta a ativar a 2FA com o novo telemóvel, e obtém códigos de recuperação novos. O código usado nunca mais pode ser utilizado.
Para a equipa. Os contabilistas do gabinete podem ver os ficheiros de todos os clientes, por isso o portal exige 2FA para as contas da equipa; não conseguem chegar ao painel até terem feito o registo.
Termos comuns explicados
| Termo | O que significa |
|---|---|
| 2FA / MFA | Autenticação de dois fatores / multifator: entrar com mais de um tipo de prova. |
| Fator | Um tipo de prova: algo que se sabe, se tem ou se é. |
| TOTP | Palavra-passe de uso único baseada no tempo — os códigos rotativos das apps de autenticação. |
| Segredo partilhado | O valor oculto, configurado por código QR, que a app e o seu telemóvel usam para gerar códigos iguais. |
| Códigos de recuperação (backup) | Códigos de uso único para entrar quando perdeu o segundo fator. |
| Passkey | Uma credencial de início de sessão guardada no seu dispositivo que usa criptografia de chave pública em vez de palavra-passe. |
| Chave de segurança | Um pequeno dispositivo físico (USB ou NFC) que faz o mesmo trabalho que uma passkey. |
| SIM swapping | Enganar a operadora para transferir o número de alguém para um novo cartão SIM, para que as mensagens cheguem ao atacante. |
| Phishing | Um site ou mensagem falsos que levam as pessoas a entregar palavras-passe ou códigos. |
| Autenticação de reforço | Pedir o segundo fator novamente antes de uma ação sensível, como alterar os dados de pagamento. |
Erros comuns e ideias erradas
- "A 2FA torna a conta impossível de invadir." Torna-a muito mais difícil. Sites de phishing ainda conseguem capturar códigos digitados em tempo real, e é por isso que existem as passkeys.
- Verificar o código apenas no navegador. Se o servidor emitir uma sessão completa depois da palavra-passe, o ecrã do código é apenas decoração. O servidor tem de recusar o acesso até o segundo fator passar.
- Sem limite para tentativas de código. Um código de seis dígitos tem um milhão de combinações. Sem limitação de pedidos e bloqueios, um atacante pode simplesmente continuar a tentar.
- Esquecer a recuperação. Sem códigos de recuperação, cada telemóvel perdido torna-se um pedido de apoio ou um cliente bloqueado.
- Guardar o segredo TOTP de forma descuidada. O segredo partilhado deve ser encriptado na base de dados e nunca voltar a ser mostrado após a configuração.
- Deixar os utilizadores desativar a 2FA sem nova verificação. Desativar a 2FA ou alterar o email deve exigir a palavra-passe e um código atual.
- Palavra-passe mais pergunta de segurança conta como 2FA. Não conta — ambas são coisas que se sabe.
O que pedir ao seu construtor de IA
- "Acrescente autenticação de dois fatores opcional com uma app de autenticação (TOTP), com um código QR para a configuração e um código de confirmação antes de ser ativada."
- "Mostre dez códigos de recuperação de utilização única quando a 2FA estiver ativa. Guarde-os com hash, como as palavras-passe."
- "Aplique a 2FA no servidor: não há sessão completa até o segundo fator passar."
- "Limite as tentativas de código e bloqueie o início de sessão durante 15 minutos após falhas repetidas. Envie um email ao utilizador quando isso acontecer."
- "Exija 2FA nas contas de administração."
- "Peça a palavra-passe e um código atual antes de desativar a 2FA ou alterar o email da conta."
- "Use uma biblioteca conhecida ou a 2FA incorporada do nosso fornecedor de autenticação — não escreva a criptografia por si."
- "Explique que método usou e onde os segredos são guardados."
Se usar um fornecedor de autenticação alojado, verifique se já oferece 2FA ou passkeys; ativar uma funcionalidade incorporada costuma ser mais seguro do que código personalizado. A versão passo a passo está em como adicionar autenticação de dois fatores, e o que é a autenticação explica os fundamentos do início de sessão por baixo.
Autenticação de dois fatores no Mythex
O Mythex não inclui um sistema de login incorporado para os utilizadores da sua aplicação, por isso a 2FA faz parte de qualquer abordagem de autenticação que escolher — o seu próprio login com email e palavra-passe apoiado pela base de dados do projeto, ou um fornecedor alojado que ofereça 2FA. Pede ao agente para a acrescentar no chat, e quaisquer chaves de fornecedor vão para os segredos do projeto, e não para o próprio chat. A receita da documentação sobre como adicionar login à sua aplicação tem um pedido inicial para adaptar, e a segurança das aplicações que cria cobre os hábitos em torno das chaves. Antes do lançamento, percorra a lista de verificação de segurança para aplicações criadas com IA.
Perguntas
O que é a autenticação de dois fatores, em termos simples?
A autenticação de dois fatores (2FA) significa que o início de sessão exige dois tipos diferentes de prova, normalmente a sua palavra-passe mais um código do telemóvel ou uma chave de segurança. Quem roubar apenas a sua palavra-passe continua sem conseguir entrar.
A 2FA é o mesmo que MFA?
Quase. A autenticação multifator (MFA) significa dois ou mais fatores; a autenticação de dois fatores é o caso mais comum, com exatamente dois. No uso do dia a dia, os termos são usados como sinónimos.
A autenticação de dois fatores por SMS é segura?
É muito melhor do que apenas uma palavra-passe, mas é a opção comum mais fraca. As mensagens de texto podem ser intercetadas ou redirecionadas através de SIM swapping, e uma página de login falsa pode levar as pessoas a escrever o código. As apps de autenticação são mais fortes, e as passkeys ou chaves de segurança ainda mais.
A minha aplicação precisa de autenticação de dois fatores?
Se as contas guardarem dinheiro, dados privados ou poder de administração sobre outros utilizadores, oferecer a 2FA é uma boa ideia, e exigi-la aos administradores é comum. Para uma aplicação simples de passatempo, pode ser opcional ou ficar para mais tarde.
O que acontece se um utilizador perder o telemóvel?
Para isso servem os códigos de recuperação: uma pequena lista de códigos de backup de utilização única, mostrada quando a 2FA é ativada. Sem eles, a recuperação costuma exigir uma verificação manual da identidade pelo dono da aplicação, por isso planeie isto antes do lançamento.