Base64エンコード / デコード
テキストと Base64 の相互変換。URL セーフ形式にも対応
ローカル実行
loading…
このツールについて
Base64 は任意のバイト列を 64 文字のアルファベットに変換し、JSON、URL、HTTP ヘッダー、メールに貼り付けても壊れないようにします。このツールは双方向に変換します。テキストを入力または貼り付けてエンコードするか、エンコード済みの文字列を貼り付けて元に戻せます。UTF-8 は双方向とも正しく扱われるため、絵文字や非ラテン文字も化けることなくラウンドトリップします。
デコーダーは意図的に寛容に作られています。URL セーフなアルファベット(+ と / の代わりの - と _)を受け付け、空白と改行を除去し、欠けたパディングをデコード前に復元します — この 3 点こそが、本来復元可能な入力を厳格なデコーダーが拒否してしまう最も多い原因です。デコードしたバイト列が有効な UTF-8 テキストでない場合は、文字化けを表示する代わりにその旨を伝えます。これはたいてい、ペイロードが画像などのバイナリデータだったことを意味します。
すべてはページ内で完結します。ここでトークンや資格情報をデコードしても、どこにも送信されません。
よくある質問
- なぜ Base64 文字列は = で終わるのですか?
- Base64 は 3 バイトを 4 文字にエンコードするため、入力長が 3 の倍数でないときはグループを揃えるために出力が = でパディングされます。パディングはデータを持ちません。取り除かれていても、このデコーダーが自動的に復元します。
- 標準の Base64 と URL セーフな Base64 の違いは何ですか?
- 標準の Base64 は + と / を使いますが、これらは URL 内で特別な意味を持ち、それ自体をエスケープする必要があります。URL セーフな変種(RFC 4648 §5)はそれらを - と _ に置き換え、通常はパディングも省略します。たとえば JWT は URL セーフ形式を使っています。ここのエンコーダーは両方を提供し、デコーダーはどちらも自動的に受け付けます。
- Base64 は暗号化ですか?
- いいえ。Base64 は鍵を持たない可逆エンコーディングで、誰でもデコードできます。転送時の破損からデータを守るものであって、読まれることから守るものではありません。機密性が必要なら、まず暗号化してから暗号文をエンコードしてください。
- デコード結果が有効な UTF-8 ではないと表示されるのはなぜですか?
- 文字列のデコード自体は成功しましたが、得られたバイト列がテキストではなかったのです — PNG、PDF、圧縮・暗号化データであることがよくあります。そうした内容をテキストボックスにデコードすると文字化けが表示されるだけなので、ツールは代わりに警告を出します。