本文へスキップ
ToolDesk

Base64変換

テキストを Base64 にエンコード/デコード。日本語(UTF-8)も正しく処理。

開発

このツールについて

Base64 は、画像などのバイナリデータや任意の文字列を、64 種類の安全な文字(A〜Z・a〜z・0〜9・+・/)だけで表す変換方式です。テキストしか通せない場所にバイナリを載せるための「入れ物」として広く使われています。このツールは文字列と Base64 の相互変換をブラウザ内で行い、入力内容を外部へ送信しません。

どこで使われている?

  • data URI … <img src="data:image/png;base64,..."> のように、画像を HTML/CSS に直接埋め込む。
  • メール添付 … MIME で添付ファイルを本文に載せる際の符号化。
  • Basic 認証 … ユーザー名とパスワードを Base64 にして送る(暗号化ではない点に注意)。
  • JWT … トークンのヘッダー・ペイロード部分は Base64(URL セーフ版)で表されています。

「暗号化」ではありません

よくある誤解ですが、Base64 は暗号化ではなく、単なる可逆的な符号化です。鍵は不要で、誰でも元に戻せます。見た目がランダムな文字列になるので隠したように見えますが、秘密情報の保護には一切なりません。パスワードやトークンを「Base64 にしたから安全」と考えるのは危険です。機密を守りたいなら暗号化(別の仕組み)が必要です。

URL セーフ版とパディング

標準の Base64 に含まれる + と / は、URL やファイル名では特別な意味を持つため、これらを - と _ に置き換えた「URL セーフ Base64」という変種があります。また末尾の = はパディング(長さ調整)で、実装によっては省略されることもあります。JWT やクエリ文字列で Base64 を見かけたら、この URL セーフ版であることが多いです。

サイズは約 1.33 倍になる

Base64 は 3 バイトを 4 文字で表すため、変換後のデータは元より約 33% 大きくなります。小さな画像を data URI で埋め込むと HTTP リクエストを減らせて有利ですが、大きな画像では容量が増えて逆効果になることもあるので、用途に応じて使い分けてください。

使い方

  1. 「エンコード」を選び、テキストを入力すると Base64 に変換されます。
  2. 「デコード」を選び、Base64 文字列を入力すると元のテキストに戻します。
  3. 「結果をコピー」で変換結果をコピーできます。

よくある質問

Base64 は暗号化ですか?

いいえ。Base64 は「符号化(エンコード)」であり暗号化ではありません。誰でも簡単に元へ戻せるため、パスワードや機密データの保護には使えません。

入力データはどこかに送信されますか?

いいえ。エンコード・デコードはすべてブラウザ内で完結し、入力は外部サーバーへ送信されません。

なぜ末尾に = が付くのですか?

= は「パディング」と呼ばれ、データ長を 3 バイト単位に揃えるための調整記号です。1〜2 個付くことがあり、正しい Base64 の一部です。

データサイズはどれくらい増えますか?

Base64 化するとおおよそ 4/3(約 33%)大きくなります。3 バイトが 4 文字になるためです。

URL で使える Base64(URL-safe)とは違いますか?

通常の Base64 は + と / を使いますが、URL-safe 版はそれぞれ - と _ に置き換えます。用途に応じて変換先が異なる点にご注意ください。

日本語や絵文字も変換できますか?

できます。テキストは UTF-8 として扱われ、日本語や絵文字を含む文字列も正しくエンコード・デコードされます。