本文へ移動
ZEKILO Dev

Base64 エンコード・デコード

テキストやファイルをBase64に変換し、Base64を元の内容に戻します。

入力はブラウザの外に出ませんRFC 4648基準日 2026.10.03

テキストまたはファイル

Escを押してからTabを押すと、入力欄から移動できます。

Base64

Base64 エンコード・デコードの使い方

  1. 1方向(エンコード・デコード)を選び、入力欄にテキストを貼り付けるか「例を入れる」を押します。ファイルは「ファイルを開く」で開くか、ドラッグ&ドロップします。
  2. 2エンコードの場合は、文字セット(標準・URL-safe)、パディング、改行を選びます。結果はすぐに変わります。
  3. 3「コピー」で結果をコピーするか、「ダウンロード」で保存します。「入れ替え」を押すと、結果が入力に移り、方向が逆になります。

Base64 エンコード・デコードのオプション

方向
エンコードはテキストやファイルをBase64に変換し、デコードはBase64を元の内容に戻します。自動判別はせず、選んだ方向のとおりに処理します。
文字セット
標準は + と / を、URL-safeは - と _ を使います。エンコードにだけ適用され、デコードはどちらの形も読み取ります。
パディング (=)
末尾を = で埋めて、文字数を4の倍数にそろえます。標準では付けるのが既定で、URL-safeを選ぶと付けないのが既定になります。
改行
なし(既定)、76文字(MIME)、64文字(PEM)から選びます。決まった文字数ごとに改行を入れます。

Base64の標準とこのツールの動作

このツールは RFC 4648 のBase64に従います。3バイト(24ビット)を6ビットずつ4つに分け、A–Z、a–z、0–9 と2つの文字(+ / または - _)で表し、バイト数が3の倍数でないときは末尾を = で埋めます。そのため、結果は元のデータより約33%長くなります。

デコードでは、空白と改行を無視し、+/ と -_ が混ざっていても読み取り、パディングがなくても受け付けます。それ以外の文字があれば、何文字目かをお知らせします。文字数を4で割った余りが1の場合はバイトを作れないため、長さのエラーとしてお知らせします。

改行オプションの76文字はMIME(RFC 2045)、64文字はPEM(RFC 7468)の1行の長さです。

Base64は暗号化ではありません

Base64は暗号化ではなく表現形式です。誰でも元に戻せます。バイナリデータを、テキストしか通せない場所(メール本文、JSON、URL、HTMLの属性)に載せるための形式であり、内容を隠す方法ではありません。HTTP Basic認証のヘッダーやJWTのペイロードもBase64にすぎないため、値を見た人は誰でも中身を読めます。

Base64 エンコード・デコードの例

  • 英字テキストのエンコード

    入力

    ZEKILO

    出力

    WkVLSUxP
  • 韓国語のエンコード(UTF-8)

    ハングル1文字はUTF-8で3バイトなので、3文字(9バイト)がBase64の12文字になります。

    入力

    제킬로

    出力

    7KCc7YKs66Gc
  • 日本語のエンコード(UTF-8)

    入力

    ゼキロ

    出力

    44K844Kt44Ot
  • パディング(=)のないBase64のデコード

    方向:デコード。末尾の = がなくても読み取ります。

    入力

    WkVLSUw

    出力

    ZEKIL
  • Base64ではない文字が混ざっている場合

    方向:デコード

    入力

    WkVLSUxP!

    出力

    9文字目の '!' はBase64の文字ではありません。

例は、このツールを検証している基準ケースの値です。

Base64 エンコード・デコードのよくある質問

入力したデータはサーバーに送信されますか?

いいえ。入力と結果はこのブラウザ内だけで処理され、保存もしません。再読み込みすると消えます。

Base64は暗号化ですか?

いいえ。Base64は暗号化ではなく表現形式です。誰でも元に戻せます。パスワードやAPIキーをBase64にしても隠したことにはなりません。秘密にする値は暗号化するか、ハッシュで保存してください。

標準とURL-safeは何が違いますか?

最後の2文字が違います。標準は + と / を、URL-safeは - と _ を使います。URL-safeはURLやファイル名にそのまま入れられ、JWTのように末尾の = パディングを付けずに使うことが多い形式です。

デコードすると、文字ではなくバイナリデータと表示されます。

デコードしたバイト列が正しいUTF-8テキストでない場合は、文字としては表示しません。代わりにバイト数、先頭64バイトのHEX、推定した形式(PNG・JPEG・GIF・PDF・ZIP)を表示し、「ファイルとしてダウンロード」で元のファイルを保存できます。

どのくらい大きなファイルまでエンコードできますか?

ファイルは10MBまではすぐに処理し、それを超えると「実行」ボタンで処理します。最大50MBまで開けます。貼り付けたテキストは1MBまではすぐに処理し、最大20MBです。大きな入力はバックグラウンドで処理するので、画面が固まりません。

処理方法・標準

  • 処理する場所:このブラウザ(お使いの端末)。送信も保存もしません。
  • 標準: RFC 4648
  • エンジン: ZEKILO Dev Base64コーデック (自社実装)
  • テキストはUTF-8のバイト列に変換してからエンコードします。
  • 「Data URLとしてコピー」はファイルをエンコードしたときに表示されます。Data URLにはオプションに関係なく、標準の文字セットとパディングを使います。
  • デコードの方向で開いたファイルは、Base64が書かれたテキストファイルとして読み取ります。
  • 基準日 2026.10.03
  • 変更履歴: 2026.10.03 公開
オープンソースライセンス →
結果がおかしい場合は、エラーを報告する(入力内容は添付されません)