YubiKey: Usando uma chave física para liberar acesso a ambientes virtuais
Faz algum tempo que segurança digital deixou de ser uma preocupação de especialistas e grandes empresas para se tornar algo presente no dia a dia de qualquer pessoa, reflexo da crescente digitalização das nossas vidas. Nessa, as fraquezas das senhas em texto foram expostas e, não por acaso, impulsionou a popularização de soluções de segurança mais robustas, ainda que complementares. Vamos falar de uma das melhores: as chaves de segurança físicas.
Faz algumas semanas que, como parte dos preparativos de lançamento da Cipher Host1, passei a usar uma Yubikey 5 NFC, um dos modelos mais completos desse tipo de chave. Embora ela tenha sido cedida para esse uso específico, não há qualquer prejuízo em estendê-lo a contas pessoais. Por isso, assim o fiz.
A breve explicação que se segue não pretende ser técnica — até porque o conhecimento detalhado dessa parte me escapa. Falarei mais da parte prática, ou seja, de como é usar essas chaves e quais as suas vantagens frente a senhas simples e outros métodos de autenticação em duas etapas.
Em vídeo
Chaves de segurança: É de comer?
Uma chave de segurança é, na realidade, um dispositivo de autenticação. Sua principal função é validar autenticações, ou seja, comprovar que a pessoa tentando acessar um ambiente virtual (site, aplicativo, sistema) é quem ela diz ser. É, pois, como uma chave comum — a única diferença é que em vez de girá-la para liberar uma trava, você só a espeta ou encosta em seus dispositivos conectados, como computadores e celulares.
Embora uma chave de segurança possa ser o único meio de autenticação, seu uso mais comum ainda é complementar, como uma espécie de reforço à senha tradicional.
A senha, o método de autenticação mais conhecido e usado, é algo que só você sabe (guarde este verbo, “saber”). Um procedimento de autenticação mediante senha é simples: insira a senha e ganhe acesso. E é aí que mora o perigo, porque se essa senha vazar ou um terceiro descobri-la, outras pessoas poderão acessar locais que, idealmente, deveriam ser acessíveis somente a você.

Para mitigar esse risco, surgiu a autenticação em dois passos, ou em dois fatores, ou, ainda, em duas etapas — “2FA” na sigla em inglês, para simplificar. Como o próprio nome diz, ela gera um passo extra antes de liberar o acesso ao dono da senha.

Esse passo consiste em algo que você tem, do verbo “ter”, daí sua natureza complementar à senha, algo que você “sabe”. Se num sistema devidamente configurado faltar um dos dois verbos, o acesso não é liberado.

Talvez o exemplo de 2FA mais próximo de quem ainda não adotou essa prática no digital seja o daqueles tokens de bancos, que vinham em cartões plásticos ou numa espécie de chaveiro digital. (Hoje, a maioria está… no celular.)
O método mais básico de 2FA, e um ainda muito comum, é o por mensagem de texto (SMS). Nele, após inserir a senha, o sistema envia outra senha temporária/descartável para o seu celular via SMS e a exige para liberar o acesso.
O problema da 2FA por SMS é que esse meio é perigosamente frágil. Elas podem ser interceptadas ou, caso o seu número seja “clonado” ou seu celular roubado/furtado, serem acessadas por terceiros sem qualquer obstáculo.
Aplicativos OTP (“One-time password”, ou senhas descartáveis) mitigam esse risco. Eles funcionam na mesma lógica, mas assumem a forma de um aplicativo para celular, o que reforça a natureza do “ter” porque, ao contrário de um número de celular (SMS), o celular em si é mais… único — não dá para “cloná-lo” e ele conta com barreiras de segurança, como bloqueio por senha e/ou biometria.
Existem vários apps do tipo, como o Google Authenticator e o Authy. Após configurá-lo no sistema que se deseja proteger, em vez de receber uma mensagem SMS com a senha temporária, esta aparece no próprio aplicativo, o que significa que é preciso ter acesso físico ao celular para obter as senhas da 2FA.
As chaves de segurança físicas são o próximo nível dessa escala. Em vez de digitar ou colar um código/senha temporária, a própria chave serve de segundo fator de autenticação graças a um protocolo aberto chamado FIDO U2F (de “Universal 2nd Factor”), desenvolvido por um consórcio de empresas chamado Aliança FIDO.

