Sitemap

Você sabe o que fazer.Não use senhas simples, como seu aniversário ou o nome de sua iguana de estimação.Não use a mesma senha em todos os lugares.Crie uma senha longa, aleatória e exclusiva para cada site.Não tente isso sem ajuda - obtenha um gerenciador de senhas.Depois de ter todas as suas senhas armazenadas com segurança no gerenciador, substitua quaisquer senhas fracas ou enganosas por senhas exclusivas que ninguém poderia adivinhar - e nem mesmo você poderia lembrar.Um hacker pode adivinhar uma senha simplória como Fido ou decifrá-la com força bruta, mas ninguém poderia adivinhar algo como P5$e?KqA+unh$RhPTlp1, e força bruta levaria muito tempo.

A questão é onde você consegue essas senhas aleatórias?Praticamente todo gerenciador de senhas vem com seu próprio gerador de senhas aleatórias, alguns dos quais são melhores que outros.Na maioria dos casos, porém, o programa usa o que é chamado de algoritmo pseudo-aleatório.Em teoria, um hacker que conhece o algoritmo e tem acesso a uma de suas senhas geradas poderia replicar todas as senhas geradas subsequentemente (embora fosse difícil). Se você for paranóico o suficiente, talvez queira criar seu próprio gerador de senhas aleatórias.Podemos ajudá-lo a construí-lo, usando o Microsoft Excel.

Algumas tarefas de segurança estão inegavelmente além do domínio do faça você mesmo.Você provavelmente não construirá sua própria rede global de servidores VPN, por exemplo.Você não vai remendar um utilitário antivírus feito à mão.Mas construir este pequeno projeto não requer conhecimento avançado, apenas a capacidade de seguir instruções.Ele não usa macros ou coisas extravagantes, apenas funções comuns do Excel, embora algumas você não tenha visto antes.Observe que este projeto depende necessariamente do algoritmo pseudo-aleatório do Excel.A diferença aqui é que os bandidos podem estudar o gerador de senhas embutido em qualquer gerenciador de senhas disponível publicamente, enquanto eles não têm acesso ao seu construído em casa.

Um aviso.Você precisa de uma versão atual do Excel para fazer este projeto funcionar.O Office 2019 ou posterior fará o trabalho, assim como o Office 365 mais recente.Se você não tiver certeza, a Microsoft explica como obter a versão mais recente (abre em uma nova janela).


Crie o Scaffold do Gerador de Senhas

Primeiro, vamos criar o scaffold que irá enquadrar nosso gerador de senhas, ou seja, os rótulos e componentes estáticos.Por favor, coloque as coisas exatamente nas células como descrevo abaixo, para que as fórmulas funcionem.Depois de fazê-lo funcionar, você pode ajustá-lo para torná-lo totalmente seu.

Na célula B1, digite "Gerador de Senha Aleatória", ou qualquer título que desejar para o seu projeto.Começando na célula B3 e descendo, digite os rótulos "Comprimento", "Letras maiúsculas", "Letras minúsculas", "Dígitos" e "Caracteres especiais".Pule a célula B8, digite "Pressione F9 para Regenerar" em B9 e "SENHA" em B10.Deve ficar como a imagem acima.

Na célula C3, insira 20 ou o comprimento de senha padrão de sua preferência.Digite "Sim" nas próximas quatro células abaixo dele.Agora insira todo o alfabeto maiúsculo na célula D4 e todo o alfabeto minúsculo em D5.Digite os 10 dígitos em D6 e quaisquer caracteres especiais que você deseja usar em D7.Dica profissional: coloque o 0 por último, não primeiro, na lista de dígitos, ou o Excel o eliminará.O andaime completo deve ser algo assim:


Adicione as fórmulas que geram senhas

Com o andaime no lugar, é hora de adicionar as fórmulas.Para começar, precisamos construir uma string de texto que inclua todos os caracteres que escolhemos usar.A fórmula para fazer isso parece um pouco complicada, mas, na verdade, é apenas longa.Digite esta fórmula na célula D8:

=SE(C4="Sim",D4,"") &IF(C5="Sim",D5,"") &IF(C6="Sim",D6,"") &IF(C7="Sim",D7, "")

O operador & cola strings de texto.O que esta fórmula diz é que, para cada um dos quatro conjuntos de caracteres, se a célula adjacente contiver Sim, inclua o conjunto de caracteres.Mas se essa célula contiver qualquer coisa além de Sim (independentemente de maiúsculas ou minúsculas), não a inclua.Tente agora; altere algumas das células Yes para No, ou Nay ou Meh.A sequência de caracteres disponíveis muda para corresponder ao que você fez.


Use alguma magia do Excel

