Base64エンコード
Base64エンコード・デコード
入力
結果
Base64ってそもそも何?
Base64は、バイナリデータ(画像やファイルなど)をテキスト形式に変換するエンコード方式です。メールの添付ファイル、Webページへの画像埋め込み、APIの認証トークンなど、開発の現場では頻繁に登場します。
Base64にするとサイズは増える?
はい、元データに比べて約33%大きくなります。3バイトのデータを4文字のASCII文字で表すので、どうしてもサイズが膨らむんですよね。小さなアイコンをHTMLに埋め込むくらいなら問題ありませんが、大きなファイルには向いていません。
Base64の仕組みをわかりやすく解説
Base64は3バイト(24ビット)のデータを6ビットずつ4つに分け、それぞれをA-Z、a-z、0-9、+、/の64種類の文字に変換します。データの長さが3の倍数にならない場合は、末尾に「=」が付きます。この仕組みのおかげで、バイナリデータをテキストとして安全にやり取りできるわけです。開発者なら一度は見たことがあるあの長い文字列の正体がこれですね。
Base64はどんな場面で使われる?
メール(MIME)では添付ファイルをテキストとして送るためにBase64が必須です。Web開発ではdata URIスキームを使って、CSSやHTMLに小さなアイコンを直接埋め込むことができます。API認証のBasic Authヘッダーでは、ユーザー名とパスワードをBase64でエンコードして送信するのが定番ですね。JSONやXMLなどテキスト形式の中にバイナリデータを含めたいときにも欠かせません。
Base64と他のエンコーディング、どう使い分ける?
Base64はサイズが33%増えますが、対応環境が幅広く安全性も高いです。Base32はオーバーヘッドが60%と大きいですが、大文字小文字を区別しないので特定の環境では便利。Hexエンコーディングはサイズが2倍になるものの、デバッグ時にデータの中身を確認しやすいメリットがあります。URLに含める場合は、+と/を-と_に置き換えたURL-safe Base64を使いましょう。用途に合わせて選ぶのがポイントですよ。