Fala Fera!
No meu último vídeo no Youtube, eu falei sobre o "SALT". No texto abaixo, vamos procurar entender melhor do que se trata e porque ele é tão importante para proteger as senhas do usuários no banco de dados.
O "salt" é um conceito de segurança utilizado em técnicas de criptografia de senhas para aumentar a sua segurança. Ele consiste em adicionar um valor aleatório único (salt) à senha antes de realizar a criptografia. Esse valor aleatório é armazenado juntamente com a senha criptografada no banco de dados.
A principal função do salt é evitar que senhas iguais tenham o mesmo hash na base de dados. Sem o salt, se dois usuários tiverem a mesma senha, o hash da senha será idêntico e facilmente identificado. Com o salt, cada senha é única, mesmo que os usuários tenham a mesma senha. Isso significa que, mesmo que duas pessoas tenham a mesma senha, os hashes serão diferentes, proporcionando uma camada extra de segurança.
O uso do salt torna mais difícil para os atacantes realizar ataques de força bruta ou usar tabelas de hashes (rainbow tables) para encontrar senhas correspondentes aos hashes. Isso porque, mesmo que um atacante tenha acesso ao banco de dados, ele precisará do salt para calcular o hash correto da senha.
Além disso, é importante mencionar que o salt deve ser aleatório e único para cada usuário. Ele pode ser armazenado como um campo adicional na tabela de usuários ou concatenado com a senha antes de ser criptografado.
Alguns algoritmos de criptografia de senhas, como BCrypt e Argon2, já incorporam o uso do salt e cuidam da geração automática de valores de salt seguros. No entanto, se você estiver usando funções de hash mais básicas, é importante garantir que o salt seja gerado de forma aleatória e única para cada usuário.
Caso não tenha visto, veja o meu vídeo em que utilizo o "salt" na prática:
Nenhum comentário:
Postar um comentário