Quando criei esta planilha, usei uma técnica simples para criar uma senha aleatória.Comecei com uma fórmula que retorna um caractere aleatório extraído dessa string que vive na célula D8:

=MID(D8,RANDBETWEEN(1,LEN(D8)),1)

Isso diz ao Excel para gerar um número aleatório de um para o comprimento da string e retornar um caractere nesse local.Colei 40 repetições dessa fórmula para fazer uma sequência de 40 caracteres aleatórios.E usei a função LEFT() para reduzir o resultado ao tamanho desejado.Não foi bonito.A fórmula final pesava 1.329 caracteres!

Truques Simples para Lembrar Senhas Insanamente Seguras

Graças a um pouco de mágica do Excel que aprendi desde então, minha fórmula atual para gerar uma senha aleatória é muito menor, apenas 78 caracteres:

=TEXTJOIN("",TRUE,MID(D8,RANDBETWEEN(SIGN(ROW(INDIRECT("1:"&C3))),LEN(D8)),1))

Se você quer apenas fazer uso desta fórmula sem se preocupar em como ela funciona, não tem problema!Copie-o para a célula C10.Você verá uma senha aleatória, que muda quando você pressiona F9 para recalcular, como mágica.


Aprenda um pouco de magia do Excel

O que é isso, você diz?Você quer saber por que essa fórmula maluca funciona?Posso ajudar com isso.Mas antes, uma confissão.Não sei se esta é a melhor maneira de fazer o que fiz.Eu apenas mexi até fazer funcionar.Pode haver uma solução mais elegante.

Antes de tudo, conheça a função TEXTJOIN().Essa gem pouco conhecida recebe uma matriz de valores como entrada e os combina.É uma adição bastante recente, exigindo pelo menos o Office 2019 ou um Microsoft 365.Há duas outras entradas antes da matriz, um delimitador para separar os valores e uma opção de verdadeiro/falso que informa se os valores vazios devem ser ignorados.Tente.Em uma nova planilha, digite alguns nomes na coluna A, linhas 1 a 5.Digite esta fórmula na célula B1:

=TEXTJOIN("***", VERDADEIRO, A1:A5)

A célula B1 exibe os nomes de A1 a A5 como uma única sequência de texto, com três asteriscos entre cada um.Aqui está outro exemplo.

=TEXTJOIN(" e ",TRUE,ROW(A1:A9))

Antes de copiar esta função em uma planilha, você consegue adivinhar o que ela faz?A1:A9 é uma matriz e a função ROW() retorna uma matriz de resultados, os números de 1 a 9.TEXTJOIN cola-os juntos, com “ e “ entre. Você pode usar essa técnica para processar listas de números de outras maneiras.

Não precisamos de uma lista de números, no entanto.Só precisamos que o Excel retire um caractere aleatório um certo número de vezes.Novamente, esta fórmula extrai um caractere aleatório:

=MID(D8,RANDBETWEEN(1,LEN(D8)),1)

Para fazer com que o Excel processe essa função, digamos, oito vezes, precisamos substituir o dígito 1 que define a extremidade inferior do intervalo aleatório por uma fórmula que retorna uma matriz de oito 1s.A função SIGN() retorna 1 para qualquer número positivo, então usaremos isso para alterar a matriz de números ascendentes em uma matriz de 1s.Em seguida, usamos TEXTJOIN() para combinar os resultados.Esta fórmula retorna uma senha de oito caracteres feita de caracteres aleatórios da string encontrada em D8:

=TEXTJOIN("",TRUE,MID(D8,RANDBETWEEN(SIGN(ROW(1:8)),LEN(D8)),1))

Quase lá!O que precisamos em vez do intervalo 1:8 é um intervalo de 1 a qualquer valor que esteja em C3, o comprimento desejado.A útil função INDIRECT() faz o trabalho.Ele pega uma string de texto que descreve uma célula ou local e retorna essa célula ou local.Com isso, a fórmula está completa.Aqui está novamente:

=TEXTJOIN("",TRUE,MID(D8,RANDBETWEEN(SIGN(ROW(INDIRECT("1:"&C3))),LEN(D8)),1))


Ajustando o gerador de senhas

O gerador de senhas está totalmente funcional neste momento.Se você está feliz com ele como está, ótimo: você conseguiu!Mas se você estiver interessado, poderá melhorar sua aparência e funcionalidade de várias maneiras.Para começar, clique com o botão direito do mouse no D na parte superior da coluna D e escolha Ocultar no menu.Agora você não precisa ver as listas de conjuntos de caracteres e os cálculos intermediários.

