Base64 エンコーダー / デコーダー

テキストをBase64にエンコード、またはBase64をテキストにデコード — ブラウザ内で完結、サーバー不要。

即座に結果表示 ブラウザで動作

Base64アルファベット

A–Z  → 0–25
a–z  → 26–51
0–9  → 52–61
+    → 62
/    → 63
=    → padding

Base64はA–Z、a–z、0–9、+、/を使用します。パディング文字=が出力を4の倍数に揃えます。

使い方は?

  1. 1
    テキストを入力エンコードしたいテキストを上のフィールドに貼り付けるか入力します。
  2. 2
    エンコードまたはデコード「エンコード」でBase64出力、「デコード」で元のテキストを復元します。
  3. 3
    コピー結果をクリップボードにコピー、または「入れ替え」で出力を入力として再利用。

よくある質問

Base64はどこで使われますか?
JWTトークン、HTTP Basic認証、メール添付(MIME)、CSS data URI、REST APIでバイナリデータをテキストとして転送する際に使用されます。
Base64は暗号化ですか?
いいえ。Base64はエンコード(符号化)であり、暗号化ではありません。鍵なしで誰でもデコードできます。真のセキュリティにはAESやRSAを使用してください。
末尾の=は何ですか?
Base64は3バイト単位でデータを処理します。最後のグループが不完全な場合、パディング文字=が追加されます(1または2個)。

Base64とは?

Base64は、バイナリデータを印刷可能なASCII文字に変換するエンコード方式です。RFC 4648で定義されており、現代のインターネットプロトコルの根幹をなしています。名前は64文字のアルファベットに由来します:大文字(A–Z)、小文字(a–z)、数字(0–9)、特殊文字(+と/)。3バイトの生データが4文字のBase64に変換されるため、データサイズは約33%増加します。

仕組み

入力データは3バイト(24ビット)のブロックに分割されます。各ブロックは4つの6ビットグループに分けられ、各グループはBase64文字(値0–63)に置き換えられます。最後のブロックが不完全な場合、=パディング文字が追加されます。

主な用途

JWTトークン

JSON Web Tokenは3つのBase64URLエンコードされた部分で構成されます:ヘッダー、ペイロード、署名。URL安全な変種は+を-、/を_に置換し、URLで追加エンコードなしに使用できます。多くの開発者がBase64デコーダーでJWTの内容を確認します。

HTTP Basic認証

HTTP Basic認証はユーザー名とパスワードを(:で結合して)Base64エンコードし、Authorizationヘッダーに送信します。これは暗号化ではありません—HTTPSなしでは認証情報が読み取られます。

メール添付(MIME)

SMTPはASCIIテキストしか転送できません。MIME標準は添付ファイルをBase64エンコードしてメールサーバー経由で転送できるようにします。PDFや画像などのメール添付はこの仕組みで送られます。

CSS data URI

小さな画像やSVGアイコンを直接CSSに埋め込めます:background: url('data:image/png;base64,...')。追加のHTTPリクエストを削減できます。

REST APIとデータベース

JSONはテキストデータしか転送できません。そのため、画像やバイナリデータはAPIリクエストのボディでBase64エンコードされます。多くのクラウドサービスがファイルアップロードにBase64を要求します。

Base64 ≠ 暗号化

Base64はセキュリティ技術ではありません。誰でも数秒でデコードできます。パスワードや個人情報をBase64のみで保存することは深刻なセキュリティ脆弱性です。機密データの保護にはAES-256またはRSAを使用してください。

URL安全なBase64(Base64URL)

RFC 4648 §5はBase64URLを定義します:+が-に、/が_になります。OAuth 2.0 PKCE、JWT、現代のAPIに不可欠です。

プライバシー

このツールはすべての処理をブラウザ内で行います。データはサーバーに送信されません。

コメント