A autenticação sem senha do Yahoo! JAPAN's autenticação sem senha reduziu as consultas em 25% e acelerou o tempo de login em 2,6 vezes

Saiba como o Yahoo! O Japão criou um sistema de identidade sem senha.

Campanhas do Yahoo! A JAPAN é uma das maiores empresas de mídia do Japão, oferecendo serviços como pesquisa, notícias, e-commerce e e-mail. Mais de 50 milhões de usuários fazem login no Yahoo! JAPAN todos os meses.

Ao longo dos anos, houve muitos ataques a contas de usuários e problemas que levaram à perda do acesso à conta. A maioria desses problemas estava relacionada ao uso de senhas para autenticação.

Com os avanços recentes na tecnologia de autenticação, o Yahoo! JAPAN decidiu migrar da autenticação baseada em senha para a sem senha.

Por que sem senha?

Como o Yahoo! JAPAN oferece serviços de e-commerce e outros serviços relacionados a dinheiro. Há risco de danos significativos aos usuários em caso de acesso não autorizado ou perda da conta.

Os ataques mais comuns relacionados a senhas foram ataques de lista de senhas e golpes de phishing. Um dos motivos pelos quais os ataques de listas de senhas são comuns e eficazes é o hábito de muitas pessoas usarem a mesma senha para vários aplicativos e sites.

As figuras a seguir são os resultados de uma pesquisa realizada pelo Yahoo! JAPÃO.

    50 %

    usar o mesmo ID e senha em seis ou mais sites

    60 %

    Usar a mesma senha em vários sites

    70 %

    usar uma senha como a principal forma de fazer login

Os usuários costumam esquecer as senhas, o que representa a maioria das perguntas relacionadas a senhas. Também houve consultas de usuários que esqueciam os IDs de login e as senhas. No pico, essas consultas corresponderam a mais de um terço de todas as consultas relacionadas a contas.

Ao eliminar a senha, o Yahoo! Japan tem como objetivo melhorar não só a segurança, mas também a usabilidade, sem sobrecarregar os usuários.

Do ponto de vista da segurança, eliminar senhas do processo de autenticação do usuário reduz os danos causados por ataques baseados em lista e, do ponto de vista de usabilidade, oferecer um método de autenticação que não dependa do lembrete de senhas evita situações em que um usuário não consegue fazer login por ter esquecido a senha.

Campanhas do Yahoo! JAPAN

Campanhas do Yahoo! O JAPÃO está tomando várias medidas para promover a autenticação sem senha, que pode ser dividida em três categorias:

  1. Ofereça um meio alternativo de autenticação para senhas.
  2. Desativação da senha.
  3. Registro de conta sem senha.

As duas primeiras iniciativas são voltadas para usuários atuais, enquanto o registro sem senha é voltado para novos usuários.

1. Como fornecer um meio de autenticação alternativo para as senhas

Campanhas do Yahoo! O JAPÃO oferece as seguintes alternativas às senhas.

  1. Autenticação por SMS
  2. FIDO com WebAuthn

Além disso, também oferecemos métodos de autenticação, como autenticação por e-mail, senha combinada com OTP (senha única) por SMS e senha combinada com OTP por e-mail.

Autenticação por SMS

A autenticação por SMS é um sistema que permite que um usuário registrado receba um código de autenticação de seis dígitos por SMS. Depois que o usuário receber o SMS, ele poderá inserir o código de autenticação no app ou site.

A Apple permite há muito tempo que o iOS leia mensagens SMS e sugira códigos de autenticação no corpo do texto. Recentemente, ficou possível usar sugestões especificando "one-time-code" no atributo autocomplete do elemento de entrada. O Chrome no Android, Windows e Mac pode oferecer a mesma experiência usando a API WebOTP.

Exemplo:

<form>
  <input type="text" id="code" autocomplete="one-time-code"/>
  <button type="submit">sign in</button>
</form>
if ('OTPCredential' in window) {
  const input = document.getElementById('code');
  if (!input) return;
  const ac = new AbortController();
  const form = input.closest('form');
  if (form) {
    form.addEventListener('submit', e => {
      ac.abort();
    });
  }
  navigator.credentials.get({
    otp: { transport:['sms'] },
    signal: ac.signal
  }).then(otp => {
    input.value = otp.code;
  }).catch(err => {
    console.log(err);
  });
}

Ambas as abordagens são projetadas para evitar phishing por meio da inclusão do domínio no corpo do SMS e do fornecimento de sugestões apenas para o domínio especificado.

Para mais informações sobre a API WebOTP e autocomplete="one-time-code", confira as práticas recomendadas do formulário de SMS OTP.

FIDO com WebAuthn

