GNU/Linux >> Znalost Linux >  >> Linux

Proč `md5sum` nedává stejný hash jako internet?

Chci najít md5 hash řetězce „a“, ale spouštím echo "a" | md5sum dává mi jiný hash, než dostanu, když prohledávám internet (například pomocí DuckDuckGo nebo prvního výsledku vyhledávání, který jsem našel).

Spuštění echo "a" | md5sum dává mi „60b725f10c9c85c70d97880dfe8191b3“, ale mělo by to být „0cc175b9c0f1b6a831c399e269772661“.

Pokud provedu zpětné vyhledávání hash pro „60b725f10c9c85c70d97880dfe8191b3“, dostanu „a“.

Přijatá odpověď:

Důvodem, proč se hash liší, je echo obsahuje nový řádek na konci výstupního řetězce, aby byl pěkný. To může být zakázáno pomocí -n flag (pokud vaše implementace echo podporuje), nebo pomocí jiného programu (jako printf ):

> echo "a" | md5sum   
60b725f10c9c85c70d97880dfe8191b3  -

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

> printf "a" | md5sum 
0cc175b9c0f1b6a831c399e269772661  -

Linux
  1. Proč regulární výraz funguje v X, ale ne v Y?

  2. Proč následující způsob nezmění velikost základního souboru?

  3. Proč překladový soubor Bash neobsahuje všechny chybové texty?

  1. Linux – Proč Setuid nefunguje?

  2. Proč mi Grep -o -w neposkytuje očekávaný výkon na Mac OS X?

  3. Nastavení +a Nezruší nastavení příznaku -a?

  1. Proč nebyl příkaz sudo:bundle nalezen?

  2. Proč mapování MAP_GROWSDOWN neroste?

  3. Proč mi wget'ing image dává soubor, ne obrázek?