WebAuthn

WebAuthn (Web Authentication) é um padrão web desenvolvido pelo World Wide Web Consortium (W3C) e pela FIDO Alliance para habilitar uma autenticação segura e sem senha na web. Faz parte do framework FIDO2 mais amplo e visa reduzir a dependência de senhas tradicionais, que muitas vezes são vulneráveis a phishing, credential stuffing e outros ataques.

 

Em sua essência, o WebAuthn permite que os usuários se autentiquem utilizando criptografia de chave pública. Em vez de um nome de usuário e senha, os usuários registram um par único de chaves pública-privada em uma aplicação web (a Relying Party). A chave privada é armazenada com segurança em um authenticator — como uma chave de segurança de hardware, um smartphone ou um dispositivo biométrico integrado — enquanto a chave pública é armazenada no servidor.

 

Durante a autenticação, o servidor emite um challenge que deve ser assinado pela chave privada do usuário. O challenge assinado é retornado e verificado usando a chave pública armazenada, garantindo tanto a integridade quanto a origem da resposta. Essa abordagem impede que as credenciais sejam interceptadas ou reutilizadas.

 

O WebAuthn suporta uma variedade de autenticadores e dispositivos, tornando-o flexível tanto para desenvolvedores quanto para usuários. Ele também habilita autenticação multifator (MFA) quando combinado com outros fatores como PINs ou biometria, melhorando significativamente a segurança sem sacrificar a usabilidade.

 

Server

 

Client