Base64 エンコーダー / デコーダー
テキストやファイルを Base64 にエンコード/デコード。標準・URLセーフのアルファベット、パディング、76文字折り返し、画像プレビューに対応。ブラウザ内で処理します。
入力内容とファイルはブラウザ内に留まります
エンコードするテキストを入力するか、デコードする Base64 を貼り付けてください(下にファイルをドロップすることもできます)。
ここにファイルをドラッグ&ドロップ
ファイルを選択した場合、テキスト入力の代わりに使用されます。
エンコードまたはデコードの結果がここに表示されます。
このページの内容
テキストや任意のファイルを、どこにもアップロードせずに Base64 へ変換し、元に戻せます。処理は Rust からコンパイルした WebAssembly モジュールがブラウザ内で行い、デコードした画像はプレビュー表示、バイナリは適切な拡張子でダウンロードできます。
詳細な機能
テキストはまず選択した文字セット(UTF-8、UTF-16LE、UTF-16BE、ASCII、ISO-8859-1)でバイト列に変換され、RFC 4648 の標準アルファベット(+ と /)か、JWT や URL パラメーターで使われる URL セーフ アルファベット(- と _)でエンコードされます。= によるパディングは必須・オプション・なしを選べ、MIME メールのように 76 文字ごとに改行することもできます。
デコード時には得られたバイト列を判定します。読めるテキストは出力欄に表示し、PNG、JPEG、GIF、WebP、BMP、ICO、TIFF、SVG の画像はピクセルサイズ付きでプレビュー、PDF、ZIP、GZIP、MP3、MP4、実行ファイルはシグネチャで識別します。テキスト以外は ダウンロード で decoded.png のような適切な拡張子で保存できます。
ファイルは選択するか、ページにドラッグ&ドロップします。ファイルを選択している間はテキスト欄は使われません。読み込みは Web Worker で 1 MiB ずつ行われ、進捗バーと キャンセル ボタンがありますが、ファイル全体をメモリに保持するため、実際の上限は端末のメモリ量です。非常に長い結果は出力欄にプレビューのみ表示され、全体は ダウンロード で保存します。
実用例
テキストを Base64 に: Hello, World! は SGVsbG8sIFdvcmxkIQ== に、UTF-8 の Привет は 0J/RgNC40LLQtdGC(入力 12 バイト、出力 16 文字)になります。
URL セーフ・パディングなし: <<???>> は標準アルファベットでは PDw/Pz8+Pg==、URLセーフ (-_) と パディングなし では PDw_Pz8-Pg となり、JWT の各セグメントと同じ形式です。
パディングのない入力: 既定の 必須 では SGk のデコードは失敗します。パディング を オプション にすると Hi になります。
Base64 から画像へ: PNG の Base64(iVBORw0KGgo で始まる)を貼り付けると、1×1 px などのサイズとともに画像が表示され、ダウンロード で decoded.png として保存できます。
このツールの使い方
テキストを入力するかファイルを選ぶ
入力 (テキスト) にテキストを入力または貼り付けるか、ファイルをページにドロップするか ファイルを選択 をクリックします。ファイルを選ぶとテキストより優先されます。
オプションを設定する
テキスト文字セット(通常は UTF-8)、アルファベット(標準 (+/) または URLセーフ (-_))、パディング を選び、MIME メール用なら 行の折り返し を 76文字 にします。
エンコードまたはデコードする
エンコード で Base64 を生成し、デコード でテキスト・画像プレビュー・バイナリファイルに戻します。エラー時は、不正な文字やパディングの誤りなど原因が表示されます。
結果をコピーまたはダウンロードする
コピー で出力をクリップボードに、ダウンロード でファイルに保存します。入れ替え は出力を入力欄に戻し、往復変換の確認に使えます。
ヒントとベストプラクティス
- Base64 はデータを約 33% 大きくします(3 バイトが 4 文字になる)。暗号化ではなくエンコードなので、誰でもデコードできます。
- data URI はデコード前に
data:image/png;base64,の接頭辞を取り除いてください。デコーダーは Base64 部分だけを受け付けます。 - JWT のヘッダーとペイロードはパディングなしの URL セーフ アルファベットです。URLセーフ (-_) と オプション のパディングを選ぶと、
eyJhbGciOiJIUzI1NiJ9は{"alg":"HS256"}になります。 - メールや PEM ファイルの改行入り Base64 をデコードするには 空白/改行を許可 をオンのままに。1 行のきれいな入力か確認したいときはオフにします。
- 文字セットは重要です。
éは UTF-8 ではw6k=、ISO-8859-1 では6Q==なので、エンコード時と同じ文字セットでデコードしてください。 - 一度開いたページは、ネットワークがなくても動作します。