Base64ファイルエンコーダー
Base64は、あらゆるバイナリファイルを印字可能なASCII文字列へ変換します。これにより、JSON、YAML、メール本文、SMS、チャットへのコピー&ペーストなど、テキストだけを想定したシステムを通過できます。このエンコーダーはPDF、画像、ZIP、さらには実行ファイルまで任意のファイルを受け取り、data: URIやAPIのペイロード、設定ファイルにそのまま入れられるBase64表現を返します。
ファイルをエンコードする方法
-
1
任意のファイルをエンコーダーへドロップ
すべてのバイナリ形式に対応します。ブラウザが生のバイト列を読み取ります。
-
2
バイト列がBase64でエンコードされる
3バイトごとに、アルファベット`A-Z a-z 0-9 + /`から4つのASCII文字になります。
-
3
出力形式を選ぶ
プレーンなBase64、ブラウザーが報告したMIMEタイプ(未指定時は汎用値)付きの`data:` URI、またはJSON文字列として安全な形式から選べます。
-
4
テキストとしてコピーまたはダウンロード
大きいファイルは`.txt`としてダウンロードし、小さいものはクリップボードへコピーします。
サイズのオーバーヘッド
Base64は3バイトを4文字へ膨らませるため、保存容量とネットワークコストが33%増えます。=によるパディングがさらに数バイトを加えます。おおまかな目安は次のとおりです。
| 入力ファイルのサイズ | Base64テキストのサイズ |
|---|---|
| 1 KB | 1.33 KB |
| 100 KB | 133 KB |
| 1 MB | 1.33 MB |
| 10 MB | 13.3 MB |
大きいバイナリファイルをHTMLやJSONにBase64で埋め込むと、ページの読み込みとパーサーのメモリをすぐに膨らませてしまいます。約10 KBを超えるものは、配信上の制約でどうしても必要な場合だけインラインにしてください。
よくある用途
- データURI, CSSやHTML内の小さなインライン画像:
url("data:image/png;base64,iVBORw0KGgo...")。 - メールの添付, MIMEマルチパート本文では、SMTPで安全に運ぶため添付ファイルをBase64でエンコードします。
- JSONのペイロード, 1回のAPIリクエストで済ませるため、PDFやZIPをJSONのフィールドへ埋め込む場合。
- YAML/設定ファイル, TLS鍵や小さなバイナリデータを設定ファイル内で運ぶ場合。
変種とパディング
RFC 4648の標準Base64アルファベットは、A-Z、a-z、0-9、+、/の64記号です。=はアルファベットの一部ではなく、パディングです。URLセーフな出力(+を-、/を_に置換)には専用の切り替えを使います。パディングは既定で含まれ、無効化できます。
プライバシーについて
ファイルは端末から外に出ません。FileReader APIがブラウザ内でバイト列を読み取り、JavaScriptがエンコードを行います。機密PDF、秘密鍵、未公開素材をエンコードするときに重要です。
よくある質問
エンコーダーで扱えるのは50 MB以下のファイル1つです。Base64の出力は元のファイルより大きく、ブラウザーのメモリに保持されるため、この上限によって過剰なメモリ使用を防ぎます。
URLやファイル名に適したアルファベットが必要な場合に使います。URLセーフなBase64(RFC 4648の5節)は+を-に、/を_に置き換えます。末尾の=を残すかどうかは、別のパディング設定で選べます。
data: URI出力の場合だけ重要です。data:image/png;base64,...は、デコードしたバイト列をどう表示するかをブラウザに伝えます。プレーンなBase64やJSONへの埋め込みでは、MIMEタイプはエンコード済みデータの一部ではありません。
HTMLにはdata:application/pdf;base64,... URLを記述できますが、最新のブラウザーではdata: URLへのトップレベル遷移がブロックされることが多く、ダウンロードの動作もブラウザー間で安定しません。大きな値はURL、メモリ、Content Security Policyの制限に達する場合もあります。確実にダウンロードさせるには、ブラウザーコードでBlobのオブジェクトURLを作成するか、HTTPSでホストしたファイルへリンクしてください。
関連ツール
GweiからEtherへの変換ツール
Gwei単位の金額をEther(ETH)に最大18桁の小数で変換します。ガス料金の推定や取引データの読み取りに役立ちます。
HMACジェネレーター
メッセージと秘密鍵から、API認証やWebhook向けのHMAC署名(SHA-256、SHA-384、SHA-512、SHA-1、MD5)を生成します。
暗号化識別子
暗号文またはハッシュ値を貼り付けると、識別子からMD5、SHA、bcrypt、AES、RSA、Base64などの推定されるアルゴリズムや符号化方式が示されます。
ハッシュジェネレーター
テキストからMD5、SHA-1、SHA-256、SHA-384、SHA-512、CRC32のハッシュを生成。チェックサムや比較にそのまま使えるダイジェストをコピーできます。
JWTジェネレーター
カスタムのヘッダー、ペイロードのクレーム、HMACまたはRSA署名、有効期限、オーディエンス制限を備えた、署名済みJWTをテスト用に生成します。
チェックサム検証
任意のファイルやテキストの MD5、SHA-1、SHA-256、SHA-384、SHA-512、CRC-32 チェックサムを計算し、公開者が掲載している値と比較して一致・不一致を明確に判定します。
このツールは他の言語でも利用できます
- Base64-Datei-Encoder [DE]
- ตัวเข้ารหัสไฟล์ Base64 [TH]
- Koder plików Base64 [PL]
- Codificador de archivos Base64 [ES]
- Encoder File Base64 [ID]
- Bộ mã hóa tệp Base64 [VI]
- مشفر ملفات Base64 [AR]
- Codificador de Arquivos Base64 [PT]
- Encodeur de fichiers Base64 [FR]
- Base64 파일 인코더 [KO]
- Base64-filencoder [SV]
- Base64-bestandsencoder [NL]
- Codificatore di file Base64 [IT]
- Кодировщик файлов Base64 [RU]
- Base64 Dosya Kodlayıcı [TR]
- Base64 文件编码器 [ZH]
- Base64 File Encoder [EN]