Ich betrete:
appletree:~ somename$ shasum -a 512 <<< test
Und die Ausgabe ist:
0e3e75234abc68f4378a86b3f4b32a198ba301845b0cd6e50106e874345700cc6663a86c1ea125dc5e92be17c98f9a0f85ca9d5f595db2012f7cc3571945c123 -
Dann gehe ich zu einigen Online-Hash-Generatoren und gebe auch "test" ein. Ihre Antworten sind:
ee26b0dd4af7e749aa1a8ee3c10ae9923f618980772e473f8819a5d4940e0db27ac185f8a0e1d5f84f88bc887fd67b143732c304cc5fa9ad8e6f57f50028a8ff
http://passwordsgenerator.net/sha512-hash-generator/ :
EE26B0DD4AF7E749AA1A8EE3C10AE9923F618980772E473F8819A5D4940E0DB27AC185F8A0E1D5F84F88BC887FD67B143732C304CC5FA9AD8E6F57F50028A8FF
Also sind sich die Online-Generatoren einig. Was fehlt mir im Mac-Konsolenbefehl?
Ich habe die man
Seiten gelesen . Ich sehe, dass es mit einer Perl-Bibliothek implementiert wird. Ich denke jedoch, sha512 wäre eine einzigartige Bezeichnung, deshalb muss ich tiefer graben.
Es scheint eine doppelte Frage zu geben: Warum unterscheidet sich mein Befehlszeilen-Hash von den Online-MD5-Hash-Ergebnissen? . Während sich die andere Frage im selben Kontext befindet, der ein unerwartetes Leerzeichen darstellt, entsteht sie aus einer anderen Situation.
<<<
ist eine Hier-Zeichenfolge , und es gibt eine Designauswahl, wie hier Zeichenfolgen Zeilenvorschub hinzufügen.echo 'bla' |
bedeutet Piping, das Sub-Shells aufruft und auch Argumente für den Umgang mit Newline enthält. Hier scheint es, dass Sie die Shell-Version berücksichtigen müssen .
Antworten:
Die Eingabe für den
shasum
Aufruf in der Frage erfolgttest\n
(mit einem Zeilenumbruch) nichttest
.Wenn Sie
test
ohne Zeilenvorschub angeben, erhaltenshasum
Sie die gleiche Ausgabe wie die von Ihnen angegebenen Online-Tools:Übrigens, ich denke, es gibt nichts Besonderes oder MacOS-spezifisches an dem, was
shasum
man unter MacOS findet. Ich denke, esshasum
ist Teil der Standard-Perl-Distribution, die zusammen mit zperl
. B. dem Befehl installiert wird .quelle
Versuche dies:
Wenn Sie Unix-Shells kennen, erhalten Sie wahrscheinlich ein unerwünschtes 0x0a am Ende dieser Zeichenfolge.
quelle
od
beschriftet Steuerzeichen und macht das offensichtlicher; versuchen:od -t a -t x1 <<< test
(nie wirklich Hexdump verwendet),