Base64 とは?
Base64 は、テキスト、画像、バイナリファイルなどあらゆるデータを、英数字と +、/、= だけの文字列に変換する方式です。テキストしか扱えない場所でも安全にデータを送れるため、メールの添付ファイル、ウェブページの data: 画像、HTTP Basic 認証のヘッダー、JWT などで使われています。エンコード後のサイズは元の約 4/3 になります。
使い方
- 「エンコード」または「デコード」を押して方向を選びます。選んだボタンが強調表示されます。
- 「入力」に入力します。「自動変換」がオンなら、入力を止めるとすぐに結果が表示されます。
- 「結果を入力に戻す」を押すと結果が左に移り、方向も反転するので、往復の確認が簡単です。
元データの形式:テキストか Hex か
- テキスト(UTF-8):日本語や絵文字を含む通常のテキスト。
- Hex:
ff fe 00のように 16 進数で書いたバイト列。デコード結果がテキストでない場合(画像や暗号化されたデータなど)は Hex を選びます。
標準の Base64 と URL-safe Base64
| 標準の Base64 | URL-safe Base64 | |
|---|---|---|
| 62・63 番目の文字 | + と / | - と _ |
| パディング | = で 4 の倍数にそろえる | 通常 = を付けない |
| 主な用途 | メール、data URL、一般的なデータ交換 | URL パラメータ、ファイル名、JWT |
デコードはどちらの形式にも対応し、= がなくても処理できるので、デコード時にモードを切り替える必要はありません。
例
- テキスト
Hello 世界をエンコードするとSGVsbG8g5LiW55WM - Hex
ff fe 00をエンコードすると//4A、URL-safe モードでは__4A
ファイルと Base64
- ファイルを Base64 に:画像や PDF などのファイルを入力欄にドラッグするか、「ファイルを選択」を押します(最大 10 MB)。「data URI の接頭辞を付ける」をオンにすると
data:image/png;base64,...が生成され、HTML の<img src>や CSS にそのまま使えます。 - Base64 をファイルに:デコード結果が画像などのバイナリデータの場合は「デコードしてファイルを保存」を押します。ファイルの種類は
data:接頭辞から、なければ先頭のバイトから判別します(PNG、JPEG、GIF、WebP、PDF、ZIP など)。 - ファイルはブラウザ内でのみ読み込まれ、アップロードされません。
よくある質問
Base64 は暗号化ですか?
いいえ。Base64 は表現方法を変えただけで、誰でもデコードできます。パスワードや機密情報の保護には使えません。内容を隠したい場合は本物の暗号化を、改ざんされていないことを確認したい場合は HMAC を使ってください。
デコードすると「バイナリデータで、UTF-8 テキストではありません」と表示されます
デコードしたバイト列がテキストではなく、画像、圧縮ファイル、暗号化データなどの可能性があります。「元データの形式」を Hex にすると生のバイト列を確認できます。ファイルとして保存したい場合は「デコードしてファイルを保存」を押してください。
結果の最後に = が 1 つか 2 つ付くのはなぜ?
Base64 は 3 バイトごとに 4 文字に変換します。入力の長さが 3 の倍数でないとき、= で 4 の倍数にそろえます。