Base64
Base64 Studio
バイト単位でデコード・エンコード。
Base64 エンコードについて
Base64 は任意のバイナリデータを、英数字と + 、/ 、パディング用の = だけで構成される文字列に変換します。圧縮や暗号化は行わず、プレーンテキストしか想定していないシステムでも安全に扱えるようにバイトを再表現するだけで、サイズは約 3 分の 1 増加します。
Base64には知っておくべき小さなバリエーションがあります。標準のアルファベットは + と / を使いますが、どちらも URL やファイル名の中では安全でないため、Base64URL と呼ばれる URL セーフな変種ではこれらを - と _ に置き換え、末尾の = パディングも省くのが普通です。このツールは常に標準の Base64 を生成します。上のテキストエンコーディングの選択は、平文がエンコード前にどうバイト列に変換されるか(UTF-8、Windows-1252 など)を決めるものであり、どちらの Base64 アルファベットを使うかとは無関係です。後者は選んだエンコーディングに関わらず、常に RFC 4648 の標準です。
使われる場面
- data: URI を使って画像を CSS や HTML に直接埋め込む
- バイナリファイルをメールに添付する(MIME)
- バイナリデータを JSON、XML などのテキスト専用フォーマットに格納する
- JWT のヘッダーとペイロードのセグメント
よくある質問
Base64 は暗号化ですか?
いいえ。誰でも即座にデコードできるため、機密性はまったくありません。データを保護する必要がある場合は本物の暗号化を使用してください。
出力が入力より長くなるのはなぜですか?
Base64 は入力の 3 バイトごとを 4 文字で表現するため、エンコード後の出力はおよそ 33% 大きくなります。
ここに貼り付けた内容は保存されますか?
いいえ。変換はその 1 回のリクエストのためだけにサーバー上で行われ、その後は記録も保持もされません。
Base64 と Base64URL の違いは何ですか?
Base64URL は 2 文字を置き換えます — + は - に、/ は _ になり、末尾の = パディングも通常省かれます。これは +、/、= のいずれも URL の中で特別な意味を持つためです。JWT や多くの Web API がまさにこの理由で Base64URL を使っています。このツールは標準の Base64 を出力します。URL セーフな形式が必要な場合は、この 2 文字を置き換え、末尾の = を取り除いてください。