Maybaygiare.org

Blog Network

Cómo Codificar y Decodificar Base64 Cadenas Con Mac OS o Linux

Tremaine Eto

Seguir

Sep 9, 2020 · 3 min de lectura

Foto por James Orr en Unsplash

Una tarea bastante común que necesito hacer durante mi ingeniería de software diaria es codificar o decodificar cadenas base64; aparece cuando estoy trabajando con cosas como claves privadas o secretos de Kubernetes, que están codificados con base64. Para hacerlo, puede memorizar fácilmente un comando para cada uno que puede ejecutar en su terminal.

En primer lugar, sería negligente si no mencionara que no necesariamente tiene que hacer esto en su interfaz de línea de comandos. Hay dos sitios web hermanos, Base64 Decode y Base64 Encode, que logran esta tarea. No estoy afiliado a ellos de ninguna manera, pero estoy bastante seguro de que muchos, muchos desarrolladores están familiarizados con ellos.

Sin embargo, hay varias razones por las que no puede usar esos sitios; por un lado, tal vez no esté conectado y no pueda acceder a ellos. En segundo lugar, tal vez no confíes plenamente en tus datos secretos que van al servidor de alguien que no conoces. Ambos son puntos realmente válidos, y es por eso que sugiero los métodos que estoy a punto de repasar.

Primero, para codificar en base64, ejecute el siguiente comando en su terminal:

echo -n 'username' | base64

Repasemos los diferentes componentes de esto.

  • echo : Este comando escribe una cadena en la salida estándar, lo que en términos menos técnicos significa que literalmente imprime de nuevo lo que escriba en la pantalla.
  • -n : Este indicador indica que desea que la salida se imprima en una nueva línea. En realidad, esto es bastante útil porque, de lo contrario, la cadena codificada en base64 se imprimirá justo después sin espacio ni nada. Es más difícil de copiar y pegar, e incluso podría copiar accidentalmente parte del comando inicial con la cadena, lo que sin duda causaría dolores de cabeza en el futuro. Te recomiendo que tengas el hábito de incluir esta bandera aunque no sea necesario para que el comando realmente funcione.
  • 'username' : Aquí es donde pones la cadena que quieres codificar base64; no tiene que ser literalmente username.
  • |: Esta es una tubería que le dice al comando que desea redirigir la salida de la parte izquierda a la parte derecha, esencialmente. En este caso, no queremos simplemente hacer eco de lo que escribimos; ¡queremos codificarlo! Por lo tanto, proporcionaremos en el lado derecho las instrucciones para codificar la cadena.
  • base64: Este es un programa que se encuentra en el paquete coreutils (o GNU Core Utilities) que viene preempaquetado con su sistema operativo Mac o Linux. Otras herramientas familiares para que también están en el coreutils include lsrm y cat. Básicamente, esto hará todo el trabajo duro de codificar la cadena que proporcionó anteriormente.

La salida del comando anterior es la siguiente:

dXNlcm5hbWU=

Decodificar en base64

Digamos que realmente comenzó con la cadena codificada en base64 anterior, dXNlcm5hbWU=. Si desea decodificarlo, el proceso es en realidad tan fácil como lo fue en la sección anterior.

Simplemente ejecute el siguiente comando:

base64 --decode dXNlcm5hbWU=

Esto debería ser bastante fácil de entender; el --decode indicador hace exactamente lo que piensa! El resultado es:

username

Fácil de memorizar pero útil para toda la vida

Si trabajas con software, no creo que el subtítulo anterior sea una exageración; uso estos comandos todo el tiempo, y estoy muy agradecido por ellos.

Deja una respuesta

Tu dirección de correo electrónico no será publicada.