Base64编码/解码工具
免费在线Base64编码和解码工具。支持UTF-8和中文文本。适用于Web API、电子邮件附件和数据URL。浏览器完结,安全可靠,无需注册。
日本語を含む任意のテキストをBase64形式に変換できます。
使い方のヒント
- • テキストを入力して、エンコードまたはデコードボタンをクリックします
- • エンコード: 通常のテキストをBase64形式に変換します
- • デコード: Base64形式の文字列を元のテキストに戻します
- • 日本語を含むマルチバイト文字にも対応しています
Base64とは?
Base64は、バイナリデータをテキスト形式で表現するためのエンコード方式です。 64種類の印刷可能な文字(A-Z、a-z、0-9、+、/)のみを使用して、あらゆるデータを表現できます。
- メール添付ファイルのエンコード
- 画像やファイルをHTMLやCSSに埋め込む(Data URL)
- APIでのバイナリデータ転送
- 認証情報のエンコード(Basic認証など)
注意事項
- • Base64エンコードは暗号化ではありません。機密情報の保護には使用しないでください
- • エンコード後のデータサイズは元のサイズの約133%に増加します
- • このツールはブラウザ上で動作し、データは外部に送信されません
こんな人におすすめ
- ✓HTMLメールに画像を直接埋め込みたいWeb制作者の方
- ✓Web APIでバイナリデータをJSON形式で送受信する必要がある開発者の方
- ✓HTTP Basic認証のヘッダー生成が必要なエンジニアの方
- ✓Data URLスキームで画像を埋め込みページ速度を改善したいフロントエンド開発者の方
- ✓暗号化データをテキスト形式で保存・送信したいセキュリティ担当者の方
- ✓メールシステムでファイル添付をBase64エンコードする必要がある方
Base64エンコード/デコードツールの使い方
- テキストボックスにエンコード/デコードしたいテキストを入力または貼り付けます
- 「エンコード」ボタンをクリックすると、テキストがBase64形式に変換されます
- 「デコード」ボタンをクリックすると、Base64文字列を元のテキストに戻します
- 変換結果は自動的に表示され、コピーボタンでクリップボードにコピーできます
- ファイルアップロード機能を使えば、画像やバイナリデータも変換できます
Base64エンコード/デコードツールの活用シーン
メール添付ファイルの埋め込み
メールシステム(SMTP)では、画像やPDFなどのバイナリデータをBase64エンコードしてテキスト形式に変換してから送信します。HTMLメールに画像を直接埋め込む際も、Base64形式にエンコードすることで、外部サーバーを経由せずにメール本文に画像を含められます。
Data URLスキームで画像埋め込み
HTML/CSSで小さなアイコンやロゴ画像をBase64エンコードしてData URLスキーム(data:image/png;base64,...)として埋め込むことで、HTTPリクエスト数を削減し、ページの読み込み速度を向上させます。特にWebフォントやSVGアイコンで効果的です。
Web APIでの認証情報の送信
HTTP Basic認証では、ユーザー名とパスワードをコロン区切りで結合し、Base64エンコードしてAuthorizationヘッダーに含めます。また、OAuth 2.0のクライアント認証でも、クライアントIDとシークレットをBase64エンコードして送信します。
JSONデータの安全な送信
URLパラメータやCookieに日本語や特殊文字を含むJSONデータを埋め込む場合、Base64エンコードすることで文字化けを防げます。また、バイナリデータ(画像、PDFなど)をJSON APIで送受信する際にも、Base64エンコードが標準的に使われます。
暗号化前のデータ変換
暗号化アルゴリズム(AES、RSAなど)で暗号化されたバイナリデータは、テキストとして扱いにくいため、Base64エンコードしてから保存・送信します。データベースのTEXT型カラムに暗号化データを格納する場合にも必須の処理です。
よくある質問(FAQ)
- Q: Base64とは何ですか?
- A: Base64は、バイナリデータ(画像、音声、実行ファイル等)をテキスト形式(A-Z、a-z、0-9、+、/の64文字)に変換するエンコード方式です。メールやHTMLなど、テキストしか扱えない環境でバイナリデータを送受信するために開発されました。
- Q: Base64エンコードはなぜ必要ですか?
- A: インターネットの初期プロトコル(SMTP、HTTP等)は7ビットのASCII文字しか扱えなかったため、8ビットのバイナリデータをそのまま送信できませんでした。Base64エンコードで6ビットごとに分割し、安全なテキスト文字に変換することで、この制限を回避します。
- Q: エンコードするとデータサイズは増えますか?
- A: はい、約33%増加します。例えば、3バイトのデータは4文字(4バイト)のBase64文字列になります。画像などの大きなファイルをBase64エンコードすると、ファイルサイズが大幅に増えるため、小さなアイコン等に限定して使用することを推奨します。
- Q: Base64は暗号化ですか?
- A: いいえ、Base64は単なるエンコード(変換)であり、暗号化ではありません。誰でも簡単にデコードできるため、セキュリティ保護には役立ちません。機密情報を保護したい場合は、AESやRSAなどの暗号化アルゴリズムを使用してください。
- Q: Base64文字列の末尾の「=」は何ですか?
- A: パディング文字と呼ばれ、元のデータのバイト数が3の倍数でない場合に追加されます。Base64は3バイトを4文字に変換するため、端数が出た場合に「=」で埋め合わせます。デコード時には無視されるため、削除しても問題ありません。
- Q: JavaScriptでBase64エンコード/デコードするには?
- A: ブラウザではbtoa()関数でエンコード、atob()関数でデコードできます。ただし、日本語などのUTF-8文字は直接扱えないため、encodeURIComponent()と組み合わせる必要があります。Node.jsではBuffer.from(str).toString('base64')を使用します。
- Q: Base64でエンコードできるファイルサイズの制限は?
- A: このツールはブラウザ上で動作するため、メモリの制限があります。数MB程度の画像なら問題ありませんが、動画など大きなファイルはブラウザがフリーズする可能性があります。大きなファイルはサーバーサイドで処理することを推奨します。
使い方ガイド
ステップ付きの解説記事で詳しい手順と活用例をチェックできます。