ūüĒź Uma proposta para eliminar as senhas de todos os servi√ßos online

Proposta teórica para eliminação da senha e uso do celular, aliado a um serviço na nuvem, como alternativa para identificação de usuários em serviços online.

A senha normalmente √© a parte mais fr√°gil de um sistema de seguran√ßa. Por praticidade, pessoas¬†tendem a escolher senhas f√°ceis de lembrar e repeti-las em m√ļltiplos sites, o que reduz drasticamente a seguran√ßa de qualquer¬†servi√ßo online.

Tecla com um cadeado sobre uma nuvem

Por enquanto estou chamando este servi√ßo de Cloud 2F Login. √Č um nome bobo e descritivo demais, mas serve para o prop√≥sito deste artigo. O Cloud 2F Login √© uma proposta de servi√ßo na nuvem, que usa o padr√£o oAuth para autorizar o acesso √† sites e servi√ßos online.

Diagrama mostrando o funcionamento do Cloud 2F Login em desktop
Proposta de login usando serviço na nuvem para autenticação

Para exemplificar o processo de autenticação sem senha, vamos supor que Alice queira fazer login em lojadecanetas.com:

  1. Alice abre lojadecanetas.com;
  2. Alice preenche seu ID pessoal em¬†lojadecanetas.com, este ID precisa ser √ļnico, como um endere√ßo de e-mail, mas n√£o precisa ser secreto;
  3. lojadecanetas.com pergunta para o Cloud 2F Login: “posso autorizar a entrada deste ID?” e aguarda a resposta;
  4. Cloud 2F Login pergunta para Alice “√© voc√™ tentando entrar na lojadecanetas.com?” atrav√©s de um canal de comunica√ß√£o independente (notifica√ß√£o push, SMS, liga√ß√£o telef√īnica, e-mail);
  5. Alice responde o Cloud 2F Login: sim, sou eu;
  6. Cloud 2F Login responde √† lojadecanetas.com “sim, pode autorizar a entrada deste ID”;
  7. lojadecanetas.com autoriza a entrada de Alice.

Alice entrou em lojadecanetas.com sem precisar digitar um password e a lojadecanetas.com não precisa se preocupar em armazenar com segurança as senhas de cada cliente.

O mesmo processo pode ser usado também em autenticação em dispositivos móveis, conforme diagrama abaixo.

Diagrama mostrando o funcionamento do Cloud 2F Login em mobile
No login de mobile para mobile, o processo é similar, com a autorização aparecendo em um segundo app. Como já faz hoje o Banco Original com seus dois apps independentes (banco e token).

Algumas características importantes da tecnologia que proponho:

  • No ponto 4, o Cloud 2F Login precisa entrar em contato com¬†Alice para perguntar se √© ela mesma tentando acessar a lojadecanetas.com, por velocidade e praticidade, esta verifica√ß√£o idealmente deve ser feita por notifica√ß√£o push no celular, mas caso tal recurso n√£o esteja dispon√≠vel, a verifica√ß√£o tamb√©m¬†pode ser feita por SMS, liga√ß√£o telef√īnica, e-mail, painel de controle na¬†web ou qualquer outro meio dispon√≠vel no momento da autentica√ß√£o;
  • O ID de Alice em Cloud 2F Login pode ser um username, endere√ßo de e-mail, n√ļmero de telefone, n√ļmero de usu√°rio (como t√≠nhamos no ICQ) ou qualquer outro identificador √ļnico, mas n√£o precisa ser secreto, j√° que a entrada s√≥ ser√° autorizada quando Alice confirmar sua identidade para o¬†Cloud 2f Login.
  • O processo de comunica√ß√£o¬†entre a lojadecanetas.com e o Cloud 2F Login √© feito com o protocolo de autoriza√ß√£o¬†oAuth, uma tecnologia j√° bem estabelecida e com seguran√ßa robusta, usada por Facebook, Google e outros gigantes;
  • Caso Alice n√£o esteja em posse de seu celular, √© poss√≠vel que o pedido de autentica√ß√£o seja¬†apresentado em¬†um painel de controle na Web;
  • Ainda h√° o risco de¬†comprometimento do dispositivo de autentica√ß√£o (celular), comprometimento do servi√ßo Cloud 2F Login e outros riscos inerentes √† centraliza√ß√£o de sistemas;¬†o objetivo desta proposta n√£o √© eliminar todos os riscos de uma autentica√ß√£o digital, apenas propor uma solu√ß√£o melhor que a dupla usu√°rio/senha usada atualmente.

Esta ainda √© uma proposta embrion√°ria, que pode ser implementada por qualquer desenvolvedor ou time de desenvolvedores interessados em abra√ßar a ideia. Tamb√©m estou aberto a sugest√Ķes, desafios e considera√ß√Ķes, por favor colabore abaixo nos coment√°rios!

* a solução que proponho foi apresentada de maneira muito parecida também pelo Google em 22 de dezembro de 2015. O diferencial que proponho é o aplicação de uma plataforma aberta, independente e possivelmente pulverizada. Teste agora mesmo o login sem senha do Google.

[ATUALIZAÇÃO] O CristianTM comentou sobre a iniciativa a FIDO Alliance, que tem uma proposta muito parecida para login sem password, e já está bastante desenvolvida. Veja o diagrama abaixo.

Diagrama mostrando a experiência sem password da FIDO Alliance