Base64エンコーダー&デコーダー
Base64は、テキスト、画像、PDF、キーなど、あらゆるデータを安全な64文字(A–Z、a–z、0–9、+、/)だけを使って表現する方法です。このツールは、テキストやファイルをBase64にエンコードし、Base64を読み取り可能なテキストや元のファイルにデコードします。変換はブラウザ上で即座に行われ、貼り付けたり選択したりしたものがアップロードされることはありません。
主な機能
- テキストをBase64にエンコード:UTF-8を適切に処理するため、あらゆる言語や絵文字に対応しています。
- Base64をテキストにデコード:メールやログからコピーした際によくある、改行、スペース、パディングの欠落を許容します。
- Base64URLモード:JWT、OAuth、多くのWeb APIで使用される、URLセーフな出力を生成します。
- ファイルをBase64に変換:
<img src>やCSSのurl()ですぐに使える、完全なdata:URLを出力するオプション付き。 - Base64をファイルに変換:コンテンツが画像やPDFなどのバイナリデータの場合、デコードされたバイトをダウンロードできます。
Base64の主な用途
メールの添付ファイル。 MIME標準では、バイナリファイルがテキストベースのシステムを通過できるように、添付ファイルをBase64でエンコードします。
データURL。 小さなアイコンや画像は、data:image/png;base64,…としてHTMLやCSSに直接埋め込むことができ、余分なネットワークリクエストを削減できます。
APIと設定ファイル。 証明書、暗号化キー、アップロードファイルなどのバイナリ値は、JSON内でBase64文字列として送信されることがよくあります。KubernetesのSecretや多くの環境変数も、値をBase64で保存します。
認証。 HTTP基本認証はusername:passwordをBase64でエンコードして送信し、JSON Web Tokenは3つのBase64URLエンコードされた部分で構成されます。トークンの内容を確認するには、JWTデコーダーをご利用ください。
Base64の仕組み
エンコーダーは、入力を一度に3バイト(24ビット)ずつ受け取り、それを4つの6ビットのグループに分割します。各6ビットの値(0〜63)が、Base64のアルファベットの1文字に対応します。入力の長さが3の倍数でない場合、出力の長さが4の倍数になるように、1つまたは2つの=記号でパディング(穴埋め)されます。
3バイトが4文字になるため、Base64データは元のデータより約3分の1大きくなります。このオーバーヘッドは、バイナリデータをテキスト専用システムで安全に受け渡すための代償です。
Base64はURLエンコードとは異なります。任意のテキストをクエリ文字列に含める必要がある場合は、代わりにURLエンコード/デコードを使用してください。2つのファイルが同一であるかを確認するには、ハッシュジェネレーターでチェックサムを比較してください。