Base64とは
Base64は、画像などのバイナリデータを英数字と記号64種類だけのテキストで表現する変換方式です。メール添付(MIME)、画像のインライン埋め込み(Data URI)、APIでのバイナリ受け渡し、Basic認証など、「テキストしか扱えない場所にバイナリを通す」ために広く使われています。変換後のサイズは元の約1.33倍になります。
日本語のBase64で文字化けする理由
Base64はバイト列を変換するだけで、文字コードの情報を持ちません。「こんにちは」をUTF-8のバイト列としてエンコードした結果と、Shift-JISとしてエンコードした結果はまったく別の文字列になります。デコード時に違う文字コードで解釈すれば当然文字化けします。システム間でBase64をやり取りするときは、「何の文字コードのバイト列か」を必ず取り決めてください。このツールはWeb標準のUTF-8で処理します。
Base64は暗号化ではない
見た目がランダムな文字列になるため誤解されがちですが、Base64は誰でも1秒で元に戻せる単なる表現形式です。APIキーやパスワードをBase64にして「隠した」つもりになっているコードは実務でも頻繁に見かけますが、秘匿効果はゼロです。機密情報には適切な暗号化やシークレット管理を使ってください。