開発者ツール · Free browser tool
Base64 エンコード/デコード
完全な UTF-8 対応とデータ漏洩ゼロで、テキストを Base64 にエンコード、または Base64 文字列をテキストへ即座にデコードします。
Plain text
Any text, including emoji and non-Latin scripts.
Base64 result
Your Base64 result will appear here.
Frequently Asked Questions
Base64 エンコードは実際何のためですか?
Base64 は任意のバイナリ(またはテキスト)を、文字・数字・+・/・= だけからなる文字列に変え、JSON フィールド・URL・メール添付・HTTP ヘッダー・設定ファイルなど、平文向けに設計された場所へ安全に埋め込めるようにします。暗号化でも圧縮でもなく、純粋な安全輸送フォーマットで、誰でも即座に元に戻せます。
素の btoa()/atob() で日本語や絵文字をエンコードすると壊れたりエラーになるのはなぜ?
ブラウザ内蔵の btoa() は 0〜255 バイト範囲(Latin-1)の文字しか受け付けません。日本語・絵文字・大半の非ラテン文字は、その範囲を超えるマルチバイト UTF-8 なので、btoa() は「InvalidCharacterError」を投げるか静かに壊します。このツールは TextEncoder で先に生の UTF-8 バイトへ変換してから Base64 にエンコードし、デコード時は TextDecoder で同じ手順を逆にし——日本語・絵文字・アクセント付き文字が完璧に往復します。
Base64 文字列末尾の '=' パディング文字は何を意味しますか?
Base64 は 3 バイト単位を出力文字 4 個にエンコードします。元データが 3 バイトのきれいな倍数でないとき、最後のグループを 4 文字に揃えるため末尾に '=' が付きます——余りが 2 バイトなら '=' 1 個、1 バイトなら '=='。その有無は有効な Base64 の正常な一部であり、エラーではありません。
オンラインの Base64 ツールで API キーやパスワードをデコードしても安全ですか?
ツールが入力をサーバーへ送るかどうかに完全に依存します。このツールは決して送りません——すべての変換が TextEncoder・TextDecoder・btoa・atob などの内蔵 JavaScript API でブラウザ内に走り、ネットワークリクエストは発生しません。だから API キー・JWT セグメント・Basic Auth ヘッダーのような機密値をデコードしても安全で、コントロールできないバックエンド経由でプロキシするツールには決して貼らないでください。
Base64 は暗号化ではない——そしてそれがセキュリティで重要な理由
Base64 は輸送フォーマットであり、セキュリティ手段ではありません。誰でもワンクリックで Base64 文字列を元の形に戻せ、秘密鍵は関与しません。だから本当のセキュリティの問いは「エンコードされているか」ではなく「エンコード/デコード中にデータはどこへ行くか」です。驚くほど多くのオンライン変換器が、貼り付けた内容を静かに自社サーバーへ送り、デコード対象が本番ログから取った API キー・JWT ペイロード・Basic Auth ヘッダーなら実質的な問題になります。
このツールは絶対にそうしません。エンコードもデコードも、ブラウザ自身の TextEncoder・TextDecoder・btoa・atob API を通り、どの時点でもネットワークリクエストはありません。怪しげなトークンをデコードしたり資格情報を確認したりしても、端末を離れません。
プライバシーと同じくらい UTF-8 の扱いも重要です。素の btoa() 呼び出しは、テキストに韓国語・日本語・絵文字・アクセント付きラテンが入った瞬間に壊れます——Latin-1 バイト範囲しか理解しないからです。このツールはまず正しい UTF-8 バイトエンコードを通すので、マルチバイト文字は常に正確に往復します。絵文字付き文字列をエンコードしてデコードすれば、化けた代替文字ではなく同じ絵文字が戻ります。
次に構造化データを扱いますか? デコードした API レスポンスを整えるなら JSON フォーマッター・バリデーターと組み合わせてください。このカテゴリには UUID ジェネレーターを含む、さらに多くの開発者ユーティリティが続きます。