Normalmente, você deseja definir limites superiores e inferiores de comprimento em um gerador de senha.Além disso, se você inserir qualquer coisa além de um número no campo Comprimento, a fórmula falhará.Nós podemos resolver isso.Clique na célula C3, que define o comprimento, clique em Dados na faixa de opções, clique para abrir Ferramentas de Dados e selecione Validação de Dados.

Recomendado por nossos editores

No pop-up resultante, clique no menu suspenso em Permitir e escolha Número inteiro.Desmarque a caixa Ignorar em branco e defina o Mínimo para 8 e o Máximo para, digamos, 64.Quando se parecer com a captura de tela aqui, clique na próxima guia, Mensagem de entrada.Como a mensagem de entrada, digite "Digite um comprimento de 8 a 64".Copie esse texto para a área de transferência e cole-o no campo Mensagem de erro da guia Alerta de erro e clique em OK.Agora, quando você clica na célula Comprimento, recebe um prompt para inserir um comprimento válido e, se cometer um erro, recebe uma mensagem de erro informativa.

Pronto para um ajuste final?Clique na célula C4, a célula à direita do rótulo "Letras maiúsculas".Mais uma vez, clique em Dados na faixa de opções e selecione Validação de dados.Escolha Lista no menu suspenso, desmarque Ignorar em branco, clique na caixa Origem e digite "Sim, Não" sem as aspas.Na guia Mensagem de entrada, desmarque a caixa Mostrar mensagem de entrada na parte superior.Na página Alerta de Erro, digite "Sim ou Não" como mensagem de erro.Clique em OK para finalizar.Copie esta célula para as três células abaixo dela.

É isso!Agora, essas quatro células aceitam apenas Sim ou Não como valores.Melhor ainda, cada um agora adquiriu uma lista suspensa que permite que você escolha um desses valores.

Neste ponto, você pode querer ser criativo e adicionar formatação para tornar seu gerador de senhas menos industrial.Escolha as fontes que você gosta, adicione cores, ajuste as coisas até que fique ótimo para você.

Por fim, vamos bloqueá-lo, para que você não destrua acidentalmente uma fórmula inserindo dados na célula errada.Realce as células C3 a C7 (que é a célula de comprimento mais as quatro células sim/não), clique com o botão direito do mouse e escolha Formatar células.Clique na guia Proteção e desmarque a caixa de seleção Bloqueado e clique em OK.Clique em Revisar na faixa de opções e clique em Proteger planilha.Basta clicar em OK para aceitar as configurações na caixa de diálogo resultante; você não está tentando proteger a folha com senha, apenas para protegê-la contra dedos atrapalhados.Salve o resultado glorioso!


Faça um gerador de senhas no Planilhas Google

Eu sou um gênio do Excel e tenho sido desde antes do Google Sheets existir.Talvez até desde antes do Google existir!Mas eu sei que muitas pessoas confiam no Planilhas Google, então eu o acionei para ter certeza de que ele suporta este projeto.

Segui minhas próprias instruções para criar o gerador de senhas no Planilhas e descobri que tudo funcionou bem, até a fórmula que exibe um caractere aleatório.Tudo funcionou, mas pressionar F9 falhou ao atualizar com um novo caractere aleatório.Consultando o Google, descobri que para forçar uma atualização você deve pressionar F5, atualizando assim toda a página, ou alterar o valor de qualquer célula.É estranho, mas factível.Mudei o prompt para dizer "Pressione F5 para regenerar".

Eu encontrei uma outra diferença quando copiei a função muito importante que realmente cria a senha.Não funcionou.Ele apenas retornou um único caractere aleatório.Para o Sheets lidar com os cálculos de matriz envolvidos, tive que passar explicitamente a fórmula existente para a função ArrayFormula().No Planilhas, a fórmula que gera uma senha aleatória se torna:

=ArrayFormula(TEXTJOIN("",TRUE,MID(D8,RANDBETWEEN(SIGN(ROW(INDIRECT("1:"&C3)))),LEN(D8)),1)))

Não vou entrar em detalhes aqui, mas consegui recriar as regras de validação de dados e ocultar as colunas indesejadas também.Se você estiver usando o Planilhas em vez do Excel, esse projeto ainda poderá funcionar para você.


Você fez isso!

Se você aceitou a versão básica desta planilha ou passou a aplicar os ajustes sofisticados, agora você tem um gerador de senha que você mesmo escreveu.É verdade que o Excel usa um gerador de números pseudo-aleatórios, mas você pode adicionar sua própria aleatoriedade rolando um dado e tocando em F9 muitas vezes antes de aceitar a senha gerada.E enquanto um hacker pode trabalhar para fazer engenharia reversa do gerador de senhas em um produto de gerenciamento de senhas usado por milhões, seu utilitário único não está no radar.Você fez isso!