Em computadores, você espeta a chave em uma porta USB; em celulares, toca o aparelho na chave para que eles se comuniquem por NFC, um padrão de comunicação sem fios. Em ambos os casos, há uma troca de dados criptografados entre a chave e o dispositivo, num mecanismo de desafio–resposta, que libera o acesso se executado com sucesso. Parece complexo (e é!), mas para o usuário final, como veremos a seguir, o procedimento não poderia ser mais simples.
Chaves de segurança também podem ser usadas como único meio de autenticação graças a uma evolução do protocolo, chamado FIDO2. Das chaves da Yubico, a talvez maior fabricante de chaves de segurança, as linhas Yubikey 5 e Security Key funcionam com FIDO2.
Dúvidas comuns
Antes de prosseguirmos à prática, vale a pena pontuar alguns detalhes que podem gerar dúvidas (eu as tinha):
- Evite 2FA por SMS. É um método frágil e não é mais fácil de configurar do que um aplicativo OTP. Infelizmente, alguns serviços só oferecem 2FA por SMS. Nesses casos, é melhor adotá-lo — antes uma 2FA mambembe que nenhuma.
- Não é preciso usar a 2FA toda vez que você for logar em um site ou aplicativo. A maioria deles permite definir um dispositivo (celular, computador) como confiável, de modo que no próximo login apenas a senha seja exigida ou nem isso. Certifique-se, porém, de blindar o dispositivo — de nada adianta ter 2FA no seu e-mail, por exemplo, se o seu celular ou computador não estiver criptografado.
- Chaves de segurança como a Yubikey são únicas. Isso tem duas implicações: 1) Se você perdê-la, não tem como manter as configurações feitas com ela substituindo-a por outra; e 2) Elas não têm qualquer vínculo formal com você, como nome de usuário ou senha — o vínculo existe somente com as contas que dependem dela para liberarem acesso. É como uma chave de portas: ela protege sua propriedade, mas a chave em si não está ligada a você de maneira alguma.
- “E se eu perder meu celular/minha chave de segurança?” Há duas saídas: 1) Ter outro dispositivo marcado com confiável ou logado nas contas. Nesse caso, basta entrar nas configurações desses serviços/aplicativos e desativar a 2FA; ou 2) Ter salvo os códigos de backup, que a maioria dos serviços gera. Imprima-os ou copie-os em um papel e guarde em um local extremamente seguro, nível neurótico mesmo. A preocupação justifica-se por esta ser uma opção nuclear: basta esse código para recuperar o acesso à sua conta, independentemente de qualquer outra coisa.
- É possível ter dois métodos de 2FA paralelos, como uma chave de segurança e um aplicativo OTP. Isso pode ser necessário caso você tenha algum dispositivo que não tem porta USB compatível nem chip NFC, como o iPad e vários celulares Android mais simples.
Configurando uma chave de segurança
A configuração de uma chave de segurança (ou aplicativo OTP) varia de serviço para serviço, mas varia pouco. Em geral, consiste em escolher a opção desejada e confirmá-la inserindo a chave ou uma senha descartável (OTP) gerada pelo aplicativo.
A título de exemplo, vejamos como configurar uma chave de segurança no site do Twitter.
Clique na aba Mais, depois em Configurações e privacidade. Na tela que se abre, entre em Segurança e acesso à conta e, em seguida, clique em Segurança. Por fim, clique em Autenticação em duas etapas. Ou clique aqui para ir direto.
Nesta tela, o Twitter mostrará os três métodos de 2FA que oferece: Mensagem de texto (SMS), Aplicativo de autenticação e Chave de segurança. Para iniciar a configuração de qualquer um deles, clique na caixa de seleção ao lado da opção desejada — no nosso caso, Chave de segurança.
A título de segurança (!), o Twitter pedirá a senha novamente. Depois disso, um popup pedirá que a chave seja inserida no computador. Faça isso e ative-a. “Ativar” uma chave de segurança significa tocar com o dedo no local correspondente. Essa é outra medida de segurança da chave, feita para garantir que há um ser humano presente e, assim, mitigar ataques remotos.
Em seguida, o Twitter pede um nome para a chave recém-cadastrada e, por fim, exibe aquele “código nuclear”, de backup, que permite o acesso direto sem 2FA, caso você perca sua chave.
Veja, em um vídeo curto (44s), todo o procedimento:
O computador onde o cadastro da chave de segurança foi feito está em uma sessão ativa, o que significa que a chave não será pedida até que você saia (faça logoff) e tente se se logar novamente. (Você pode ver todas as sessões ativas, e sair de todas elas de uma só vez, indo em Sessões, dentro da aba Segurança e acesso à conta.)
Quando você for logar novamente, logo após inserir a senha um popup do navegador pedirá a chave de segurança. O procedimento é o mesmo do cadastro: insira-a e ative-a. Em celulares com NFC, basta tocar o topo do celular na chave de segurança para liberar o acesso.
E quando não tem suporte a chaves de segurança?

