Base64エンコード・デコードツール

テキストをBase64形式へ変換、またはBase64文字列を元のテキストへ復元します。日本語・絵文字を含む文章やURLセーフ形式、データURIの貼り付けにも対応します。処理はすべてブラウザ内で完結し、入力内容がサーバーへ送信されることはありません。

QVJJU1RBIOeEoeaWmVdlYuODhOODvOODq+mbhuOBuOOCiOOBhuOBk+OBne+8gfCfjok=
この結果を共有
このツールを共有

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

  1. モードを選ぶ

    「エンコード」か「デコード」を切り替えます。エンコードはテキストをBase64へ、デコードはBase64を元のテキストへ戻します。

  2. 必要ならURLセーフ形式を有効にする

    生成したBase64をURLやファイル名にそのまま使う場合は「URLセーフ形式」にチェックを入れます。+ / が - _ に置き換わり、末尾の = も省かれます。

  3. テキストを入力する

    入力欄に貼り付けると即座に結果が表示されます。デコード時は data:image/png;base64,... のようなデータURIをそのまま貼り付けても、プレフィックスを自動的に取り除いて処理します。

仕組みと考え方

Base64は、任意のバイト列を英数字と記号(+ / =、または URLセーフでは - _)だけの文字列へ変換する符号化方式です。本ツールはブラウザ標準の btoa() / atob() を使いますが、これらは1バイトずつの文字列しか扱えないため、日本語や絵文字を含むテキストはまず TextEncoder で UTF-8 のバイト列に変換してから渡しています。この変換を行わないと、日本語を含む文字列でエラーになります。

「URLセーフ形式」は、標準のBase64が使う + と / をそれぞれ - と _ に置き換え、末尾の埋め草文字(パディング)である = を省略したものです。URLのクエリパラメータやファイル名、Cookieの値など、+ / = が特別な意味を持つ場所でBase64を使う際に必要になります。デコード時は、この変換を逆にたどり、必要な長さになるよう = を補ってから元のアルゴリズムでデコードします。

デコード結果をテキストとして表示する際は、UTF-8として正しく解釈できるかを厳密にチェックしています(不正なバイト列は文字化けとして黙って表示せず、エラーとして知らせます)。画像や音声など、テキストではないデータをBase64にした文字列は、デコードしてもテキストとしては表示できません。

使いどころ・注意点

  • Base64は暗号化ではない。誰でも同じ手順でデコードして元の内容を読めるため、秘匿したい情報の保護には使えない。
  • メールの添付ファイル(MIME)やAPIのBasic認証ヘッダーなど、テキストしか扱えない仕組みにバイナリデータを埋め込む用途で使われることが多い。
  • 画像をBase64にすると、元のバイト数よりおよそ33%大きくなる。ページの読み込み速度が気になる場合は、通常のファイル配信と使い分ける。
  • URLやHTML属性の値として使う場合はURLセーフ形式を選ぶ。標準形式のままだと + や / が意図しない形で解釈されることがある。

よくある質問

入力したテキストは保存・送信されますか?

いいえ。エンコード・デコードともにブラウザ内のJavaScriptだけで処理し、当サイトのサーバーへは送信していません。

デコードすると文字化けします。

URLセーフ形式で作られたBase64を「URLセーフ形式」のチェックを外した状態でデコードしようとしている可能性があります。作成時と同じ形式を選んでデコードしてください。

画像ファイルをBase64にできますか?

本ツールはテキストの変換に対応しています。画像などのバイナリファイルをBase64にしたい場合は専用の画像変換手段が必要です。すでにdata:image/...;base64,... の形式で入力欄に貼り付けられたBase64部分をデコードすることはできますが、結果は画像データのバイト列であり、そのままテキストとしては表示できません。

パディング(=)は必要ですか?

標準形式では必要です。URLセーフ形式では省略されることが多く、本ツールのデコードは両方(パディングあり・なし)に対応しています。

Base64を使えば安全にデータを送れますか?

いいえ。Base64は符号化であって暗号化ではありません。誰でも同じ手順でデコードできるため、機密情報の保護にはHTTPSや適切な暗号化方式を使ってください。

ほかの無料ツールも見る

文字数カウント

文字数(空白含む/除く)・バイト数・行数・単語数・原稿用紙の枚数・段落数・文の数・読了時間・文字種別の内訳を入力と同時に集計します。

文字列変換

大文字↔小文字、全角↔半角、ひらがな↔カタカナ、HTMLエスケープ、改行コード変換をまとめて行います。

テキスト差分(diff)

2つの文章を並べて比較し、追加・削除された行と文字を色分けして表示します。

重複削除・並べ替え

行単位の重複行の削除、五十音・英数字順の並べ替え、空行削除、行番号の付与を行います。

Markdownプレビュー

Markdown記法をその場でプレビューし、見出し・表・コードブロックの見え方を確認できます。

くじ引き・抽選

名前や景品を1行に1件ずつ貼り付けるだけで、暗号学的に安全な乱数で当選者を重複なく選びます。

JSON整形・検証

JSONの整形(インデント付与)・圧縮・構文エラー箇所の特定を行います。値が変わる箇所も警告します。

CSV⇔JSON変換

CSV・TSVをJSON配列へ、JSON配列をCSVへ相互変換します。引用符や改行を含むセルにも対応します。

URLエンコード・デコード

URLのパーセントエンコードと復元を行い、クエリパラメータを一覧で分解して確認できます。

正規表現テスト

正規表現のマッチ結果をハイライト表示し、キャプチャグループや置換結果をその場で確認できます。

ダミーデータ生成

氏名・住所・メールアドレス・電話番号などの架空のテストデータをCSV/JSONで一括生成します。

パスワード生成

文字種・文字数を指定して、暗号学的に安全な乱数で強力なパスワードを生成します。

ハッシュ生成

テキストやファイルからSHA-256・SHA-512・SHA-1・MD5のハッシュ値(チェックサム)を計算します。

JWTデコード

JWT(JSON Web Token)のヘッダー・ペイロードを復号して表示し、有効期限の切れを判定します。

セキュリティヘッダー簡易チェック

公開WebサイトのURLを指定し、代表的なセキュリティヘッダーの設定有無を確認します。

QRコード生成

URL・Wi-Fi・連絡先・メール・SMSのQRコードをその場で作成し、PNG/SVGでダウンロードできます。誤り訂正レベルと配色も選べます。

画像リサイズ・圧縮

画像の縦横サイズ変更・圧縮・形式変換(JPEG/PNG/WebP)をブラウザ内だけで行います。

カラーコード変換

HEX・RGB・HSLを相互変換し、背景色と文字色のコントラスト比(WCAG判定)も確認できます。

Unix時間変換

Unixタイムスタンプと日時を相互変換します。秒・ミリ秒、日本時間・UTCの両方に対応します。

UUID生成

UUID v4(完全ランダム)とUUID v7(時刻順)を、暗号学的に安全な乱数でまとめて生成します。