Encodage - décodage Base64 sous Windows, Linux et Mac

Lorsque vous avez besoin d'encoder un fichier en base64 de manière urgente

Sommaire

Voici des exemples de comment encoder et décoder un fichier en Base64 sur Windows, Linux et Mac.

homme barbu qui fait du codage avancé la nuit

Convertir un fichier en base64 sur Windows

Pour convertir un fichier ordinaire en Base64 sur Windows, on peut utiliser les méthodes suivantes :

En utilisant l’invite de commandes avec Certutil

  1. Ouvrez l’invite de commandes.

  2. Exécutez la commande :

    certutil -encode  
    

    Remplacez par le chemin de votre fichier et par le nom de fichier de sortie souhaité (par exemple, encoded.b64).

  3. Pour afficher le contenu Base64 directement à l’écran sans sauvegarder dans un fichier temporaire :

    certutil -encode  tmp.b64 && findstr /v /c:- tmp.b64 && del tmp.b64
    

    Cela évite de laisser des fichiers temporaires en supprimant tmp.b64 après le traitement.


En utilisant PowerShell

  1. Ouvrez PowerShell.
  2. Exécutez la commande :
    [Convert]::ToBase64String([System.IO.File]::ReadAllBytes("your_file_path"))
    
    Remplacez "your_file_path" par le chemin complet de votre fichier. Cela affichera directement la chaîne Base64 dans la console.

En utilisant un script personnalisé

Si vous avez besoin de plus de flexibilité, vous pouvez utiliser un script comme ConvertTo-Base64.ps1. Il permet d’encoder des fichiers en Base64 et, le cas échéant, d’enregistrer la sortie dans un fichier ou de la formater en JSON.


Ces méthodes permettent un encodage Base64 rapide et efficace sans nécessiter d’installations supplémentaires de logiciels.

Convertir un fichier en base64 sur Linux

Pour convertir un fichier binaire en Base64 sur Linux, vous pouvez utiliser la commande base64, qui est généralement préinstallée sur la plupart des distributions Linux. Celle-ci est bien meilleure que Windows ! :)

Voici comment faire :

Syntaxe de base

base64 [OPTIONS] [FILE]

Étapes pour encoder un fichier

  1. Ouvrez un terminal.

  2. Exécutez la commande suivante :

    base64 input_file > output_file
    

    Remplacez input_file par le chemin de votre fichier et output_file par le nom du fichier dans lequel vous souhaitez enregistrer le contenu encodé en Base64.

    Exemple :

    base64 myfile.txt > encoded.txt
    
  3. Si vous souhaitez afficher le contenu encodé directement dans le terminal :

    base64 input_file
    

Drapeaux optionnels

  • -w : Envelopper les lignes après un nombre spécifié de caractères (par défaut, 76). Utilisez -w 0 pour désactiver l’enveloppement des lignes. Exemple :
    base64 -w 0 input_file > output_file
    

Décoder un fichier Base64

Pour décoder un fichier encodé en Base64 vers son format d’origine :

base64 --decode encoded_file > decoded_file

Cette méthode est efficace et fonctionne sur la plupart des distributions Linux sans nécessiter d’installations supplémentaires.

Encoder / Décoder base64 sur Mac

Celle-ci est proche de Linux mais diffère légèrement.

Pour convertir un fichier ordinaire en Base64 sur macOS, vous pouvez utiliser la commande intégrée base64. Voici comment faire :

Étapes pour encoder un fichier

  1. Ouvrez le Terminal.

  2. Exécutez la commande suivante :

    base64 -i input_file > output_file
    

    Remplacez input_file par le chemin de votre fichier et output_file par le nom du fichier dans lequel vous souhaitez enregistrer le contenu encodé en Base64.

    Exemple :

    base64 -i myfile.txt > encoded.txt
    
  3. Si vous souhaitez afficher le contenu encodé en Base64 directement dans le terminal :

    base64 -i input_file
    

Intégration avec le presse-papiers

Vous pouvez encoder un fichier et copier le résultat directement dans votre presse-papiers en utilisant :

base64 -i input_file | pbcopy

Décoder un fichier Base64

Pour décoder un fichier encodé en Base64 vers son format d’origine :

base64 -D -i encoded_file > decoded_file

Ces commandes sont efficaces et fonctionnent sur toutes les versions modernes de macOS à partir de 10.7

Liste complète des paramètres de la ligne de commande de l’outil base64

$ base64 --help

Utilisation : base64 [OPTION]... [FICHIER]
Encoder ou décoder FICHIER, ou l'entrée standard, vers la sortie standard.

Avec aucun FICHIER, ou lorsque FICHIER est -, lire l'entrée standard.

Les arguments obligatoires pour les options longues sont obligatoires pour les options courtes également.
  -d, --decode          décoder les données
  -i, --ignore-garbage  lors du décodage, ignorer les caractères non alphabétiques
  -w, --wrap=COLS       envelopper les lignes encodées après COLS caractères (par défaut 76).
                          Utiliser 0 pour désactiver l'enveloppement des lignes
      --help        afficher cette aide et quitter
      --version     afficher les informations de version et quitter

Les données sont encodées comme décrit pour l'alphabet base64 dans RFC 4648.
Lors du décodage, l'entrée peut contenir des sauts de ligne en plus des octets de l'alphabet base64 formel.
Utilisez --ignore-garbage pour tenter de récupérer à partir d'autres octets non alphabétiques dans le flux encodé.
...

Liens utiles