未知の Base64 を適切なファイルへ戻す
Base64 には信頼できるファイル名が通常ありません。復号後の magic bytes を読み、画像、PDF、ZIP、gzip、7-Zip、RAR、フォント、音声、動画、テキストなどの MIME と拡張子を推定します。
Raw Base64、data:*/*;base64,...、RFC 4648 Base64URL に対応します。空白を除去し、可能な場合は padding を補い、不正文字や成立しない末尾グループはダウンロード前に拒否します。
宣言 MIME より magic bytes を優先
Data URL の MIME と実データは一致しない場合があります。宣言値は参考表示にとどめ、認識できたバイト署名を形式と拡張子に採用し、不一致を明示します。
署名判定は完全な構文解析ではありません。PNG、JPEG、GIF、PDF、ZIP、WebP、WAV は既知の終端やコンテナ長も確認し、不足時は切断の可能性を警告します。
貼り付けたマークアップを実行しないローカル表示
ビットマップは一時 Blob URL、PDF はブラウザーのビューアー、UTF-8 らしい内容は textContent で表示します。HTML、XML、JSON、RTF、SVG を活動中の DOM として挿入しません。
書庫、フォント、音声、動画、実行ファイル、未知バイナリは実行せずダウンロードのみです。Object URL は置換・消去・ページ終了時に破棄します。
プライバシーと安全性の限界
復号、署名確認、プレビュー、ダウンロード作成はこのタブ内で完結し、アップロードやサーバー変換、遠隔 URL 取得はありません。
Base64 復号や署名判定はマルウェア検査ではありません。未知のファイルは信頼せず、通常のセキュリティ手段で確認してください。
よくある失敗と原因
- Base64 外の文字、標準と URL-safe の混在、または誤った位置の padding。
- padding 除去後の長さの余りが 1 で、完全なグループに修復できない入力。
- 既知のヘッダーに対して終端やコンテナ長が不足し、切断が疑われるデータ。
- 署名を認識できない有効なバイトは .bin として保存されます。
同等のコマンド
利用中のランタイムやシェルで再現できます。信頼できない入力は検証し、バイナリを端末へ直接出力しないでください。
Python
from pathlib import Path
import base64
Path('decoded.bin').write_bytes(base64.b64decode(value, validate=True))
JavaScript
import { writeFileSync } from 'node:fs';
writeFileSync('decoded.bin', Buffer.from(value, 'base64'));
Shell
base64 --decode payload.base64 > decoded.bin
file decoded.bin
規格と公式リファレンス
Base64 ファイルのよくある質問
Base64 をファイルに戻すには?
値を貼り付けて「ファイルをデコード」を押し、判定結果を確認して元のバイトを保存します。
元の拡張子は分かりますか?
既知の署名から推定できますが、Base64 は元のファイル名を保持せず、すべての形式を判別できるわけではありません。
Base64URL と padding なしに対応しますか?
はい。- と _ を正規化し、長さが許す場合は末尾の = を自動補完します。
切断されたファイルを検出できますか?
成立しない Base64 は拒否し、一部形式の終端も確認します。それ以外で「確認不可」と出ても完全性の保証にはなりません。
何をプレビューできますか?
ビットマップ、PDF、UTF-8 らしいテキストです。HTML、XML、SVG、書庫、フォント、実行内容は動かしません。
ファイルは送信されますか?
いいえ。すべてブラウザー内で処理し、一時 Blob URL から保存します。