az egyik nagyon gyakori feladat, amit meg kell tennem a napi szoftverfejlesztés során, hogy vagy kódoljam vagy dekódoljam a base64 karakterláncokat; akkor jön létre, amikor olyan dolgokkal dolgozom, mint a privát kulcsok vagy a Kubernetes titkok, amelyek base64 kódoltak. Ehhez könnyedén megjegyezhet egy parancsot mindegyikhez, amelyet a terminálon futtathat.
először is hanyag lennék, ha nem említeném, hogy nem feltétlenül kell ezt tennie a parancssori felületen. Két testvérwebhely van, a Base64 Decode és a Base64 Encode, amelyek ezt a feladatot teljesítik. Semmilyen módon nem vagyok kapcsolatban velük, de biztos vagyok benne, hogy sok-sok fejlesztő ismeri őket.
számos oka van azonban annak, hogy miért nem használja ezeket a webhelyeket; például lehet, hogy offline állapotban van, és nem tudja elérni őket. Másodszor, talán nem bízik teljes mértékben a titkos adataiban, amelyek valakinek a szerverére kerülnek, akit nem ismer. Mindkettő valóban érvényes pont, ezért javaslom azokat a módszereket, amelyeken át fogok menni.
először a base64 kódolásához futtassa a következő parancsot a terminálon:
echo -n 'username' | base64
menjünk át a különböző komponenseket erre.
-
echo
: ez a parancs egy karakterláncot ír a szabványos kimenetre, ami kevésbé technikai értelemben azt jelenti, hogy szó szerint kinyomtatja, amit írsz a képernyőre. -n
: ez a jelző azt jelzi, hogy a kimenetet új sorra szeretné nyomtatni. Ez valójában nagyon hasznos, mert különben a base64 kódolású karakterlánc közvetlenül utána nyomtat, szóköz vagy bármi más nélkül. Csak nehezebb másolni és beilleszteni, sőt véletlenül átmásolhatja a kezdeti parancs egy részét a karakterlánccal, ami minden bizonnyal fejfájást okozna a sorban. Azt javaslom, hogy szokja be ezt a zászlót, annak ellenére, hogy nem szükséges, hogy a parancs valóban működjön.-
'username'
: itt helyezed el a base64 kódolni kívánt karakterláncot; nem kell szó szerintusername
. -
|
: Ez egy cső, amely megmondja a parancsnak, hogy a bal oldali rész kimenetét lényegében a jobb oldali részre szeretné átirányítani. Ebben az esetben nem egyszerűen csak azt akarjuk visszhangozni, amit írtunk; kódolni akarjuk! Így a jobb oldalon megadjuk a karakterlánc kódolására vonatkozó utasításokat. -
base64
: ez egy olyan program, amely acoreutils
(vagy GNU Core Utilities) csomagban található, amely előre csomagolva van a Mac vagy Linux operációs rendszerhez. Acoreutils
egyéb ismerős eszközei közé tartozik als
rm
éscat
. Alapvetően ez elvégzi a korábban megadott karakterlánc kódolásának minden kemény munkáját.
a fenti parancs kimenete a következő:
dXNlcm5hbWU=
dekódolja a base64-ben
tegyük fel, hogy valójában a fenti base64 kódolású karakterlánccal kezdte, dXNlcm5hbWU=
. Ha dekódolni szeretné, a folyamat valójában ugyanolyan egyszerű, mint a fenti szakaszban volt.
egyszerűen futtassa a következő parancsot:
base64 --decode dXNlcm5hbWU=
ennek elég könnyen érthetőnek kell lennie; a --decode
zászló pontosan azt teszi, amit gondol! A kimenet:
username
könnyen megjegyezhető, de hasznos az élet számára
ha szoftverrel dolgozik, nem hiszem, hogy a fenti alfejezet túlzó lenne; állandóan használom ezeket a parancsokat, és nagyon hálás vagyok értük.