À propos du décodage et de l'encodage de Base64 utilisé dans le monde du Web. Il est également utilisé dans CTF (Capture The Flag), je l'ai donc résumé brièvement.
Utilisez la commande base64
.
$ echo -n 'base64 encode' | base64
YmFzZTY0IGVuY29kZQ==
L'option -i
lit une chaîne dans un fichier et l'encode.
Utilisez l'option -o
pour écrire le résultat dans un fichier.
$ base64 -i input.txt -o output.txt
Contenu de input.txt
base64 encode
Contenu de output.txt
YmFzZTY0IGVuY29kZQ==
Ajoutez l'option -D
(pour Mac).
Pour Linux, ce sera -d
(inférieur).
# Mac
$ echo 'YmFzZTY0IGVuY29kZQ==' | base64 -D
base64 encode
# Linux
$ echo 'YmFzZTY0IGVuY29kZQ==' | base64 -d
base64 encode
Comme pour le codage, les options -i
et -o
sont valides.
Python
Python2
>>> s = 'base64 encode'
>>> s.encode('base64')
'YmFzZTY0IGVuY29kZQ==\n'
>>> s = 'YmFzZTY0IGVuY29kZQ=='
>>> s.decode('base64')
'base64 encode'
Python3
Utilisez le module base64, qui est une bibliothèque standard.
Utilisez la méthode base64.b64encode ()
.
>>> import base64
>>> s = 'base64 encode'
>>> base64.b64encode(s.encode('utf-8'))
b'YmFzZTY0IGVuY29kZQ=='
Utilisez la méthode base64.b64decode ()
.
>>> import base64
>>> encoded = b'YmFzZTY0IGVuY29kZQ=='
>>> base64.b64decode(encoded)
b'base64 encode'
Notez que les deux méthodes sont des objets octets pour les arguments et les valeurs de retour.