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.
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.
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.
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.
Sortie:
Les commandes suivantes encoderont le contenu du fichier sample.txt et lenregistreront le texte encodé dans le fichier 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
Sortie:
Les commandes suivantes vont décoder le contenu du fichier encodedData.txt et stocker le contenu décodé dans le fichier, 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.
echo « Entrez du texte à encoder »
lire le texte
etext = `echo -n $ text | base64`
echo « Le texte encodé est: $ etext »
Exécutez le script.
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.
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.