Base64変換|テキストとBase64を相互変換
テキストをBase64にエンコード、またはBase64をテキストにデコードします。絵文字や日本語などのUTF-8マルチバイト文字も正しく変換でき、URLセーフ版(JWTやURLパラメータ向け)にも対応。入力した内容はブラウザの中だけで処理され、外部には送信されません。
入力した内容はブラウザの中だけで処理され、どこにも送信されません。
使い方
- 「変換方向」でエンコード(テキスト→Base64)かデコード(Base64→テキスト)かを選びます。
- 入力欄にテキストまたはBase64文字列を貼り付けます。変換結果はボタン操作なしでその場に表示されます。
- URLやJWTに埋め込む場合は「URLセーフ版を使う」をオンにし、結果を「出力をコピー」でコピーします。
計算・変換の根拠
エンコードの仕組み
入力したテキストをUTF-8のバイト列に変換したうえで、RFC 4648で定義された標準Base64アルファベット(A–Z・a–z・0–9・+・/)を使って符号化します。バイト数が3の倍数でない場合は=でパディングします。
デコードの仕組み
Base64文字列をバイト列に復号し、UTF-8として解釈してテキストに戻します。コピー時に混入しやすい空白・改行は自動的に無視します。標準版(+ /)とURLセーフ版(- _)のどちらの文字が使われていても、混在していなければ自動的に判別してデコードします。
URLセーフ版について
URLセーフ版は、標準のBase64で使われる+と/をそれぞれ-と_に置き換え、末尾のパディング(=)を省略したものです(RFC 4648 §5)。URLのクエリパラメータやJWT(JSON Web Token)など、+や/がそのままでは使えない場所に埋め込む際に使われます。
対応する文字の範囲
絵文字を含むすべてのUnicode文字(UTF-8で表現できる範囲)を正しくエンコード・デコードできます。改行やタブなどの制御文字もそのまま往復します。
上限について
入力は500万文字までに対応しています。それを超える入力はエラーとして扱われ、変換は行われません。
エラーになる場合
デコード時に、Base64のアルファベットに含まれない文字が混ざっている場合や、復号結果が正しいUTF-8のバイト列にならない場合はエラーになります。コピー元のBase64文字列が途中で切れていないか確認してください。
よくある質問
入力した内容はサーバーに送信されますか?
送信されません。エンコード・デコードの処理はすべてお使いのブラウザの中だけで行われ、サーバーへの通信は発生しません。
日本語や絵文字も正しく変換できますか?
はい。入力はUTF-8として扱われるため、日本語・絵文字を含むほとんどのUnicode文字を正しくエンコード・デコードできます。
URLセーフ版のBase64とは何ですか?
標準のBase64で使われる「+」と「/」をそれぞれ「-」と「_」に置き換え、末尾の「=」パディングを省略した形式です。URLのパラメータやJWT(JSON Web Token)など、「+」や「/」がそのまま使えない場所に埋め込みたいときに使います。「URLセーフ版を使う」をオンにすると、この形式で出力・入力できます。
デコードでエラーになるのはどんなときですか?
Base64のアルファベットに含まれない文字が混ざっている場合、文字列の長さが正しいBase64として成立しない場合、または復号した結果が正しいUTF-8のバイト列にならない場合にエラーになります。コピーする際に文字列の一部が欠けていないか確認してください。
画像やファイルもBase64に変換できますか?
現在のバージョンはテキストのみに対応しています。画像・ファイルのBase64変換(Data URI化)は今後の対応候補としています。
関連ツール
- CSV整形・列操作CSVの列を抽出・並べ替え・結合します。「姓」と「名」を結合して「氏名」列を作る、といった名簿・経理データの前処理に使えます。入力したデータはブラウザの中だけで処理され、どこにも送信されません。
- CSV⇔JSON変換CSVとJSONを相互に変換します。列見出しをドット記法(例: user.name)にすると、ネストしたオブジェクトや配列にも対応します。入力したデータはブラウザの中だけで処理され、どこにも送信されません。
- JWTデコーダー|ヘッダ・ペイロードをブラウザ内で確認(署名検証なし)JWT(JSON Web Token)を貼り付けると、ヘッダとペイロードをその場でデコードして表示します。署名の検証は行いません。入力したトークンはブラウザの中だけで処理され、外部には送信されません。
- 数値→漢数字・大字変換算用数字を大字(壱・弐・参…)と通常の漢数字(千二百三十四…)に変換します。祝儀袋・契約書・領収書の金額記載に。ブラウザ内だけで処理するため、入力した数値はどこにも送信されません。
- ツール一覧