入力

IN
入力
0 文字

出力

OUT
出力
0 文字

Base64エンコードについて

Base64は、バイナリデータをASCII文字列として表すためのバイナリからテキストへのエンコード方式です。メール添付、HTML/CSSへの画像埋め込み、APIでのデータ送信など、テキストとして扱う必要があるデータの保存や転送によく使われます。

リアルタイムエンコード/デコード
複数のエクスポート形式
入力と出力を簡単に入れ替え
ライブ統計表示

Base64エンコード & デコード完全ガイド

無料オンラインBase64エンコーダー & デコーダー

Base64文字列を無料でオンライン変換できます。テキストをBase64へエンコードしたり、Base64をプレーンテキストへすぐにデコードできます。API、データ送信、メール添付、HTML/CSS埋め込み、安全なデータ転送を扱う開発者に最適です。

主な機能

🔐 Base64へエンコード

  • プレーンテキストをBase64へ変換
  • 入力中にリアルタイム変換
  • 任意のテキスト入力に対応
  • 特殊文字を処理
  • UTF-8エンコードに対応

🔓 Base64からデコード

  • Base64をプレーンテキストへ復元
  • 即時検証
  • エラー検出
  • 無効な文字を警告
  • 形式を自動判定

リアルタイム処理

  • 入力に合わせて自動変換
  • 性能のため300msの遅延処理
  • 手動ボタン不要
  • 即時フィードバック
  • 文字数をライブ表示

📊 統計

  • 入力文字数
  • 出力文字数
  • サイズ比率
  • リアルタイム更新
  • エンコード効率の確認

💾 エクスポートオプション

  • .txtファイルとしてダウンロード
  • .htmlファイルとして出力
  • .json形式で保存
  • ワンクリックでコピー
  • 複数形式に対応

🔄 便利機能

  • 入力と出力を即時入れ替え
  • サンプルテキスト
  • 全消去ボタン
  • エンコード/デコード切り替え
  • ダークモード対応

このBase64ツールを使う理由

100%無料・無制限: 登録、サブスクリプション、サイズ制限なしでテキストをエンコード・デコードできます。

完全なプライバシー: すべての変換はJavaScriptを使ってブラウザー内で行われます。データはサーバーへアップロードされず、保存もされません。

即時処理: 入力または貼り付けと同時に、リアルタイムでエンコード・デコードします。

開発者に便利: 入れ替え、サンプルデータ、複数の出力形式、ライブ統計など、開発作業向けの機能を備えています。

エラー検出: デコード時にBase64文字列を自動検証し、無効な入力には分かりやすいエラーを表示します。

モバイル対応: デスクトップ、タブレット、スマートフォンで快適に使えるレスポンシブ設計です。

Base64へエンコードする方法

  1. エンコードモードを選択: エンコードボタンをクリックしてエンコードモードへ切り替えます。
  2. テキストを入力: 入力欄にプレーンテキストを貼り付けるか入力します。
  3. 自動エンコード: 入力中にツールがリアルタイムでBase64へ変換します。
  4. 出力を確認: 出力欄でBase64エンコード結果と文字数を確認します。
  5. コピーまたはダウンロード: コピーするか、TXT、HTML、JSONファイルとして保存します。

Base64をデコードする方法

  1. デコードモードを選択: デコードボタンをクリックしてデコードモードへ切り替えます。
  2. Base64文字列を貼り付け: 入力欄にBase64エンコード済み文字列を貼り付けます。
  3. 自動デコード: ツールがBase64文字列を自動で検証し、デコードします。
  4. エラーを確認: Base64が無効な場合は、問題を説明するエラーメッセージが表示されます。
  5. デコード結果を使用: 復元されたテキストをコピーするか、好みの形式でダウンロードします。

Base64エンコードとは?

Base64は、64種類のASCII文字 (A-Z、a-z、0-9、+、/) を使ってバイナリデータをテキスト形式に変換する方式です。メール、URL、HTML、CSS、JSON、XMLなど、テキストのみを扱う経路でデータを安全に送るために設計されています。

Base64の文字セット:

大文字: A-Z (インデックス0-25)

小文字: a-z (インデックス26-51)

数字: 0-9 (インデックス52-61)

特殊文字: + (インデックス62)、/ (インデックス63)

パディング文字: = (末尾の長さ調整に使用)

Base64の一般的な用途

メール添付: 画像、PDF、文書などのバイナリファイルをBase64テキストとしてエンコードし、メールプロトコル (MIME) で安全に送信します。

HTML/CSSへの画像埋め込み: 画像をBase64 data URIとしてHTMLやCSSに直接埋め込み、小さな画像やアイコンのHTTPリクエストを減らせます。

APIデータ転送: バイナリデータ、認証情報、トークンなどをREST API、Webhook、Webサービスで送信するためにエンコードします。

JSONデータ: JSONはテキストのみを扱うため、画像、ファイル、暗号鍵などのバイナリデータをBase64で含めることができます。

URLパラメータ: 複雑なデータ構造をURL内で扱いやすくするためにBase64化できます。ただしURLではBase64URL形式が適する場合があります。

データベース保存: バイナリ保存に制限がある場合、テキスト型フィールドへバイナリデータを格納する用途に使えます。

設定ファイル: YAML、JSON、XMLなどテキストのみの設定ファイル内に、パスワード、鍵、証明書などを表現する際に使われます。

