Base64エンコード/デコード
テキストをBase64に変換、またはBase64を読めるテキストに戻します。UTF-8(日本語・絵文字・アクセント)に完全対応し、URLセーフなBase64も扱えます。
テキストをBase64に変換し、また元に戻せます。Base64は任意のバイト列をASCII文字だけに置き換える符号化で、バイナリデータがそのままでは転送を壊してしまうデータURI、メールの添付ファイル、APIトークン、設定ファイルなどで使われています。
より需要が多いのはデコードです。JWTのペイロード、Basic認証のヘッダー、APIキー、埋め込まれた画像はすべてBase64として届くため、読み取る必要があります。エンコードはその逆で、どちらの方向もUTF-8に対応しているので、アクセント付きの文字や絵文字も往復して壊れません。
Base64をエンコード・デコードする方法
テキストまたはBase64を貼り付けます
エンコードまたはデコードを選びます
結果をコピーします
よくある質問
UTF-8のテキストに対応していますか?
はい。アクセント付きの文字、CJKのテキスト、絵文字も双方向で正しく処理されます。素朴な実装のエンコーダーではこれらが壊れてしまいます。
デコードしたテキストが壊れて見えるのはなぜですか?
多くの場合、入力が正しいBase64でないか、テキストではなくバイナリファイルだったことを意味します。パディング文字(=)の欠落や、値の途中の改行を確認してください。
画像にも使えますか?
画像ファイルをBase64のデータURIに変換する専用のツールがあります。CSSやHTMLに画像を埋め込むときはそちらを使ってください。
Base64は暗号化の一種ですか?
いいえ。単なる符号化であり、誰でも元に戻せます。秘密の保護としてBase64を当てにしないでください。
サイズの上限はありますか?
上限は端末のメモリです。数メガバイトのテキストも一瞬で処理できます。
データはアップロードされますか?
いいえ。エンコードとデコードはブラウザ内で行われるため、トークンや認証情報を扱う際にも安心です。
概要
| 入力 | テキスト |
|---|---|
| 複数ファイル | いいえ |
| 実行場所 | ブラウザ内で実行 - ファイルはアップロードされません |
| オフラインでも動作 | はい — ページを読み込んだ後 |
| 料金 | 無料・登録不要・透かしなし |
機密情報を安全に扱う
開発者向けツールは、人が思っている以上に頻繁に認証情報を扱います。危険なのはアルゴリズムではなく、データがどこへ行くかです。ハッシュ化は一方向であり、暗号化ではありません。MD5とSHA-1はセキュリティに関わる用途ではすでに破綻しており、パスワードの保存にはSHA-256さえ適切な道具ではありません。bcrypt、scrypt、Argon2は、まさに遅くなるために存在しています。Base64はエンコードであって保護ではありません。誰でもデコードできるので、難読化として扱ってはいけません。JWTは持っている人なら誰でも中身を読めるため、ペイロードに秘密情報を入れてはいけません。また、トークンをデコードしても署名は検証されません。検証には鍵が必要です。このサイトのすべてはブラウザ内でローカルに動作するため、トークンやパスワードを安全に扱えるのです。
変換が静かに壊れるところ
変換のバグの多くは構文ではなく意味の問題です。郵便番号のCSV列は、表計算ソフトが数値だと推測した瞬間に先頭のゼロを失います。長いIDは浮動小数点の精度を超えてしまいます。日付は、日が先か月が先かによって意味が変わります。JSONのキーには順序がありませんが、配列にはあります。キーを並べ替えるツールは何も変えませんが、配列を並べ替えるツールはデータを変えてしまいます。Unicodeも落とし穴です。テキストはUTF-8やUTF-16、あるいはBOM付きで届くことがあり、推測を誤ったデコーダーはアクセント付きの文字を文字化けに変えてしまいます。変換を信用する前に、最初と最後の行、先頭にゼロがあるフィールド、引用符・カンマ・改行を含むフィールドを抜き取り検査してください。