O FIDO com WebAuthn usa um autenticador de hardware para gerar um par de criptografia de chave pública e comprovar a posse. Quando um smartphone é usado como autenticador, ele pode ser combinado com a autenticação biométrica (por exemplo, sensores de impressão digital ou reconhecimento facial) para realizar a autenticação de dois fatores em uma etapa. Nesse caso, apenas a assinatura e a indicação de sucesso da autenticação biométrica são enviadas ao servidor. Portanto, não há risco de roubo de dados biométricos.

O diagrama a seguir mostra a configuração de servidor-cliente para FIDO. O autenticador do cliente autentica o usuário com biometria e assina o resultado usando criptografia de chave pública. A chave privada usada para criar a assinatura é armazenada com segurança em um ambiente de execução confiável (TEE) ou local semelhante. Um provedor de serviços que usa o FIDO é chamado de RP (parte confiável).

Depois que o usuário realiza a autenticação (geralmente com uma verificação biométrica ou um PIN), o autenticador usa uma chave privada para enviar um sinal de verificação assinado ao navegador. O navegador, então, compartilha esse sinal com o site da parte restrita.

Em seguida, o site da RP envia o sinal de verificação assinado ao servidor da RP, que compara a assinatura com a chave pública para concluir a autenticação.

Para mais informações, leia as diretrizes de autenticação da Aliança FIDO.

Campanhas do Yahoo! O JAPÃO oferece suporte ao FIDO no Android (app para dispositivos móveis e Web), iOS (app para dispositivos móveis e Web), Windows (Edge, Chrome, Firefox) e macOS (Safari, Chrome). Como um serviço de consumo, o FIDO pode ser usado em quase qualquer dispositivo, o que o torna uma boa opção para promover a autenticação sem senha.

Sistema operacional Suporte para FIDO
Android Apps, navegador (Chrome)
iOS Apps (iOS14 ou mais recente), navegador (Safari 14 ou mais recente)
Windows Navegador (Edge, Chrome, Firefox)
Mac (Big Sur ou mais recente) Navegador (Safari, Chrome)
Exemplo do Yahoo! JAPAN para autenticar com o FIDO.

Campanhas do Yahoo! O JAPÃO recomenda que os usuários se registrem na FIDO com o WebAuthn, se eles ainda não se autenticaram por outros meios. Quando um usuário precisa fazer login com o mesmo dispositivo, ele pode se autenticar rapidamente usando um sensor biométrico.

Os usuários precisam configurar a autenticação FIDO em todos os dispositivos que usam para fazer login no Yahoo! JAPÃO.

Para promover a autenticação sem senha e considerar os usuários que estão fazendo a transição, oferecemos várias formas de autenticação. Isso significa que usuários diferentes podem ter configurações diferentes do método de autenticação, e os métodos de autenticação que eles podem usar podem variar de acordo com o navegador. Acreditamos que a experiência é melhor se os usuários fizerem login usando o mesmo método de autenticação todas as vezes.

Para atender a esses requisitos, é necessário rastrear métodos de autenticação anteriores e vincular essas informações ao cliente armazenando-as na forma de cookies etc. Assim, podemos analisar como diferentes navegadores e aplicativos são usados para a autenticação. O usuário precisa fornecer a autenticação adequada com base nas configurações do usuário, nos métodos de autenticação anteriores usados e no nível mínimo de autenticação necessário.

2. Desativação da senha

Campanhas do Yahoo! JAPAN solicita que os usuários configurem um método de autenticação alternativo e desativem a senha para que ele não possa ser usado. Além de configurar a autenticação alternativa, desativar a autenticação de senha (impossibilitando o login com apenas uma senha) ajuda a proteger os usuários de ataques baseados em lista.

Tomamos as seguintes medidas para incentivar os usuários a desativar as senhas.

  • Promover métodos alternativos de autenticação quando os usuários redefinirem as senhas.
  • Incentive os usuários a configurar métodos de autenticação fáceis de usar (como FIDO) e desativar senhas para situações que exigem autenticação frequente.
  • Incentivar os usuários a desativar as senhas antes de usar serviços de alto risco, como pagamentos de e-commerce.

Se um usuário esquecer a senha, ele poderá executar uma recuperação de conta. Antes, isso envolvia uma redefinição de senha. Agora, os usuários podem escolher configurar um método de autenticação diferente, e recomendamos que eles façam isso.

3. Registro de conta sem senha

Novos usuários podem criar grupos de anúncios do Yahoo! Contas JAPAN. Os usuários precisam primeiro se registrar com uma autenticação por SMS. Depois que o usuário faz login, recomendamos que ele configure a autenticação FIDO.

Como o FIDO é uma configuração por dispositivo, pode ser difícil recuperar uma conta se o dispositivo ficar inoperante. Portanto, exigimos que os usuários mantenham o número de telefone registrado, mesmo depois de configurarem a autenticação extra.