こんな人に最適

  • 画像を埋め込むWeb開発者
  • API開発者・連携担当者
  • バックエンド開発者
  • DevOpsエンジニア
  • メールシステム管理者
  • データベース管理者
  • セキュリティ担当者
  • データアナリスト
  • QAテスター
  • システム連携担当者
  • エンコードを学ぶ学生
  • 技術ライター

Base64と他のエンコード方式

Base64 vs 16進エンコード: Base64は16進数よりコンパクトです。16進数は約100%増加しますが、Base64は通常約33%の増加で済むため、大きなデータでは効率的です。

Base64 vs URLエンコード: URLエンコードはURL向けに特殊文字を%XX形式へ変換します。Base64はデータ全体をテキスト化するため、バイナリデータに向きますが、URLではBase64URL形式が必要になることがあります。

Base64 vs 暗号化: Base64は暗号化ではありません。誰でもデコードできます。安全性が必要な場合はAESやRSAなどで暗号化してから、必要に応じてBase64化してください。

サイズ増加の理解

サイズの増加: Base64エンコードではデータサイズが約33%増加します。入力3バイトごとにBase64は4バイト分の出力を生成します。

なぜ増えるのか: Base64は1文字あたり6ビットを使います。3つの8ビットバイト (24ビット) が4つの6ビットBase64文字になりますが、保存時には各文字に8ビットが必要です。

例: "Hello" (5バイト) は "SGVsbG8=" (8バイト) になります。大きな入力ほど理論上の約33%増加に近づきます。

Base64のプロTips

  • セキュリティ用途ではない: Base64はエンコードであり暗号化ではありません。機密情報を隠す目的では使わないでください。
  • パディングを確認: 有効なBase64文字列は末尾の=など正しいパディングを持つ必要があります。
  • サイズに注意: Base64はサイズが約33%増えます。大きなファイルでは圧縮やバイナリ転送も検討しましょう。
  • 空白を削除: デコード時は改行、スペース、タブなどの空白を取り除くと問題を避けやすくなります。
  • Data URIを使う: 小さな画像はBase64 data URIとしてHTML/CSSに埋め込むとHTTPリクエストを減らせます。
  • URL安全なBase64: URLに含める場合は + を -、/ を _ に置き換えるBase64URL形式を使います。
  • 使用前に検証: ユーザー入力のBase64データは、利用前に必ず検証しましょう。
  • 圧縮してからエンコード: 大きなテキストはgzipなどで圧縮してからBase64化すると効率が良くなります。
  • 入れ替え機能を使う: 入力と出力を入れ替えると、エンコードとデコードを素早く切り替えられます。

Base64の主な利用例

HTTP認証: Basic HTTP認証では username:password をBase64化してAuthorizationヘッダーに含めます。ただしHTTPSを必ず使うべきです。

JWTトークン: JSON Web Token (JWT) はヘッダーとペイロードにBase64URLエンコードを使います。

インライン画像: Base64 data URIを使うと、画像をHTML/CSSに直接埋め込めます。

メールエンコード: MIMEはメール添付やヘッダー内の非ASCII文字を扱うためにBase64を使用します。

XML/SOAP: Base64により、XML構文を壊さずにバイナリデータをXML文書やSOAPメッセージへ含められます。

ベストプラクティス

  • 常にHTTPSを使う: Base64化した機密データを送信する場合は、必ずHTTPS/TLSで通信を保護してください。
  • 入力サイズを検証: 非常に大きな入力によるメモリ問題を避けるため、適切なサイズ制限を設けましょう。
  • エラーを丁寧に扱う: 無効なBase64文字列でアプリが停止しないよう、適切なエラーハンドリングを行います。
  • 用途を文書化: コードベース内でBase64を使う理由と場所を明確に文書化しましょう。
  • 代替手段も検討: 現代的なWebアプリでは、可能ならWebSocketやgRPCなどのバイナリプロトコルも検討します。
  • 結果をキャッシュ: 同じデータを繰り返しエンコードする場合は、Base64結果をキャッシュすると効率的です。
  • 境界ケースをテスト: 空文字、特殊文字、Unicode、長い入力でも正しく動作するか確認しましょう。

よくあるエラーの対処

"Invalid character" エラー: 入力にBase64の文字セット (A-Z、a-z、0-9、+、/、=) 以外の文字が含まれています。無効な文字を削除または置換してください。

"Invalid string length" エラー: Base64文字列の長さは4の倍数である必要があります。パディング (=) の不足や文字列の欠落を確認してください。

文字化けした出力: デコード後の文字がおかしい場合、元データがUTF-8でエンコードされていたか確認してください。

Base64内の改行: システムによっては読みやすさのため改行を追加します。デコード前に空白や改行を削除してください。

🔒 100%プライバシー保証

Base64のエンコードとデコードはすべてJavaScriptを使ってブラウザー内で実行されます。データが当サイトのサーバーへアップロード、保存、記録、第三者送信されることはありません。すべて端末上で処理され、機密情報のプライバシーと安全性を守ります。

Base64についてもっと学ぶ

Base64エンコードの仕組みを詳しく知りたいですか?アルゴリズム、パディング規則、data URIやメール添付の用途、使うべきでない場面を解説したガイドをご覧ください。

読む: Base64とは?