En fait, Windows dispose d'un utilitaire qui encode et décode la base64 - CERTUTIL.
Je ne suis pas sûr de la version de Windows qui a introduit cette commande.
Pour encoder un fichier :
certutil -encode inputFileName encodedOutputFileName
Pour décoder un fichier :
certutil -decode encodedInputFileName decodedOutputFileName
Il existe un certain nombre de verbes et d'options disponibles pour CERTUTIL.
Pour obtenir une liste de presque tous les verbes disponibles :
certutil -?
Pour obtenir de l'aide sur un verbe particulier (-encode par exemple) :
certutil -encode -?
Pour obtenir une aide complète pour presque tous les verbes :
certutil -v -?
Mystérieusement, le -encodehex
Le verbe n'est pas répertorié avec certutil -?
o certutil -v -?
. Mais il est décrit en utilisant certutil -encodehex -?
. C'est une autre fonction pratique :-)
Mise à jour
En ce qui concerne le commentaire de David Morales, il existe une option de type mal documentée à la -encodehex
verbe qui permet de créer des chaînes de caractères en base64 sans lignes d'en-tête ou de pied de page.
certutil [Options] -encodehex inFile outFile [type]
Un type de 1 donnera la base64 sans les lignes d'en-tête ou de pied de page.
Voir https://www.dostips.com/forum/viewtopic.php?f=3&t=8521#p56536 pour une brève liste des formats de type disponibles. Et pour un examen plus approfondi des formats disponibles, voir https://www.dostips.com/forum/viewtopic.php?f=3&t=8521#p57918 .
Non enquêté, mais le -decodehex
Le verbe a également un argument de type optionnel.