メインコンテンツへスキップ
開発者向けツール

Base64エンコード・デコード(オンライン)

テキストをBase64にエンコード、またはデコード。日本語や絵文字も、トークンに使われるURLセーフなBase64も扱え、画像をデータURIに変換することもできます。

テキスト
結果

ここに結果が表示されます

くわしく知る

Base64:知っておきたいこと

Base64に出会う場面

メールの添付ファイル、HTMLやCSSのデータURI、HTTPのBasic認証のヘッダー、JWTの各部分、Kubernetesのシークレット、JSONのバイナリフィールドなど、どれもBase64のテキストでデータを運んでいます。中身を見たいときはデコードし、普通のテキストしか入れられない場所に値を貼りたいときはエンコードしましょう。

形式の違い、UTF-8、バイナリデータ

デコーダーは、標準のBase64も、JWTのようなURLセーフなBase64(+と/の代わりに-と_)も、=のパディングがあってもなくても、複数行に分かれていても読み込めます。テキストはUTF-8として読むので、日本語、アクセント、絵文字もそのまま戻ります。中身がテキストではなくファイル(画像、PDFなど)の場合は、そう表示されます。Base64は暗号化ではなくエンコードなので、誰でもデコードできます。

Base64エンコードのしくみ

Base64は、3バイト(24ビット)ずつのまとまりを、6ビットずつの4つのグループに分けます。6ビットのグループは、それぞれ64種類の表示可能なASCII文字のどれかに対応します。入力の長さが3で割り切れないときは、パディングの文字(=)が追加されます。

たとえば「Hi」というテキスト(2バイト:0x48 0x69)は、Base64では「SGk=」になります。=は、最後のグループを埋めるために1バイトのパディングが必要だったことを示しています。

Base64とBase64urlの違い

標準のBase64は、URLで特別な意味を持つ+と/の文字を使います。Base64urlは、これらをそれぞれ-と_に置き換えているので、追加のエンコードなしで、URLやファイル名に安全に使えます。

たとえばJWTトークンはBase64urlを使っています。URLやファイル名に入れる値をエンコードするときは「URL用」をオンにしてください。結果は-と_を使い、末尾の=を省きます。デコードは、どちらの形式も設定なしで読み取れます。

使い方

Base64エンコード・デコードは3ステップ

  1. モードを選ぶ

    テキストを変換するなら「テキスト ↔ Base64」、画像ファイルをデータURIにするなら「画像をBase64に」を選びます。

  2. 内容を入力・ドロップする

    テキストモードでは、テキストかBase64の文字列を貼り付けます。画像モードでは、画像ファイルをドラッグ&ドロップするか、クリックして選びます。

  3. 結果をコピーする

    入力に合わせて結果が表示されるので、「コピー」ボタンでコピーします。画像の場合は、データURI全体か、Base64の文字列だけをコピーできます。

活用ガイド

Base64エンコードを使いこなすコツ

しくみ

テキストをBase64にエンコード、またはBase64をテキストにデコードできます。UTF-8(アクセント、絵文字、あらゆる言語)に完全対応し、画像をデータURIに変換することもできます。

デコーダーは、標準のBase64もURLセーフなBase64(JWTのような)も、=のパディングがあってもなくても、複数行に分かれていても読み込め、中身がテキストではなくファイルの場合はそう教えてくれます。

かんたん・すばやい

プライバシーと安全性

ファイルやデータが端末の外に出ることはありません。処理はすべてブラウザ内で行われます。

認証ヘッダーや秘密情報はBase64になっていることがよくあります。ここでデコードしても、どこにも送られません。

ブラウザ内で完結
よくある質問

Base64エンコード・デコードのよくある質問

Base64エンコード・デコードツールについて知っておきたいこと