Como usar um gerador de senhas aleatórias
Publicados: 2022-01-29Praticamente todos os sites que você visita querem que você crie uma conta, seja para transações financeiras de alta segurança ou jogos de animais patetas. Você não pode se safar usando a mesma senha para todos eles, porque uma violação em qualquer site colocaria todos em risco. E você não pode memorizar facilmente uma senha diferente para cada site. A única solução sensata é instalar um gerenciador de senhas e usá-lo para armazenar e melhorar suas senhas. Toda vez que você substitui uma senha muito simples por uma longa, forte e aleatória, você melhora sua segurança geral. Mas onde você consegue essas senhas longas, fortes e aleatórias?
Quase todos os gerenciadores de senhas incluem um componente gerador de senhas, para que você não precise criar essas senhas aleatórias. (Mas se você quiser uma solução faça você mesmo, mostraremos como criar seu próprio gerador de senhas aleatórias). No entanto, nem todos os geradores de senha são criados iguais. Quando você sabe como eles funcionam, você pode escolher o que é melhor para você e usar o que você tem de forma inteligente.
Geradores de senha — aleatórios ou não?
Quando você joga um par de dados, obtém um resultado verdadeiramente aleatório. Ninguém pode prever se você terá olhos de cobra, vagões ou um sete da sorte. Mas no reino dos computadores, randomizadores físicos como dados não estão disponíveis. Sim, existem algumas fontes de números aleatórios com base no decaimento radioativo, mas você não as encontrará no gerenciador de senhas do lado do consumidor médio.
Os gerenciadores de senhas e outros programas de computador usam o que é chamado de algoritmo pseudo-aleatório. Esse algoritmo começa com um número chamado semente. O algoritmo processa a semente e obtém um novo número sem conexão rastreável com o antigo, e o novo número se torna a próxima semente. A semente original nunca aparece novamente até que todos os outros números apareçam. Se a semente for um inteiro de 32 bits, isso significa que o algoritmo executaria 4.294.967.295 outros números antes de uma repetição.
Isso é bom para o uso diário e para as necessidades de geração de senha da maioria das pessoas. No entanto, é teoricamente possível para um hacker habilidoso determinar o algoritmo pseudo-aleatório usado. Dada essa informação e a semente, o hacker poderia replicar a sequência de números aleatórios (embora fosse difícil).
Esse tipo de hacking direcionado é extraordinariamente improvável, exceto em um ataque dedicado a um estado-nação ou espionagem corporativa. Se você for alvo de tal ataque, seu pacote de segurança provavelmente não poderá protegê-lo. Felizmente, você quase certamente não é o alvo desse tipo de ciberespionagem.
Mesmo assim, alguns gerenciadores de senhas trabalham ativamente para eliminar até mesmo a possibilidade remota de um ataque tão focado. Ao incorporar seus próprios movimentos do mouse ou caracteres aleatórios no algoritmo aleatório, eles obtêm um resultado verdadeiramente aleatório. Entre aqueles que oferecem essa randomização do mundo real estão AceBIT Password Depot, KeePass e Steganos Password Manager. A captura de tela acima mostra o randomizador estilo matriz do Password Depot; sim, os caracteres caem conforme você move o mouse.
Você realmente precisa adicionar randomização do mundo real? Provavelmente não. Mas se te faz feliz, vá em frente!
Os gerenciadores de senhas reduzem a aleatoriedade
É claro que os geradores de senha não retornam literalmente números aleatórios. Em vez disso, eles retornam uma sequência de caracteres, usando números aleatórios para escolher entre os conjuntos de caracteres disponíveis. Você deve sempre habilitar o uso de todos os conjuntos de caracteres disponíveis, a menos que esteja gerando uma senha para um site que, digamos, não permita caracteres especiais.
O conjunto de caracteres disponíveis inclui 26 letras maiúsculas, 26 letras minúsculas e 10 dígitos. Também inclui uma coleção de caracteres especiais que podem variar de produto para produto. Para simplificar, digamos que haja 18 caracteres especiais disponíveis. Isso faz uma boa rodada total de 80 caracteres para escolher. Em uma senha totalmente aleatória, há 80 possibilidades para cada personagem. Se você escolher uma senha de oito caracteres, o número de possibilidades será 80 elevado à oitava potência, ou 1.677.721.600.000.000 — mais de um quatrilhão. Isso é difícil para um ataque de cracking de força bruta, e a adivinhação de força bruta é realmente a única maneira de quebrar uma senha verdadeiramente aleatória.
Nossas principais escolhas do gerenciador de senhas
Ver todos (4 itens)Claro, um gerador totalmente aleatório eventualmente produzirá "aaaaaaaa" e "Covfefe!" e "12345678", pois são tão prováveis quanto qualquer outra sequência de oito caracteres. Alguns geradores de senha filtram ativamente sua saída para evitar tais senhas. Tudo bem, mas se um hacker conhece esses filtros, na verdade reduz o número de possibilidades e facilita o cracking de força bruta.
Aqui está um exemplo extremo. Existem 40.960.000 possíveis senhas de quatro caracteres, extraídas de uma coleção de 80 caracteres. Mas alguns geradores de senha forçam a seleção de pelo menos um de cada tipo de caractere, e isso reduz drasticamente as possibilidades. Ainda há 80 possibilidades para o primeiro caractere. Suponha que seja uma letra maiúscula; o conjunto para o segundo caractere é 54 (80 menos os 26 caracteres maiúsculos). Suponha ainda que o segundo caractere seja uma letra minúscula. Para o terceiro caractere, restam apenas dígitos e caracteres especiais, para 28 opções. E se o terceiro caractere for pontuação, o último deve ser um dígito, 10 opções. Nossas 40 milhões de possibilidades diminuem para 1.209.600.
Usar todos os conjuntos de caracteres é uma necessidade para muitos sites. Para evitar que esse requisito reduza seu pool de senhas, defina o comprimento da senha alto. Quando a senha é longa o suficiente, o efeito de forçar todos os tipos de caracteres torna-se insignificante.
Outros limites que os gerenciadores de senhas aplicam reduzem o conjunto de senhas possíveis desnecessariamente. Por exemplo, o RememBear Premium especifica o número preciso de caracteres de cada conjunto de quatro caracteres, o que reduz drasticamente o conjunto. Por padrão, requer duas letras maiúsculas, dois dígitos, 14 letras minúsculas e nenhum símbolo, para um total de 18 caracteres. Isso resulta em um pool de senhas centenas de milhões de vezes menor do que se simplesmente exigisse um ou mais de cada tipo de caractere. Aqui, novamente, você pode compensar esse problema definindo um comprimento de senha mais alto.
O LastPass e vários outros usam como padrão evitar pares de caracteres ambíguos como o dígito 0 e a letra O. Quando você não precisa lembrar a senha, isso não é necessário; desligue esta opção. Da mesma forma, não escolha a opção de gerar uma senha pronunciável como "bogafewazepa". Essa opção só é importante se for uma senha que você deve lembrar. Aplicar esta opção não apenas limita você a caracteres minúsculos, mas também rejeita o grande número de possibilidades que o gerador de senhas considera impronunciáveis.
Recomendado por nossos editores
Gerar senhas longas
Como vimos, os geradores de senha não escolhem necessariamente do conjunto de todas as senhas possíveis que correspondem ao comprimento e aos conjuntos de caracteres selecionados. No exemplo extremo de uma senha de quatro caracteres usando todos os conjuntos de caracteres, cerca de 97% das senhas de quatro caracteres possíveis nunca aparecem. A solução é simples; vá longe! Você não precisa se lembrar dessas senhas, então elas podem ser enormes. Pelo menos, tão grande quanto o site em questão aceita; alguns impõem limites.
Quanto maior o espaço de pesquisa (o que eu tenho chamado de conjunto de senhas disponíveis), mais tempo levaria um ataque de força bruta para acontecer em sua senha. Você pode jogar com o Password Haystack Calculator (como agulha no palheiro) no site da Gibson Research para ter uma ideia do valor do comprimento.
Basta digitar uma senha para ver quanto tempo levaria para quebrar. (O site promete "NADA que você faz aqui sai do seu navegador. O que acontece aqui, fica aqui." Mas cuidado sugere que você evite usar suas senhas reais). Uma senha de quatro caracteres como 9kM$ não levaria um dia para ser quebrada, se o hacker tiver que enviar palpites online. Mas em um cenário offline, onde o hacker pode tentar adivinhar em alta velocidade, o tempo de cracking é uma fração de segundo.
No meu artigo sobre como criar senhas fortes memoráveis (para coisas como a senha mestra de um gerenciador de senhas), sugiro uma técnica mnemônica que transforma uma linha de um poema ou peça em uma senha de aparência aleatória. Por exemplo, uma linha de Romeu e Julieta, Ato 2, Cena 2, tornou-se "bS,wLtYdWdB?A2S2". Esta não é uma senha aleatória, mas um cracker não sabe disso. Colocando-o na calculadora de Gibson, aprendemos que, mesmo usando uma enorme matriz de craqueamento, levaria 1,41 milhão de séculos para forçar este aqui.
Faça uma escolha informada do gerenciador de senhas
Então agora você sabe - o fator mais importante na geração de senhas fortes e aleatórias é torná-las longas. Alguns geradores de senha rejeitam senhas que não contenham todos os conjuntos de caracteres, alguns rejeitam aquelas com palavras de dicionário incorporadas, alguns descartam senhas que contêm caracteres ambíguos como l minúsculo e dígito 1. Todas essas restrições limitam o conjunto de senhas possíveis, mas quando o tamanho é alto o suficiente, essa limitação simplesmente não importa.
Claro, é teoricamente (se não praticamente) possível que algum malfeitor possa hackear o esquema de geração de senha do seu gerenciador de senhas favorito e, assim, obter a capacidade de prever as senhas pseudo-aleatórias que ele oferecerá a você. Um programa de gerenciador de senhas obscuro pode enviar suas senhas aleatórias de volta para a sede da empresa. Isso está realmente no nível de preocupação da paranóia do chapéu de papel alumínio. Mas se você realmente não quer confiar em outra pessoa para suas senhas aleatórias, você pode criar seu próprio gerador de senhas aleatórias no Excel.