Formato de uma senha criptografada
O campo de senha criptografada armazena três informações:
-
Algoritmo de hashing em uso,
-
Salt
-
Hash criptografado.
Nota
Cada informação é delimitada pelo caractere de dólar
$
.
$ 6 $ CSsXcYG1L/4ZfHr/ $ 2W6evvJahUfzfHpc9X.45Jc6H30E
6
: o algoritmo de hash usado para a senha.
Nota
Um 6 indica um hash SHA-512, o padrão RHEL 9, um 1 indica MD5 e um 5 indica SHA-256.
-
CSsXcYG1L/4ZfHr/
: o salt em uso para criptografar a senha; originalmente escolhido aleatoriamente. -
2W6evvJahUfzfHpc9X.45Jc6H30E
: o hash criptografado da senha do usuário, combinando o sal e a senha não criptografada e, depois, criptografando para gerar o hash da senha.
O principal motivo para combinar um sal com a senha é defender-se contra ataques usando listas pré-testadas de hashes de senha. A adição de sais altera os hashes resultantes, tornando a lista previamente computada inútil. Se um invasor obtiver uma cópia de um arquivo /etc/shadow que usa sal, ele precisará adivinhar as senhas com força bruta, o que exige mais tempo e esforço.