Como os sites verificam sua senha

(sem saber o que é)

Quando você visita um site e digita uma senha (ou preenche automaticamente uma do seu gerenciador de senhas ), você já se perguntou o que acontece nos bastidores?

Em outras palavras, como o site sabe se a senha que você digitou corresponde à senha armazenada?

A resposta tem a ver com como ele armazena sua senha e envolve uma técnica inteligente chamada hash .

O que há de errado com senhas de texto simples

Vamos pensar no banco de dados de usuários de um site como se fosse uma planilha. Cada linha representa um usuário e há duas colunas: nome de usuário e senha .

Para verificar se um usuário digitou a senha correta, você pode procurar o nome de usuário digitado e verificar se a coluna de senha dessa linha corresponde à senha digitada.

Parece bem simples, certo? Infelizmente, um banco de dados como esse – onde as senhas são armazenadas em texto simples – seria um desastre de segurança na vida real.

Isso porque um invasor teria apenas que obter acesso a esse banco de dados para obter acesso às senhas de todos os usuários. E não seriam apenas os dados deles neste site que seriam comprometidos. Eles poderiam tentar todos os combos de nome de usuário/senha em outros sites. As pessoas tendem a reutilizar as mesmas senhas, então provavelmente terão sucesso.

Por que o hash é mais seguro

Para proteger os usuários, a maioria dos sites modernos faz o hash de suas senhas antes de armazená-las.

O hash, como a criptografia, é um processo que converte qualquer sequência de dados em uma sequência de dados aparentemente aleatória e ilegível. Ao contrário da criptografia, no entanto, o hash não pode ser desfeito . Não existe uma “chave” que possa ser usada para “de-hash” uma senha com hash. É, em termos matemáticos, uma função de mão única .

Armazenar senhas em forma de hash é, portanto, mais seguro porque o hash não pode ser revertido para a senha original. Na prática, é um pouco mais complicado do que isso – mas a essência é que o hash permite que os sites permaneçam ignorantes sobre qual é sua senha real.

É por isso que os sites forçam você a criar uma nova senha quando você esquece a antiga. Eles não podem simplesmente dizer sua senha atual porque armazenaram apenas o hash. Na verdade, se um site for capaz de enviar sua senha atual depois que você a esqueceu, isso é uma indicação clara de que o site tem uma segurança muito ruim.

Como os sites verificam as senhas (com hash)

Se um site armazena apenas senhas com hash, como ele pode verificar se a senha que você digitou está correta?

Ao verificar o hash do que você digitou em relação ao hash de senha armazenado.

O hash tem a importante propriedade de que, se duas strings não corresponderem - mesmo que sejam diferentes em apenas um caractere - seus hashes parecerão completamente diferentes. Apenas duas strings que correspondam exatamente terão hashes correspondentes.* Portanto, se o hash do que um usuário inserir no campo de senha corresponder ao hash associado a esse usuário no banco de dados, o site saberá que a senha foi inserida corretamente.

Agora que você sabe como os sites armazenam (e verificam) suas senhas com hashes, não deixe que isso o impeça de tornar suas próprias senhas o mais fortes possível. Use nosso gerador de senhas aleatórias para criar senhas fortes de forma rápida e segura.

*Na verdade, isso não é estritamente verdade. Duas strings podem teoricamente ter o mesmo hash, o que é chamado de colisão de hash . Mas com a família SHA agora padrão de funções de hash, as colisões são tão raras e imprevisíveis que geralmente são ignoradas.


Strong

5178 Blog indlæg

Kommentarer