A Yubico, empresa que fabrica a YubiKey, também tem um aplicativo de OTP. O Yubico Authenticator tem versões para computadores e celulares e vem bem a calhar em sistemas/serviços/aplicativos que não oferecem suporte a chaves de segurança físicas, como o WordPress (usado para publicar este Manual do Usuário) e o Mercado Livre, por exemplo. Uma vantagem de usá-lo no lugar de outros é que o da Yubico se integra à YubiKey, ou seja, para acessar as senhas descartáveis, é preciso liberá-las com a chave de segurança.
Vale o investimento?
A YubiKey 5 está disponível em vários modelos: com e sem NFC, com conexão USB-A ou USB-C e em tamanhos diversos. Tem até um teste, no site da empresa, que indica qual a mais adequada ao seu perfil.
É inegável que uma chave de segurança agrega à defesa das suas identidades e acessos digitais. Não à toa, elas são obrigatórias para funcionários de empresas como Google, Facebook e Microsoft. A Yubico gaba-se de ter como clientes 9 das 10 maiores empresas de tecnologia do mundo e 2 das 3 maiores dos setores financeiro, varejista, saúde e de pesquisa.

Embora não tenha presença oficial no Brasil, é possível comprar uma YubiKey direto da loja da Yubico — eles enviam para o nosso país. Os preços variam de US$ 45 a 60, algo em torno de R$ 225 a 300, considerando que a encomenda não seja taxada. Outro caminho é comprá-la de vendedores independentes em marketplaces como o Mercado Livre. Nesses locais, os preços giram em torno de R$ 500 por chave. Qualquer que seja o caso, não é um produto tão barato quanto deveria ser.
Para quem usa Android, desde maio de 2019 o Google permite que o próprio celular aja como uma chave de segurança compatível com o protocolo FIDO U2F. Nesse caso, a comunicação com outros dispositivos no processo de autenticação se dá por Bluetooth. É uma alternativa válida e, basicamente, gratuita.
A chave de segurança talvez seja o “Santo Graal” da autenticação em dois fatores, mas, pelo custo, talvez seja algo fora da realidade para a maioria das pessoas. (Não à toa, é mais comum vê-las em empresas, não com indivíduos.) Se as suas contas ainda não são protegidas por 2FA, pare o que estiver fazendo e vá configurar um aplicativo de OTP. É arriscado demais, com os crescentes vazamentos e a intensificação das tentativas de golpes na pandemia, confiar apenas em senhas.
Qualquer um serve, já que todos esses apps usam o mesmo protocolo e os diferenciais são quase inexistentes. O Authy, app do tipo da Twilio, tem um bacana que ajuda a manter a paz de espírito: backup criptografado na nuvem. Caso você perca seu celular, basta baixar o aplicativo em um novo e restaurar o backup (que é protegido por uma senha) para voltar a ter a 2FA. Para os demais e chaves de segurança, é preciso guardar com cuidado aquelas senhas de backup “nucleares”.
- A empresa que hospeda o Manual do Usuário. ↩
Adorei os desenhos! :)
Votos: 0Matéria muito legal – eu uso o Authy e já considerei uma chavinha dessas – mas que preço alto, hein?!
Por enquanto, um gerenciador de senhas pra guardar e gerar senhas enormes (recomendo o Keepass, que é gratuito, offline, mas dá pra integrar com Dropbox e usar no Android com aplicativo específico), mais autenticação por dois fatores em todo lugar possível, deveria ser o “default”, mas evita bastante problema.
Passando apenas pra dizer que achei muito legal os desenhos
Votos: 0Ghedin, após este tempo de uso, o que pode deixar de dicas e recomendações para uso da Yubikey?
Votos: 0Acabei de ganhar uma de presente da esposa, enfim, gosto de segurança e estou bem contente com o presente :-)
Oi Eloi! Continuo usando ela para tudo, tanto em serviços compatíveis quanto nos que não — nesse caso, uso o Yubico Authenticator. Tem outras coisas mais avançadas que dá para fazer com ela, como usá-la para autenticar-se no computador, mas acho mais complexo e não muito vantajoso frente à configuração atual.
Votos: 0Acho que vou pegar um diretamente no site da Yubico.
Encontrei esse cupom de desconto de 10 dólares: tiffany10
Funcionou na data de hoje.
Votos: 0Ótima matéria. Eu possuo uma Yubikey desde o ano passado. Porém até hoje não encontrei um banco no Brasil no qual eu poderia usá-la. Vocês conhecem algum?
Votos: 0Também desconheço banco brasileiro que aceite Yubikey, Bruno.
Votos: 0Saberia me dizer se é possível configurar essa chave para usar no logon do Windows?
Votos: 0Poderia fazer um tutorial explicando como proceder?
Sim, é possível, André.
https://www.yubico.com/products/computer-login-tools/
Votos: 0Eu uso 2FA de uma forma um pouco mais “segura” e que salvou meu gmail e meu Apple ID quando roubaram meu celular desbloqueado (por estar com o aplicativo de Mapas aberto no momento): Ao invés de usar meu próprio número de celular eu adicionei o da minha esposa, e nas contas dela o meu. Isso me salvou mesmo, o ladrão ficou tentando redefinir minha senha, mas o SMS chegava no celular da minha esposa, que estava em casa no momento do assalto.
Votos: 0“Ah, mas se roubarem os dois celulares juntos”? Bom, aí ferrou, também podem me sequestrar… aí não tem item de segurança que nos salve.
Acho que isso ao menos, dificulta.