Principais desafios da autenticação sem senha

As senhas dependem da memória humana e são independentes do dispositivo. Por outro lado, os métodos de autenticação apresentados até agora na nossa iniciativa sem senha dependem do dispositivo. Isso traz vários desafios.

Quando vários dispositivos são usados, há alguns problemas relacionados à usabilidade:

  • Ao usar a autenticação por SMS para fazer login em um PC, os usuários precisam verificar as mensagens SMS recebidas no smartphone. Isso pode ser inconveniente, já que exige que o smartphone do usuário esteja disponível e seja fácil de acessar a qualquer momento.
  • Com o FIDO, especialmente com autenticadores de plataforma, um usuário que tem vários dispositivos não poderá se autenticar em dispositivos não registrados. O registro precisa ser feito para cada dispositivo que eles pretendem usar.

A autenticação FIDO está vinculada a dispositivos específicos, o que exige que eles permaneçam na posse do usuário e ativos.

  • Se o contrato de serviço for cancelado, não será mais possível enviar mensagens SMS para o número de telefone registrado.
  • O FIDO armazena chaves privadas em um dispositivo específico. Se o dispositivo for perdido, essas chaves não poderão ser usadas.

Campanhas do Yahoo! A JAPAN está tomando várias medidas para resolver esses problemas.

A solução mais importante é incentivar os usuários a configurar vários métodos de autenticação. Isso oferece acesso alternativo à conta quando os dispositivos são perdidos. Como as chaves FIDO dependem do dispositivo, também é uma prática recomendada registrar chaves privadas FIDO em vários dispositivos.

Como alternativa, os usuários podem usar a API WebOTP para transmitir códigos de verificação por SMS de um smartphone Android para o Chrome em um PC.

Acreditamos que resolver esses problemas vai se tornar ainda mais importante à medida que a autenticação sem senha se espalhar.

Como promover a autenticação sem senha

Campanhas do Yahoo! A JAPAN trabalha com essas iniciativas sem senha desde 2015. Isso começou com a aquisição da certificação de servidor FIDO em maio de 2015, seguida da introdução da autenticação por SMS, de um recurso de desativação de senhas e da compatibilidade com o FIDO para cada dispositivo.

Atualmente, mais de 30 milhões de usuários ativos por mês já desativaram as senhas e estão usando métodos de autenticação sem senha. Campanhas do Yahoo! O suporte do JAPÃO ao FIDO começou com o Chrome no Android, e agora mais de 10 milhões de usuários configuraram a autenticação FIDO.

Como resultado do Yahoo! iniciativas do JAPAN, a porcentagem de consultas envolvendo IDs de login ou senhas esquecidas diminuiu 25% em comparação com o período em que o número dessas consultas estava no nível mais alto. Também confirmamos que o acesso não autorizado diminuiu como resultado do aumento no número de contas sem senha.

Como o FIDO é muito fácil de configurar, ele tem uma taxa de conversão particularmente alta. Na verdade, o Yahoo! JAPAN descobriu que a FIDO tem uma CVR maior do que a autenticação por SMS.

    25 %

    Diminuição de solicitações de credenciais esquecidas

    74 %

    Os usuários conseguem fazer a autenticação FIDO

    65 %

    Verificação por SMS concluída

A FIDO tem uma taxa de sucesso maior do que a autenticação por SMS e tempos de autenticação médios e centrais mais rápidos. Quanto às senhas, alguns grupos têm tempos de autenticação curtos, e suspeitamos que isso se deve ao autocomplete="current-password" do navegador.

Comparação em gráfico do tempo de autenticação para senhas, SMS e FIDO.
Em média, a FIDO leva 8 segundos para autenticar, enquanto as senhas levam 21 segundos e a verificação por SMS leva 27.

A maior dificuldade para oferecer contas sem senha não é a adição de métodos de autenticação, mas popular o uso de autenticadores. Se a experiência de usar um serviço sem senha não for fácil de usar, a transição não será fácil.

Acreditamos que, para melhorar a segurança, primeiro precisamos melhorar a usabilidade, o que exige inovações exclusivas para cada serviço.

Conclusão

A autenticação de senha é arriscada em termos de segurança e também apresenta desafios em termos de usabilidade. Agora que as tecnologias que oferecem suporte à autenticação sem senha, como a API WebOTP e o FIDO, estão mais disponíveis, é hora de começar a trabalhar em direção à autenticação sem senha.

No Yahoo! Japan, essa abordagem teve um efeito claro na usabilidade e na segurança. No entanto, muitos usuários ainda usam senhas. Por isso, vamos continuar incentivando mais usuários a mudar para métodos de autenticação sem senha. Também vamos continuar melhorando nossos produtos para otimizar a experiência do usuário em métodos de autenticação sem senha.

Foto de olieman.eth no Unsplash