Base64エンコード / デコード
文字列をBase64にエンコード、またはBase64をデコードできる無料ツールです。日本語(UTF-8)にも正しく対応。処理はブラウザ内で完結し、データは送信されません。
使い方
「エンコード/デコード」を選び、入力欄に文字列を入れると結果が表示されます。 設定ファイルやAPIでBase64を扱うとき、中身を確認・生成するのに便利です。
Base64の仕組み
Base64は、データを3バイト(24ビット)ずつ区切り、それを6ビットずつ4つに分け直して、A–Z a–z 0–9 + / の64文字に対応させる方式です。 6ビットで表せる値は0〜63のちょうど64通りなので、1つの値が1文字に割り当てられます。 元のデータが3バイトの倍数でないときは、末尾を = で補って4文字単位に揃えます(パディング)。
この仕組み上、変換後の文字数は元のバイト数のおよそ4/3になります。たとえば5バイトの「Hello」は8文字の 「SGVsbG8=」になります。また、日本語などのマルチバイト文字は、まずUTF-8のバイト列に直してからBase64にします。 当ツールもUTF-8を経由するため、ひらがな・漢字・絵文字も元どおりに往復できます。
変換の例
| 入力 | Base64 | 備考 |
|---|---|---|
| ABC | QUJD | 3バイトちょうどなので「=」が付きません |
| Hello | SGVsbG8= | 5バイト。余りが2バイトなので「=」が1個 |
| こんにちは | 44GT44KT44Gr44Gh44Gv | UTF-8で15バイト。3の倍数なので「=」なし |
| 🙂 | 8J+Zgg== | UTF-8で4バイト。余りが1バイトなので「=」が2個 |
使うときの注意
- Base64は暗号ではありません。誰でも元に戻せるため、パスワードや個人情報の秘匿には使えません。
- 変換後は文字数が約1.33倍に増えます。長いデータをBase64のまま持ち回ると、その分だけ容量が増えます。
- デコードでは、前後の空白や途中の改行が入っていても変換できます。一方、
A–Za–z0–9+/=以外の文字が混ざっているとエラーになります。 - URLセーフBase64(
+を-、/を_に置き換えた形式)はそのままでは扱えません。記号を戻してから貼り付けてください。 - 画像などのバイナリをBase64にした文字列をデコードすると、文字として読めない結果になります。当ツールは文字列どうしの相互変換を対象としています。
よくある質問
Base64とは何ですか?
データを英数字と一部の記号(A–Z, a–z, 0–9, +, /)だけで表す符号化方式です。メール添付やデータURI、APIなどで、テキストとして安全に扱いたいときに使われます。
日本語(マルチバイト文字)も正しく変換できますか?
できます。当ツールはUTF-8として符号化してからBase64に変換するため、日本語や絵文字も正しくエンコード・デコードできます。
Base64は暗号化ですか?
いいえ。Base64は誰でも元に戻せる「符号化」であり、暗号ではありません。秘密の保護には使えませんのでご注意ください。
入力したデータは送信されますか?
いいえ。変換はすべてブラウザ内で行われ、入力内容が外部へ送信・保存されることはありません。
末尾の「=」は何ですか?
Base64を4文字単位に揃えるための詰め物(パディング)です。元のデータが3バイトの倍数でないときに1〜2個付きます。たとえば3バイトの「ABC」は QUJD で「=」が付きませんが、5バイトの「Hello」は SGVsbG8= と1個付きます。なお当ツールのデコードは「=」が欠けていても変換できます。
URLセーフBase64(-や_を使う形式)にも対応していますか?
対応していません。当ツールは標準の記号(+ と /)を使う形式です。「-」や「_」を含む文字列をデコードするとエラーになるため、「-」を「+」、「_」を「/」に置き換えてから貼り付けてください。
関連ツール
URLの変換は URLエンコード、JSONの整形は JSON整形 もどうぞ。 2進数・16進数の相互変換は 基数変換、変換後にどれだけ長くなったかの確認は 文字数カウント が便利です。 元に戻せない一方向の変換(チェックサム)が必要なら ハッシュ値の計算 をどうぞ。 URLをそのまま配りたいときは QRコード作成 が使えます。