W rzeczywistości system Windows ma narzędzie, które koduje i dekoduje base64 - CERTUTIL
Nie jestem pewien, która wersja systemu Windows wprowadziła to polecenie.
Aby zakodować plik:
certutil -encode inputFileName encodedOutputFileName
Aby zdekodować plik:
certutil -decode encodedInputFileName decodedOutputFileName
Istnieje wiele dostępnych czasowników i opcji dostępnych dla CERTUTIL.
Aby uzyskać listę prawie wszystkich dostępnych czasowników:
certutil -?
Aby uzyskać pomoc dotyczącą konkretnego czasownika (na przykład -encode):
certutil -encode -?
Aby uzyskać pełną pomoc dotyczącą prawie wszystkich czasowników:
certutil -v -?
Co tajemnicze, -encodehexczasownik nie jest wymieniony z certutil -?lub certutil -v -?. Ale jest to opisane za pomocą certutil -encodehex -?. To kolejna przydatna funkcja :-)
Aktualizacja
Jeśli chodzi o komentarz Davida Moralesa, istnieje słabo udokumentowana opcja typu dla -encodehexczasownika, która pozwala na tworzenie ciągów base64 bez linii nagłówka lub stopki.
certutil [Options] -encodehex inFile outFile [type]
Typ 1 zwróci base64 bez linii nagłówka lub stopki.
Zobacz https://www.dostips.com/forum/viewtopic.php?f=3&t=8521#p56536, aby zapoznać się z krótką listą dostępnych formatów typów. Bardziej szczegółowe informacje na temat dostępnych formatów można znaleźć na stronie https://www.dostips.com/forum/viewtopic.php?f=3&t=8521#p57918 .
Nie zbadano, ale -decodehexczasownik ma również opcjonalny argument typu końcowego.