Base64 Encoder, Decoder & Inspector
画像だけでなくあらゆるファイルを、受け取る側が本当に求めている英数字セット・パディング・行幅でエンコードできます。ペイロードをデコードすれば、その正体が分かります。マジックバイトから読み取った形式、先頭バイトの16進ダンプ、gzip 後のサイズ、そして SHA-256 です。
使い方
ペイロードを持ち込む
入力する、貼り付ける、任意の形式のファイルをドロップする、あるいはスイート内の別のツールから受け取る。ファイルをドロップした時点ではまだ何も読み込みません。
出力の形を決める
標準か URL セーフな英数字セット、パディングの有無、64・76・100 桁での改行と LF / CRLF。実際のパーサーが食い違うのは、まさにここです。
バイトを見る
形式はファイル名からの推測ではなくマジックナンバーから読み取ります。16進ダンプ、gzip 後のサイズ、SHA-256、そして可逆性チェックが得られます。
持ち出す
生の文字列、data: URL、CSS ルール、img タグ、JSON ボディ、PEM ブロックをコピー。あるいはデコードしたファイルを別のツールへ直接送れます。
3バイトが4文字に
Base64 は運ぶバイトより必ず 33% 多くかかります。このツールは両方の数値に加えて gzip 後のサイズも示します。テキストに近いペイロードなら gzip がほぼ取り戻し、PNG ならほとんど取り戻せないからです。
URL セーフな英数字
- と _ に切り替えれば、クエリ文字列でもファイル名でも JWT でもエスケープなしで通ります。パディングも外せるので、トークン形式が期待する形になります。
16進検査ビュー
実際のバイトを1行16個ずつ、印字可能な ASCII を並べて表示します。マジックナンバーが強調されるので、途中で切れたファイルはすぐに分かります。
どこが壊れたかを教える
どの文字がセットに含まれず、それが何文字目か。パディングが足りなかったか。最後の文字が捨てられるビットを含んでいるか。「Base64 が不正です」だけで終わりません。
形式はバイトから読む
PNG、JPEG、GIF、WebP、AVIF、HEIC、PDF、ZIP とその中の Office 形式、WOFF2、MP4、WASM、SQLite などを署名で判定します。だからダウンロードに正しい拡張子が付きます。
大きなファイルでも滑らか
ファイルは別スレッドで 3 MB ずつ処理され、進捗バーは実測で、停止ボタンはきちんと効きます。200 MB のペイロードを変換中でもタブは反応し続けます。
作るだけでなく測れる
毎回、同じバイトから計算した gzip 後のサイズと SHA-256 が付いてきます。埋め込みが2回目のリクエストより得かを判断でき、往復が無損失だったことも証明できます。
可逆性チェック
テキストのエンコードは直後に再デコードしてバイト単位で照合します。受け取る側が拒否するような英数字セットとパディングの組み合わせは、貼り付ける前に警告されます。
文字列ではなく、ペイロードを扱う
多くの Base64 ツールは文字列を返して終わりです。このツールはバイトを保持します。署名から形式を判定し、先頭1キロバイトを16進で示し、gzip 後の実コストを測り、往復を証明できるようハッシュを取り、全体のせいにする代わりに「何文字目のどの文字が壊しているか」を正確に伝えます。エンコードはあらゆるファイルを受け付けます。フォントでも PDF でも WebAssembly モジュールでも構いません。Base64 は画像だけのものではなかったからです。
何もブラウザーの外に出ません
エンコード、デコード、形式判定、16進ダンプ、gzip の計測、SHA-256 のすべてが、あなたのタブで動くネイティブのブラウザー API です。大きなものは別スレッドで処理します。アップロードもリクエストもなく、記録に残るものもありません。これは重要です。Base64 ツールに貼り付けられるものは、たいてい秘密鍵やセッショントークン、社内文書なのですから。
ラベルのないペイロードのために作られた
MIME タイプがどこにも記録されていないデータベース列から出てきた blob。URL セーフなセットを使いパディングもないためデコードできない JWT の一部。スタイルシートに埋め込まれ、壊れた画像として表示される SVG。image/png と称しているのに中身は明らかに JPEG の data: URL。64 桁で改行され、厳格なパーサーに拒否される証明書。Base64Bolt はそのすべてを読み、バイトの正体を告げ、正しい拡張子のファイルとして持ち出させてくれます。
登録も1日あたりの上限もなく、便利な機能を隠す有料プランもありません。開いたファイルはローカルで読まれ、送信されることはありません。タブを閉じればすべて忘れられます。
よくある質問
Q私の JWT やトークンが他のツールでは失敗するのに、ここでは動くのはなぜ?+
URL セーフなセット、つまりプラスとスラッシュの代わりにハイフンとアンダースコアを使っており、たいていパディングも外されているからです。標準セットしか知らないデコーダーは最初のハイフンで止まります。Base64Bolt は入力がどちらのセットかを判定し、欠けたパディングを補い、その両方を知らせます。
QBase64 にするとファイルは大きくなりますか?+
必ず、ちょうど3分の1だけ大きくなります。3バイトが4文字になり、さらに最大2文字のパディングが付きます。それが実際に負担かどうかは圧縮次第なので、このツールは生のサイズの隣に gzip 後のサイズも表示します。小さな SVG の埋め込みはたいてい有利で、大きな JPEG はたいてい不利です。すでに圧縮済みで、Base64 がその効果を一部打ち消すからです。
Q画像以外もエンコードできますか?+
はい、どんなファイルでも。@font-face 用のフォント、ダウンロードリンク用の PDF、WebAssembly モジュール、ZIP、音声クリップ。画像に限る従来の制限は根拠のないものでした。Base64 はバイトの意味を気にしません。
Q「最後の文字に捨てられるビットが含まれる」とはどういう意味ですか?+
Base64 の1文字は6ビットを保持しますが、ペイロードの最後のグループはそれより少なくて済むことがよくあります。QQ== と QR== はどちらも 1バイトの 0x41 にデコードされます。R の最後の4ビットが捨てられるからです。後者を出すエンコーダーは存在しないので、それが見えたら文字列が切り詰められたか手で編集されたということです。結果を信用する前に知っておく価値があります。
Qデコードで「バイトが UTF-8 ではない」と出るのはなぜ?+
テキストではないからです。Base64 はバイトを運び、その中身が画像やアーカイブ、鍵であることは珍しくありません。以前は「Base64 が不正」と報告していましたが、それは単に誤りでした。Base64 には何の問題もなかったのです。「Base64 → ファイル」タブに切り替えれば、形式を判定してダウンロードできます。
Q出力を76桁で改行すべきですか?+
後段の何かがそれを期待している場合だけです。MIME のボディと PEM ブロックは規格で改行されます(PEM は64桁、MIME は76桁)。長大な1行を拒否するメールパーサーもあります。スタイルシート内の data: URL や JSON のフィールドなら、改行は切っておいてください。
Qサーバーに何か送信されますか?+
いいえ。すべての処理はあなたのタブで動くネイティブのブラウザー API なので、ページを読み込んだあとはオフラインでも動きます。アップロードも遠隔キャッシュもログも一切ありません。