Base64 デコーダー

Base64 や base64url を読める UTF-8 テキストにデコードし、生のバイト列を 16 進で表示することもできます。パディングなし、空白、data: URI 接頭辞にも対応。

40 文字 · 40 バイト(UTF-8)

0 文字 · 0 バイト(UTF-8)

すべてブラウザ内で実行されます。データがアップロードされることはありません。

Base64 デコードとは?

Base64 の文字列を元のデータに戻します。標準と URL セーフの両方のアルファベットに対応し、= パディングの有無を問わず、スペースと改行は無視され、data:...;base64, の接頭辞は自動的に取り除かれます。バイト列は UTF-8 のテキストとして表示され、バイナリの場合は 16 進で表示されます。

Base64 デコードの使い方

  1. Base64 の文字列を 入力 に貼り付けます。
  2. デコードされたテキストを 出力 で確認します。入力に合わせて更新されます。
  3. 「not valid UTF-8」というメッセージが出た場合は、出力形式 を 16進バイト列 にして生のバイト列を表示します。
  4. コピー または 入力に使う(再エンコード用)を使います。

例

入力
WGluIGNow6BvIPCfkYs
出力
Xin chào 👋

URL セーフでパディングなしの入力も、そのまま受け付けます。

Base64 デコードを使うべき場面

API のレスポンス、JWT の各部分、メールのソース、Kubernetes の Secret、設定ファイルにある Base64 を読むときに使います。Base64 がファイル(画像、PDF、ZIP)を表している場合は、ファイル形式を判定してダウンロードもできる Base64 ファイルのデコード ツールを使ってください。

Base64 デコードの仕組み

空白とデータ URI の接頭辞を取り除いた後、各文字を 6 ビットの値に戻します(+/- = 62、//_ = 63)。ビットは 8 ビットのバイトに組み直され、末尾の = は最後のグループが何バイトかを示すだけです。無効な文字、あり得ない長さ(余りが 1 文字)、誤った位置のパディングは、黙って誤った出力を返すのではなくエラーになります。バイト列は厳密な UTF-8 としてデコードされます(fatal: true の TextDecoder)。

一般的な使用例

  • JWT のヘッダーやペイロードの中の JSON を読む
  • Kubernetes の Secret の値を確認する
  • HTTP Basic 認証ヘッダーをデコードする
  • base64url トークンの中身を確認する
  • デバッグのためにバイナリデータを 16 進バイト列で見る

セキュリティ注意事項

デコードはローカルで実行されます。機密情報には注意してください。Base64 でエンコードされたものは、それを持つ誰でも読めます。

よくある質問

足りない = パディングを追加する必要はありますか?

いいえ。入力ではパディングは任意で、デコーダーが長さを自分で判断します。

「not valid UTF-8 text」と表示されるのはなぜですか?

デコードされたバイト列がテキストではない(たとえば画像や圧縮データ)か、別の文字セットでエンコードされたテキストです。出力形式 を 16進バイト列 に切り替えるか、Base64 ファイルのデコードツールを使ってください。

JWT の base64url をデコードできますか?

はい。+ と / に加えて - と _ も受け付けます。

他のカテゴリを見る