Eine ziemlich häufige Aufgabe, die ich während meiner täglichen Softwareentwicklung erledigen muss, besteht darin, Base64-Zeichenfolgen entweder zu codieren oder zu decodieren. es kommt auf, wenn ich mit Dingen wie privaten Schlüsseln oder Kubernetes-Geheimnissen arbeite, die base64-codiert sind. Dazu können Sie sich einfach einen Befehl für jeden Befehl merken, den Sie in Ihrem Terminal ausführen können.
Zunächst einmal wäre ich nachlässig, wenn ich nicht erwähnen würde, dass Sie dies nicht unbedingt in Ihrer Befehlszeilenschnittstelle tun müssen. Es gibt zwei Geschwister-Websites, Base64 Decode und Base64 Encode , die diese Aufgabe erfüllen. Ich bin in keiner Weise mit ihnen verbunden, aber ich bin mir ziemlich sicher, dass viele, viele Entwickler mit ihnen vertraut sind.
Es gibt jedoch verschiedene Gründe, warum Sie diese Websites möglicherweise nicht verwenden. Zum einen sind Sie möglicherweise offline und können nicht darauf zugreifen. Zweitens vertrauen Sie vielleicht nicht vollständig Ihren geheimen Daten, die auf den Server von jemandem gehen, den Sie nicht kennen. Beides sind wirklich gültige Punkte, und deshalb schlage ich die Methoden vor, die ich gleich durchgehen werde.
Führen Sie zum Codieren in base64 zunächst den folgenden Befehl in Ihrem Terminal aus:
echo -n 'username' | base64
Lassen Sie uns die verschiedenen Komponenten dazu durchgehen.
-
echo
: Dieser Befehl schreibt einen String in die Standardausgabe, was weniger technisch bedeutet, dass er buchstäblich alles, was Sie schreiben, erneut auf den Bildschirm druckt. -
-n
: Dieses Flag gibt an, dass die Ausgabe in einer neuen Zeile gedruckt werden soll. Dies ist eigentlich ziemlich nützlich, da sonst die base64-codierte Zeichenfolge direkt danach ohne Leerzeichen oder irgendetwas gedruckt wird. Es ist nur schwieriger zu kopieren und einzufügen, und Sie könnten sogar versehentlich einen Teil des anfänglichen Befehls mit der Zeichenfolge kopieren, was auf der ganzen Linie sicherlich Kopfschmerzen verursachen würde. Ich empfehle Ihnen, sich daran zu gewöhnen, dieses Flag einzuschließen, obwohl es nicht notwendig ist, dass der Befehl tatsächlich funktioniert. -
'username'
: Hier setzen Sie den String, den Sie base64 codieren möchten; es muss nicht wörtlich seinusername
. -
|
: Dies ist eine Pipe, die dem Befehl mitteilt, dass Sie die Ausgabe des linken Teils im Wesentlichen in den rechten Teil umleiten möchten. In diesem Fall wollen wir nicht einfach nur wiederholen, was wir geschrieben haben; Wir wollen es codieren! Daher geben wir auf der rechten Seite die Anweisungen zum Codieren der Zeichenfolge an. -
base64
: Dies ist ein Programm, das sich im Paketcoreutils
(oder GNU Core Utilities) befindet, das im Lieferumfang Ihres Mac- oder Linux-Betriebssystems enthalten ist. Andere vertraute Tools, die auch incoreutils
enthalten sind, sindls
rm
undcat
. Grundsätzlich erledigt dies die harte Arbeit beim Codieren der zuvor bereitgestellten Zeichenfolge.
Die Ausgabe des obigen Befehls lautet wie folgt:
dXNlcm5hbWU=
In base64 dekodieren
Angenommen, Sie haben tatsächlich mit der obigen base64-codierten Zeichenfolge dXNlcm5hbWU=
begonnen. Wenn Sie es dekodieren möchten, ist der Vorgang tatsächlich so einfach wie im obigen Abschnitt.
Führen Sie einfach den folgenden Befehl aus:
base64 --decode dXNlcm5hbWU=
Dies sollte ziemlich einfach zu verstehen sein; das --decode
Flag macht genau das, was Sie denken! Die Ausgabe ist:
username
Leicht zu merken, aber nützlich für das Leben
Wenn Sie mit Software arbeiten, denke ich nicht, dass die obige Überschrift übertrieben ist; Ich benutze diese Befehle die ganze Zeit, und ich bin so dankbar für sie.