Base64エンコーダー/デコーダー
シェアする
使い方
- 1 テキスト → Base64の場合: 上の入力欄にテキストを入力し「エンコード」をクリック。
- 2 Base64 → テキストの場合: 下の入力欄にBase64を貼り付けて「デコード」をクリック。
- 3 「リアルタイム」チェックボックスを有効にすると、入力中に自動変換されます。
- 4 無効なBase64(=パディング不足、不正文字)はエラーメッセージで通知。日本語はUTF-8エンコード後にBase64化されます。
Base64エンコーダー/デコーダーについて
よくある質問
Q Base64と暗号化は違いますか?
全く別物です。<strong>Base64は単なるエンコード(誰でもデコード可能)</strong>、暗号化は鍵がないと解読できません。Base64はバイナリをテキスト化するだけで、機密情報の保護には全く役立ちません。パスワード保管にはbcrypt・Argon2、データ暗号化にはAES-256やRSAを使ってください。HTTP Basic認証もHTTPSなしでは平文同然です。
Q なぜサイズが約33%増えるのですか?
3バイト(24ビット)を4文字(各6ビット)に変換するため、出力が4/3倍になるからです(理論値+33.3%)。改行・パディング(=)を加えると実質+37%。例えば1MBファイルがBase64では約1.37MBに。データ転送量を抑えるため、大容量データはZIP圧縮後にBase64化、または直接バイナリで送信(HTTP multipart/form-data等)が効率的です。
Q メールでBase64が使われる理由は?
古いメールサーバーが7ビットASCII(0〜127)しか確実に転送できなかったため。バイナリ(画像・PDF・ZIP)は8ビット表現を含むため、ASCII範囲のBase64に変換してから送信。現代のメールサーバーは8bit対応していますが、互換性のためBase64エンコードが標準的に使われ続けています(RFC 2045 MIME)。
Q JWTのBase64と通常のBase64は同じ?
似ていますが別物です。JWTは<strong>Base64URL</strong>(RFC 4648 §5)を使い、<code>+</code>→<code>-</code>、<code>/</code>→<code>_</code>、末尾<code>=</code>パディング省略。URLに含めても安全な文字のみ使用。本ツールは標準Base64ですので、JWTを解析する場合は本サイトのJWTデコーダーをご利用ください。
Q Data URIで画像を埋め込む利点は?
HTTPリクエスト数を1回減らせるので、小さなアイコン(<2KB)に有効。例: <code>data:image/png;base64,iVBORw…</code>でCSS背景に直接埋め込み。デメリットはHTML/CSSが肥大化(+37%)、ブラウザキャッシュ不可、メンテナンス困難。<strong>大きな画像はCDN+<picture>タグ</strong>、小さなアイコンはData URIまたはSVGスプライトが推奨。
Q Base64URLとStandard Base64の違いは?
<strong>使う文字62番目と63番目が違うだけ</strong>。Standard: <code>+</code>と<code>/</code>、URL Safe: <code>-</code>と<code>_</code>。さらにURL Safeは末尾<code>=</code>パディングを省略可能。URL・ファイル名・JWT・OAuth等で使われます。本ツールはStandardのみ対応で、必要に応じて手動で文字置換してください。
Q デコード時に「Invalid character」と出ます
原因と対処:</p><ul class="ri-ul"><li>A-Z, a-z, 0-9, +, /, =以外の文字が混入(改行・スペース等は本ツールは自動除去するが、特殊文字は要確認)</li><li>Base64URL文字(-, _)が混入 → +, /に置換</li><li>不正なパディング → 末尾の=数を確認(2文字超か奇数個ならエラー)</li></ul><p>ブラウザの開発者ツールで生のBase64文字列を確認し、コピー&ペーストの過程で改変されていないかチェック。
Q HTTP Basic認証は安全ですか?
<strong>HTTPS下なら現実的には安全</strong>ですが、HTTP(平文通信)では危険です。Basic認証は<code>Authorization: Basic [Base64(user:pass)]</code>形式で、Base64は誰でもデコードできるため平文同然。HTTPS必須(TLS 1.2以上)で、できればOAuth 2.0・JWTのBearer Token等のより安全な方式を推奨。
Q Base64でバイナリ画像を扱えますか?
はい、可能です。本ツールはテキスト入力ですが、画像をBase64化したい場合はJavaScriptの<code>FileReader.readAsDataURL()</code>または別の専用ツール(画像ファイル直接読み込み)を使ってください。本ツールはエンコード済みBase64文字列のデコード・整形に最適化されています。