Encodage et décodage Bash base64

Pour encoder ou décoder les entrées / sorties standard ou tout contenu de fichier, Linux utilise un système dencodage et de décodage base64. Les données sont codées et décodées pour faciliter le processus de transmission et de stockage des données. Le codage et le décodage ne sont pas similaires au cryptage et au décryptage. Les données codées peuvent être facilement révélées par décodage. Par conséquent, cet utilitaire de ligne de commande ne peut pas être utilisé pour la sécurité des données. L’alphabet, le nombre et le symbole «=» sont utilisés pour encoder toutes les données.

base64

Vous pouvez utiliser différents types d’options avec la commande base64. Les données peuvent être extraites de nimporte quel fichier ou entrée standard lors du codage ou du décodage. Après avoir encodé ou décodé, vous pouvez envoyer la sortie dans un fichier ou imprimer la sortie dans le terminal.

Options:

-e ou –encode

Ceci Loption est utilisée pour encoder toutes les données de lentrée standard ou de nimporte quel fichier. Cest loption par défaut.

-d ou –decode

Cette option est utilisée pour décoder toutes les données encodées à partir dune entrée standard ou de nimporte quel fichier.

– n ou –noerrcheck

Par défaut, base64 vérifie les erreurs lors du décodage des données. Vous pouvez utiliser loption –n ou –noerrcheck pour ignorer la vérification au moment du décodage.

-u ou –help

Cette option est utilisée pour obtenir des informations sur lutilisation de cette commande .

-i, –ignore-garbage

Cette option est utilisée pour ignorer les caractères non alphabétiques lors du décodage.

–copyright

Il est utilisé pour obtenir les informations de copyright.

–version

Il est utilisé pour obtenir les informations de version.

La façon dont vous utilisez la commande base64 sous Linux est montré dans ce didacticiel en utilisant quelques exemples.

Exemple n ° 1: encodage de données texte

Vous pouvez encoder nimporte quelle donnée texte en utilisant base64 dans la ligne de commande. Lorsque vous souhaitez encoder des données en utilisant base64, lutilisation de loption -e ou –encode est facultative. Donc, si vous ne mentionnez aucune option avec base64, cela fonctionnera pour lencodage. La commande suivante encodera les données, ‘linuxhint.com’ et imprimera les données encodées en sortie.

$ echo « linuxhint.com » | base64

Sortie:

Exemple # 2: décodage de données textuelles

La commande suivante décodera le texte encodé, bGludXhoaW50LmNvbQ == et imprimera le texte original en sortie.

$ echo « bGludXhoaW50LmNvbQo = « | base64 –decode

Sortie:

Exemple # 3: Encodage dun fichier texte

Créez un fichier texte nommé, sample.txt avec le texte suivant qui sera encodé en utilisant base64.

Exemple .txt
PHP utilise base64_encode et base64_decode pour lencodage et le décodage des données

Vous pouvez imprimer le texte encodé dans la ligne de commande ou stocker le texte encodé dans un autre fichier. La commande suivante encodera le contenu du fichier sample.txt et imprimera le texte encodé dans le terminal.

$ base64 sample.txt

Sortie:

Les commandes suivantes encoderont le contenu du fichier sample.txt et lenregistreront le texte encodé dans le fichier encodedData.txt.

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

Résultat:

Exemple # 4: Décodage du fichier texte

La commande suivante décodera le contenu du fichier encodedData.txt et imprimera la sortie dans le terminal

$ base64 -d encodedData.txt

Sortie:

Les commandes suivantes vont décoder le contenu du fichier encodedData.txt et stocker le contenu décodé dans le fichier, originalData.txt.

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

Résultat:

Exemple n ° 5: encodage de tout texte défini par lutilisateur

Créez un fichier bash nommé encode_user_data.sh avec ce qui suit code. Le script suivant prendra toutes les données de texte en entrée, encodera le texte en utilisant base64 et imprimera le texte encodé en sortie.

#! / Bin / bash
echo « Entrez du texte à encoder »
lire le texte
etext = `echo -n $ text | base64`
echo « Le texte encodé est: $ etext »

Exécutez le script.

$ base encode_user_data.sh

Résultat:

Exemple # 6: Vérification de la validité de lutilisateur par décoder le texte

Créez un fichier bash nommé checkValidity.sh et ajoutez le code suivant. Dans cet exemple, un texte secret est extrait de lutilisateur. Un texte codé prédéfini est décodé par base64 et comparé à lentrée utilisateur. Si les deux valeurs sont égales, la sortie sera « Vous êtes authentifié », sinon la sortie sera « Vous nêtes pas authentifié ».En utilisant ce code de décodage simple, la validation normale peut être effectuée très facilement.

Exécutez le script.

$ bash checkValidity.sh

Résultat:

Conclusion:

Pour toute sensibilité les données telles que le mot de passe ou toute donnée confidentielle, le système dencodage et de décodage ne conviennent pas du tout. Vous devez utiliser un système de cryptage et de décryptage pour sécuriser ce type de données.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *