Base64エンコードとは?仕組みと使い方をわかりやすく解説
Web開発やAPI連携の現場で頻繁に登場する「Base64」。メール添付やデータURIなど、あらゆる場面で使われています。本記事ではBase64の仕組みを基礎から解説し、本サイトでの実践的な使い方を紹介します。
Base64とは何か?
Base64は、バイナリデータ(画像・ファイルなど)をASCII文字列に変換するエンコード方式です。A-Z、a-z、0-9、+、/ の64種類の文字だけを使ってデータを表現します。
例えば、Hello をBase64エンコードすると:
SGVsbG8=
末尾の = はパディング文字で、データ長の調整に使われます。
Base64は何に使われているか?
Base64は、テキストしか扱えない環境でバイナリデータを安全に送受信するために広く使われています。
- メール添付ファイル — MIME形式でバイナリファイルをテキストとして送信
- HTMLへの画像埋め込み — Data URIスキームで小さな画像をHTML/CSSに直接埋め込み
- API通信 — JSONペイロードにバイナリデータを含める
- Basic認証 — HTTPヘッダーでユーザー名とパスワードをエンコード
- Cookie・トークン — JWTなどのトークン形式でデータを安全にエンコード
Base64を使うメリットと必要性
多くのプロトコル(メール、JSON、HTMLなど)はテキストベースで、バイナリデータをそのまま扱えません。Base64でテキストに変換することで:
-
メール添付: MIME形式でバイナリファイルを安全に送信
-
データURI:
<img src="data:image/png;base64,...">で画像を直接HTMLに埋め込み -
API通信: JSONにバイナリデータを含めて送信
-
認証: Basic認証ヘッダーの資格情報エンコード
-
安全なデータ転送 — バイナリデータの破損を防ぐ
-
プロトコル互換性 — テキストベースの通信路でバイナリを扱える
-
追加リクエスト不要 — 小さな画像をHTMLに直接埋め込める
Base64変換を行うには
Base64のエンコード・デコードは 本サイトの「Base64エンコーダー / デコーダー」で簡単に行えます。すべての処理はブラウザ内で完結し、入力データが外部サーバーへ送信されることはありません。登録不要・完全無料でご利用いただけます。
ツールの使い方
- Base64エンコーダー / デコーダーを開く
- 「エンコード」または「デコード」モードを選択する
- テキストを入力する(またはファイルをドロップ)
- 変換結果がリアルタイムで表示される
よくある質問
Q. Base64はデータを暗号化しますか?
A. いいえ。Base64はエンコード(変換)であり、暗号化ではありません。誰でも簡単にデコードできるため、パスワードや機密情報の保護には暗号化を使用してください。
Q. Base64にするとデータサイズはどうなりますか?
A. Base64エンコードすると、元のデータの約1.33倍(約33%増)のサイズになります。大きなファイルの転送にはBase64ではなく、直接バイナリで転送する方が効率的です。
Q. Base64はURLにそのまま使えますか?
A. 標準のBase64には + や / が含まれるため、URLのパスやパラメータではエスコープが必要になることがあります。URL向けの「Base64URL」という方式では、+ を -、/ を _ に置き換え、パディングの = を省略するため、URLにそのまま安全に使用できます。
関連用語
- Base64 — 64種類の文字を使ったバイナリ→テキスト変換方式
- エンコード — データをある形式から別の形式に変換すること
- デコード — エンコードされたデータを元の形式に戻すこと
- MIME — メールでのマルチメディアデータ送信の標準規格