Deixando de ser apenas uma tendência, o uso do passwordless passou a ser expandido nas organizações e empresas ao redor do mundo. Sua chegada trouxe como benefícios não apenas a segurança do ambiente, mas também a melhora na experiência do usuário, que não precisa recordar senhas complexas. Apresentando uma outra opção para uma autenticação passwordless temos as Passkeys!
O que são Passkeys?
Com a tendência de desativação das tradicionais senhas por problemas de segurança e usabilidade, os métodos de autenticação passwordless surgem como principais opções para a autenticação dos usuários.
Dentro desse grupo, temos como novo integrante as Passkeys!
As passkeys foram criadas e divulgadas pela FIDO Alliance, uma das principais referências quando o tema é identity security. A proposta cumprida pela criação das passkeys foi: deixar os acessos mais seguros, ao mesmo tempo fornecendo para o usuário maior conforto em seu uso.
Com o uso de uma passkey para se autenticar na aplicação, o usuário se beneficia do uso de um dos fatores de autenticação configurados para acessar aquele dispositivo (sendo um PIN ou sua biometria) para confirmar o acesso a aplicação. O "cumprimento" dessa etapa de autenticação permitirá que o processo de interação com a aplicação seja concluído.
Como elas funcionam?
Antes de entrarmos no detalhe sobre como as passkeys funcionam, é importante deixar claro que o pré-requisito para as utilizarmos é: a plataforma que estamos acessando deve fornecer suporte a esse método de autenticação. Isso se dá por conta das interações que serão feitas entre cliente e servidor, sendo necessário validar o "desafio" gerado pelo evento de autenticação.
Após garantirmos que a plataforma que será utilizada suporta o uso desse método de autenticação, chegou a hora de entrarmos no detalhe sobre o que mais é necessário e como ocorrem as interações.
As passkeys contém 2 componentes principais utilizados em suas interações:
Chave Privada - armazenado no cliente (dispositivo do usuário)
Chave Pública - armazenada no servidor da aplicação
A chave pública será gerada à partir da chave privada e enviada ao servidor de aplicação, onde será armazenada. Quando um fluxo de autenticação for executado, um "desafio" será enviado para o dispositivo do usuário. Será solicitado que o usuário desbloqueie o dispositivo, "assinando" o desafio e retornando para o servidor, que validará o resultado da assinatura, garantindo que o usuário autenticado é o detentor daquela passkey.
Esse é de maneira simplificada, o processo de uso de uma passkey. Antes do uso, temos seu cadastro, que se dá dessa forma:
O usuário inicia a interação na aplicação web selecionando a opção de "criar uma passkey". A partir dessa interação, o back-end iniciará o processo de criação da passkey, enviando ao dispositivo a solicitação para criação da chave privada e chave pública e recebendo a própria chave pública, gerada após o desbloqueio do dispositivo pelo usuário.
Após a criação da passkey, toda vez que for se autenticar na aplicação em questão, o usuário poderá selecionar a opção "login with passkey". Receberá uma solicitação para selecionar a passkey e se autenticará utilizando um PIN ou uma biometria.
E é isso!
Um exemplo de aplicação que tem o uso das passkeys habilitado é o GitHub. Logo na primeira página (formulário de login) você será questionado se deseja acessar sua conta utilizando uma passkey ou seu conjunto de credenciais padrão (usuário + senha + 2FA).
Ao clicar em "sign in with a passkey" você receberá uma tela parecida com essa:
Esse prompt é do Windows Hello e permite que você selecione com qual passkey deseja autenticar na aplicação.
Você também tem a opção de utilizar uma passkey diferente, como por exemplo uma existente em outro dispositivo.
Benefícios
Sendo um método de autenticação phishing resistant, temos bem claro que a segurança contra vazamentos de dados e roubo de credenciais são benefícios herdados quando utilizamos esse método de autenticação.
Do ponto de vista do usuário, o fato de não ser mais necessário recordar as credenciais para todos os acessos traz conforto e confiança no momento de acesso à aplicação. Do lado da aplicação, não se preocupar com armazenar informações sensíveis e protegê-las contra o vazamento de dados retira uma significativa carga de trabalho dos administradores.
Outro benefício das passkeys que nenhum outro método de autenticação tem é o "link" com informações que não podem ser utilizadas por outros usuários. Em dispositivos que contém o windows hello for business, você pode utilizar sua biometria facial para acessar sua conta. Esse recurso garante que você (e apenas você) possa acessar aquela conta com a passkey selecionada.
O futuro é passwordless e o quanto antes as organizações implementarem esse novo modelo de acesso, mais rápido os times de segurança e os usuários poderão usufruir dos benefícios gerados pela sua adoção.
Espero que tenha gostado do texto e nos veremos em breve.
Até logo!