Base64 エンコード/デコード
テキストやファイルをBase64にエンコード、あるいはBase64を元に戻す——すべてブラウザ内で完結します。
Base64とは? そもそもなぜエンコードする必要があるのか
Base64は、画像やPDF、暗号化されたバイト列といった任意のバイナリデータを、A〜Z、a〜z、0〜9、+、/ の64種類の文字(およびパディング用の=)だけで構成された文字列に変換する仕組みです。暗号化でも圧縮でもなく、Base64文字列は元のデータよりおよそ33%大きくなります。しかも鍵は一切不要で、誰でも即座に元のデータへ復元できます。存在意義はもっと実用的なところにあります。メール(MIME添付ファイル)、JSONのフィールド、URLのクエリパラメータ、CSS/HTMLの`data:` URI、設定ファイルなど、多くの転送形式やストレージ形式はプレーンテキストを安全に運ぶために設計されており、改行コードやNULL文字といった生のバイナリバイトをそのまま扱うと壊れてしまいます。バイナリデータをBase64エンコードすることで、こうした仕組みでも壊れずに運べるプレーンテキストの塊に変換できるのです。
このツールはエンコード・デコードの処理をすべて純粋なJavaScriptでブラウザ内で実行しており、入力・アップロードした内容がサーバーに送信されることはありません。テキストの処理には内部で`TextEncoder`と`btoa`を使用しているため、単純なASCII文字だけでなく、絵文字やアクセント付き文字、日本語・中国語・韓国語などのマルチバイトUTF-8文字も正しく往復変換できます。ファイルはブラウザの`FileReader` APIを使ってローカルで読み込まれるため、数メガバイトの画像であっても、そのBase64表現を確認するためだけに端末の外へ出ることはありません。
「テキスト」タブは日常的な用途に対応しています。テキストを入力または貼り付け、「エンコード」と「デコード」を切り替えるだけで、出力がリアルタイムに更新されます。「URLセーフ」オプションを有効にすると、`+`と`/`が`-`と`_`に置き換えられ、末尾の`=`パディングも省かれます。これは、Base64の値をJSONフィールドではなくURLやファイル名の中に埋め込みたい場合に必要な形式です。「ファイル」タブではさらに一歩進んだ処理が可能で、画像やPDFなどのファイルをドロップすると、生のBase64文字列と、`<img src>`やCSSの`background-image`にそのまま貼り付けて使える`data:` URIの両方が得られます。小さなアイコンを別途HTTPリクエストなしで埋め込みたいときなどに便利です。生成されたデータURI(あるいはBase64文字列とMIMEタイプの組み合わせ)をデコード欄に貼り付ければ、元のバイトデータが復元され、画像であれば自動的にプレビューが表示され、ワンクリックでダウンロードすることもできます。
ここで明確にしておきたい、よくある誤解があります。Base64はあくまで「エンコード方式」であり、セキュリティ対策ではないということです。Base64文字列は仕組み上、誰でも簡単に元に戻せるため、本物の暗号化の代わりとして使うべきではありません。トークンや秘密情報を転送のためにこのツールでエンコードすること自体は問題ありませんが、それを「隠している」と勘違いしないよう注意してください。すでにデコード済みのJSONペイロードの構造を確認したい場合は、JSON Formatter & Validatorツールが次のステップとして役立ちます。
よくある質問
テキストだけでなく、ファイルもエンコード・デコードできますか?
はい。専用の「ファイル」タブで、任意のファイルを Base64/Data URI にエンコードしたり、Base64 をダウンロード可能なファイルにデコードしたりできます。
URL セーフな Base64 に対応していますか?
はい。URL セーフエンコードに切り替えれば、URL やファイル名にそのまま使える形式で出力できます。
デコード後の画像ファイルをプレビューできますか?
はい。デコードした MIME タイプが画像の場合は、ダウンロード前にリアルタイムでプレビューが表示されます。