Base64エンコーダー/デコーダーとは?

Base64エンコーダー/デコーダーは、テキストとBase64エンコーディング間の変換を即座に行います。HTML/CSSへの画像埋め込み、メール添付ファイルのエンコード、バイナリデータのテキスト転送、API認証トークンの処理など、すべてお使いのデバイス上でプライベートに処理されます。

エンコードは標準 Base64 (RFC 4648) に従い、入力 3 バイトを A-Z, a-z, 0-9, +, / の ASCII 4 文字に変換し、末尾を = でパディングします。UTF-8 を正しく扱い(マルチバイト文字も往復で消えません)、最大 5 MB のファイルを受け付けて HTML・CSS・JSON にそのまま貼れる data: URI を返します。

使い方

  1. 入力エリアに平文テキストを貼り付けるか入力してBase64にエンコード、またはBase64文字列を貼り付けてデコードします。
  2. 方向切り替えスイッチでエンコードモードとデコードモードを切り替えます。
  3. ワンクリックで結果をコピーして、コード、メール、設定ファイルにすぐ貼り付けられます。

使用するタイミング

  • Basic Auth のスペース以降にある user:pass トークンをデコードして確認する。
  • 小さなアイコンやフォントを data URI で HTML や CSS に直接埋め込む。
  • 署名・証明書・画像バイトなど バイナリデータを JSON や YAML に乗せるために包む。

結果

「Hello, World!」をエンコード →「SGVsbG8sIFdvcmxkIQ==」としてJSONペイロードに埋め込み可能。「dXNlcjpwYXNz」をデコード →「user:pass」でBasic認証ヘッダーの中身を確認できます。

よくある質問

エンコード後の出力が元より長くなるのはなぜ?
Base64 は 3 バイトを 4 文字に変換するので、出力は約 33% 大きくなります。300 KB の画像なら 400 KB 程度のテキスト + data URI のプレフィックスです。テキスト経由で運ぶための代償です。
Base64 は暗号化や圧縮の一種ですか?
どちらでもありません。エンコードに過ぎず、鍵なしで誰でも一瞬で復号できます。バイナリをテキストで安全に運ぶための仕組みで、秘密を隠す用途には使えません。出力は元より小さくなることはありません。
「Base64 が無効」と出てデコードできないのはなぜ?
ほとんどの場合、文字が足りないか余分です。末尾の = が削られた、URL-safe 版(+ と / が - と _ になっている)、改行が混入した、などです。末尾の = まで含めてもう一度コピーし直してください。
PNG や PDF などのバイナリファイルもエンコードできますか?
できます。ファイル選択から 5 MB までアップロードでき、バイトとして読み込まれて data:image/png;base64,... の data URI として出力されます。<img> タグや CSS の background-image にそのまま貼れます。
Python や Node の base64 と出力は同じですか?
標準 Base64 なら完全に一致します。Python の base64.b64encode、Node の Buffer.from(str).toString('base64') と同じ結果です。送り先が URL-safe 版を要求する場合は、後で + を - に、/ を _ に置換してください。

関連ツール