コマンドプロンプトでBase64のエンコード・デコードを行う

toc目次

はじめに

コマンドプロンプトでBase64のエンコード・デコードを行う方法のメモです。

Base64とは

Base64は、バイナリデータをテキスト形式に変換するエンコード方式です。

Base64では、データを64種類の印字可能なASCII文字(大文字A-Z、小文字a-z、数字0-9、記号+/)とパディング(=)で表現します。

Base64でエンコードを行う

certutilコマンドを使用することでBase64エンコードを行うことができます。

certutil -encode -f {入力ファイル} {出力ファイル}

画像ファイル(sample.png)をエンコードし、base64.txtに出力する例

> certutil -encode -f sample.png base64.txt
入力長 = 178
出力長 = 304
CertUtil: -encode コマンドは正常に完了しました。

出力されるファイル(※文字コードはUTF-8

-----BEGIN CERTIFICATE-----
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQAgMAAABinRfyAAAADFBMVEX///9obxL8
ABn/pgDvOfD0AAAAAXRSTlMAQObYZgAAAFRJREFUCNdjYNBawMDAsGpVAwND+B0G
Bsb79w8wMF7//oGBsf6qAwOD/X+gbGQAUCIy1YGBNWppAAN/3s4PDPyvVgOJVas+
MDCs0ALKBrACZQNYAwDrzBf+G7U1DAAAAABJRU5ErkJggg==
-----END CERTIFICATE-----

Base64でデコードを行う

エンコードと同様に、certutilコマンドを使用することでBase64デコードを行うことができます。

certutil -decode -f {入力ファイル} {出力ファイル}

Base64でエンコードしたファイル(base64.txt)をデコードし、sample2.pngに出力する例

> certutil -decode base64.txt sample2.png
入力長 = 304
出力長 = 178
CertUtil: -decode コマンドは正常に完了しました。

デコードしたファイル(sample2.png)は元の画像ファイル(sample.png)と同じ画像となります。