Codificación y decodificación de Bash en base64

Para codificar o decodificar la entrada / salida estándar o cualquier contenido de archivo, Linux usa el sistema de codificación y decodificación de base64. Los datos se codifican y decodifican para facilitar el proceso de transmisión y almacenamiento de datos. La codificación y decodificación no son similares al cifrado y descifrado. Los datos codificados se pueden revelar fácilmente mediante la decodificación. Por lo tanto, esta herramienta de utilidad de línea de comandos no se puede utilizar para la seguridad de los datos. El alfabeto, el número y el símbolo «=» se utilizan para codificar cualquier dato.

base64

Puede utilizar diferentes tipos de opciones con el comando base64. Los datos se pueden tomar de cualquier archivo o entrada estándar durante la codificación o decodificación. Después de codificar o decodificar, puede enviar la salida en un archivo o imprimir la salida en la terminal.

Opciones:

-e o –encode

Este La opción se utiliza para codificar cualquier dato de la entrada estándar o de cualquier archivo. Es la opción predeterminada.

-d o –decode

Esta opción se utiliza para decodificar cualquier dato codificado de la entrada estándar o de cualquier archivo.

– n o –noerrcheck

Por defecto, base64 comprueba el error al decodificar cualquier dato. Puede usar la opción –no –noerrcheck para ignorar la verificación en el momento de la decodificación.

-u o –help

Esta opción se usa para obtener información sobre el uso de este comando .

-i, –ignore-garbage

Esta opción se usa para ignorar caracteres que no son del alfabeto mientras se decodifica.

–copyright

Se usa para obtener información de derechos de autor.

–versión

Se usa para obtener información de versión.

Cómo se usa el comando base64 en Linux es mostrado en este tutorial usando algunos ejemplos.

Ejemplo # 1: Codificar datos de texto

Puede codificar cualquier dato de texto usando base64 en la línea de comando. Cuando desee codificar cualquier dato usando base64, usar la opción -e o –encode es opcional. Por lo tanto, si no menciona ninguna opción con base64, funcionará para la codificación. El siguiente comando codificará los datos, «linuxhint.com» e imprimirá los datos codificados como salida.

$ echo «linuxhint.com» | base64

Salida:

Ejemplo # 2: Decodificación de datos de texto

El siguiente comando decodificará el texto codificado, bGludXhoaW50LmNvbQ == e imprimirá el texto original como salida.

$ echo «bGludXhoaW50LmNvbQo = «| base64 –decode

Salida:

Ejemplo n. ° 3: codificación de archivo de texto

Cree un archivo de texto llamado sample.txt con el siguiente texto que se codificará usando base64.

Ejemplo .txt
PHP usa base64_encode y base64_decode para la codificación y decodificación de datos

Puede imprimir el texto codificado en la línea de comando o almacenar el texto codificado en otro archivo. El siguiente comando codificará el contenido del archivo sample.txt e imprimirá el texto codificado en la terminal.

$ base64 sample.txt

Salida:

Los siguientes comandos codificarán el contenido del archivo sample.txt y guardarán el texto codificado en el archivo encodedData.txt.

$ base64 sample.txt > encodedData.txt
$ cat encodedData.txt

Salida:

Ejemplo # 4: Decodificación de archivo de texto

El siguiente comando decodificará el contenido del archivo encodedData.txt e imprimirá la salida en la terminal

$ base64 -d encodedData.txt

Salida:

Los siguientes comandos decodificarán el contenido del archivo encodedData.txt y almacenar el contenido decodificado en el archivo, originalData.txt.

$ base64 –decode encodedData.txt > originalData.txt
$ cat originalData.txt

Salida:

Ejemplo # 5: Codificación de cualquier texto definido por el usuario

Cree un archivo bash llamado encode_user_data.sh con lo siguiente código. El siguiente script tomará cualquier dato de texto como entrada, codificará el texto usando base64 e imprimirá el texto codificado como salida.

#! / Bin / bash
echo «Introduzca algo de texto para codificar»
leer texto
etext = `echo -n $ text | base64`
echo «El texto codificado es: $ etext»

Ejecute el script.

$ base encode_user_data.sh

Salida:

Ejemplo n. ° 6: Comprobación de la validez del usuario mediante decodificación de texto

Cree un archivo bash llamado checkValidity.sh y agregue el siguiente código. En este ejemplo, se toma un texto secreto del usuario. Base64 decodifica un texto codificado predefinido y lo compara con la entrada del usuario. Si ambos valores son iguales, la salida será «Está autenticado»; de lo contrario, la salida será «No está autenticado».Con este sencillo código de decodificación, la validación normal se puede realizar muy fácilmente.

Ejecute el script.

$ bash checkValidity.sh

Resultado:

Conclusión:

Para cualquier Los datos como la contraseña o cualquier información confidencial, el sistema de codificación y decodificación no son adecuados en absoluto. Debe utilizar un sistema de cifrado y descifrado para proteger este tipo de datos.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *