Como criar senhas seguras – Parte 1

Todo mundo coleciona senhas como Pokémons, tem uma pra cada site.

O problema é que elas são na maioria das vezes inseguras e podem ser roubadas facilmente. Aqui fica um guia completo de como cuidar de suas senhas, desde de como elas são roubadas até como gerenciar várias senhas.

Como Senhas São Armazenadas

Nos sites (pelo menos nos decentes) que permitem cadastro de usuários, as senhas não são armazenadas da forma que são digitadas pelo usuário. Caso fossem, um hacker com más intenções poderia invadir o site e conseguir as senhas de todos os usuários – boa parte (provavelmente você também) usa a mesma senha em vários sites diferentes, e então o hacker poderia roubar contas de vários serviços com uma só invasão.

Em vez disso, os sites guardam o hash da senha digitada pelo usuário. Mas o que é isso de hash?

Hash

O hash de uma sequência de bits (que pode ser um texto, uma imagem, uma música) é, a bem grosso modo, uma sequência de caráteres gerada através de um algoritmo (no caso, uma série de cálculos matemáticos), de forma que essa sequência de caráteres tenha um tamanho pequeno e fixo.

Os algoritmos que geram hashes são feitos de forma que uma alteração mínima na entrada (o texto, imagem, música etc) gera um resultado totalmente diferente.

Outra característica desses algoritmos é que é impossível fazer o processo inverso: pegar o valor do hash e calcular a entrada que o gerou. Justamente nesse ponto, o hashing difere da criptografia. Na criptografia, a intenção é esconder os dados, de forma que quem esteja autorizado a vê-los (ou seja, quem tem a senha de decodificação) possa ter a informação original de volta.

Para os exemplos desse artigo, vamos usar o algoritmo MD5.

Texto Hash MD5 do texto
teste 698dc19d489c4e4db73e28a713eab07b
testE 0e7c670dba0c532a664757db32ed2099
Eu sou um texto longuííííssimo, e mesmo assim gero um hash com o mesmo tamanho! Isso não é incrível? Eu acho! Sério, acho mesmo. 6a7d4d41f06b069a472b08e8f3b8ed4be

Hashes possuem dois usos principais:

  • Verificar a integridade de arquivos. Quando um arquivo vai ser transportado de um computador para outro, o lado de origem calcula o hash do arquivo. Em seguida, o arquivo é transportado, e o hash é novamente calculado (obviamente, utilizando o mesmo algoritmo). Se o arquivo estiver corrompido (partes dele foram perdidas ou bits foram trocados), por menor que seja a alteração, o hash terá um valor completamente diferente do original.
  • Armazenar senhas em bancos de dados de forma segura. E é nisso que estamos interessados!

Como Acontece A Mágica

Quando você se cadastra em um site, ele calcula o hash relativo à sua senha, e guarda ele junto com o nome de usuário. A senha que você digitou, ele joga fora.

Quando você faz login, nome de usuário e senha são enviados pela Internet até o servidor.

usuario>servidor

Lá, calcula-se o hash da senha enviada, e é conferido se a entrada do banco de dados de usuários com o mesmo nome de usuário que foi apresentado tem o campo “senha” igual ao hash calculado. Se ambos os campos baterem, o servidor autentica você, envia uma nova página pro seu computador mostrando que você autenticou, o menu de usuário etc. Caso não, ele dá o erro de “usuário ou senha não encontrados”.

servidor hash

Agora, o motivo pelo qual hashes são usados para armazenar as senhas: Suponha que o servidor foi invadido. O invasor tem acesso ao banco de dados dos usuários. Em vez da senha do usuário, o que ele vê é o hash. E como dissemos, é impossível obter a senha original a partir disso. É claro, ele pode fazer o servidor e o site de gato e sapato, pode falsificar ações do usuário (como fazer compras por ele, se for um site de compras). Mas o estrago só será feito naquele site: Mesmo que o usuário use a mesma senha em todos os sites que se cadastra, o invasor não sabe que senha é essa.

hacker

Veja o próximo da série: Como Cuidar de suas Senhas – Parte 2

 

Sorry, comments are closed for this post.

Sobre o Jardel

Já fui modelo, barman e vendedor, hoje trabalho com esse mundo louco que é a internet. Aqui você encontra posts escritos por mim desde os meus 16 anos e no meio deles talvez algo útil pra sua vida.

Wordpress SEO Plugin by SEOPressor