Por que o 'md5sum' não fornece o mesmo hash da Internet?

8

Eu quero encontrar o hash md5 da string "a", mas executar echo "a" | md5sum me dá outro hash do que recebo se eu pesquisar na internet (por exemplo, usando DuckDuckGo ou o primeiro resultado de pesquisa que encontrei ).

A execução de echo "a" | md5sum me fornece "60b725f10c9c85c70d97880dfe8191b3", mas deve ser "0cc175b9c0f1b6a831c399e269772661".

Se eu fizer uma pesquisa de inversão de hash para "60b725f10c9c85c70d97880dfe8191b3", eu recebo "a".

    
por lindhe 27.12.2017 / 11:53

1 resposta

14

A razão para os hashes serem diferentes é que echo inclui uma nova linha no final da string de saída para torná-la bonita. Isso pode ser proibido pelo sinalizador -n (se sua implementação de echo oferecer suporte a ele) ou por outro programa (como printf ):

> echo "a" | md5sum   
60b725f10c9c85c70d97880dfe8191b3  -

> echo -n "a" | md5sum
0cc175b9c0f1b6a831c399e269772661  -

> printf "a" | md5sum 
0cc175b9c0f1b6a831c399e269772661  -
    
por 27.12.2017 / 11:53

Tags