Ascii85 エンコード・デコード
テキストを Ascii85(Base85)へエンコード、または Ascii85 をテキストへデコード。Adobe <~ ~> ラップ、ゼロ圧縮 z、RFC 1924(IPv6)変種に対応し、すべてブラウザ内で完結します。
Ascii85(Base85)とは何ですか?
Ascii85 は 4 バイトを 5 個の印刷可能な ASCII 文字に詰めるバイナリ→テキスト変換で、各グループをビッグエンディアンの 85 進数として扱います。btoa ユーティリティで生まれ、Adobe が採用したため Base85 とも Ascii85 とも呼ばれます。
Ascii85 は実際どこで使われていますか?
PDF や PostScript ファイルの画像・ストリームに組み込まれ、Adobe 製品で利用され、Git のバイナリパッチにも使われ、RFC 1924 が定義する IPv6 特有の形式でも登場します。証明書や文書フォーマットの一部でも Base64 の代替として受け入れられています。
エンコードはどのように行われますか?
データは 4 バイトずつのグループで処理されます。各グループは 32 ビット数として読まれ、! から u までの文字で 85 進 5 桁として書かれます。末尾の不完全なグループは埋めた後、表すバイト数より 1 つ多い文字数に切り詰められるため、出力の増加は Base64 の 33% に対し約 25% です。
z ショートカットの役割は?
Adobe 変種では、連続する 4 つのゼロバイトは !!!!! の代わりに 1 文字の z としてエンコードされ、長いヌル列をうまく圧縮します。デコーダはグループ途中の z を拒否しなければならず、RFC 1924 には z 圧縮がまったくありません。z が通常の数字としてアルファベットに含まれるためです。
<~ と ~> の区切りとは何ですか?
Adobe PostScript は Ascii85 データを <~ と ~> で挟み、デコーダが文書内の符号化ブロックを見つけられるようにします。ここではラップは任意です。オフにすれば裸の文字列になり、デコードはオン・オフに関係なく区切りを許容します。
Base85 と Base64 の比較は?
Base85 は 4 バイトを 5 文字(25% 増)に、Base64 は 3 バイトを 4 文字(33% 増)にするため、Ascii85 のほうがややコンパクトです。ただしアルファベットに引用符・バックスラッシュ・アンパサンドが含まれ、JSON、XML、URL、シェル文字列ではエスケープが必要です。そうした場面では Base64 のほうが安全です。
RFC 1924 変種とは何ですか?
RFC 1924 は、IPv6 アドレスを固定 20 文字で表すための、0-9、A-Z、a-z と 23 個の記号からなる Base85 アルファベットを定義します。このツールではそのアルファベットを任意のテキストにも使えます。z ショートカットも <~ ~> ラップもありません。
テキストはどこかに送信されますか?
いいえ。エンコードとデコードはすべてブラウザ内の JavaScript で実行されます。貼り付けた内容がサーバーに送られることはないため、機密性の高い内容でも安心して使えます。
デコード時に無効な文字列と表示されるのは?
すべての文字は選択したアルファベット(Adobe: ! から u と z、RFC 1924: 固有の 85 記号)に属する必要があり、完全なグループは 2^32 未満の値を表し、1 文字だけ残ったグループは意味を持ちません。これらのいずれかがあれば、文字化けを出す代わりに明確なメッセージとともに変換を停止します。
Ascii85 エンコード・デコードの使い方
Ascii85(Base85)は 4 バイトを 5 つの印字可能文字に詰め込む方式で、Base64 より約 25% コンパクトになります。PDF や PostScript ファイル内の画像やストリーム、Git のバイナリパッチ、特殊な IPv6 表記に使われています。このツールはテキストと Ascii85 を双方向に変換し、Adobe btoa 方式(<~ ~> ラッパーとゼロ圧縮 z)と RFC 1924 の IPv6 アルファベットに対応。すべてブラウザー内でローカルに処理されます。
- 方向を選びます。エンコードはテキスト → Ascii85、デコードは Ascii85 → テキスト。
- 変種を選びます。Adobe (btoa) は ! から u までの文字を使い、任意の <~ ~> ラッパー(下のトグル)に対応し、4 つのゼロバイトを 1 つの z に圧縮します。RFC 1924 は IPv6 アルファベット(0-9A-Za-z と 23 記号)を使い、z の短縮はありません。
- 入力ボックスにタイプまたは貼り付けます。入力に合わせて結果がリアルタイムで更新されます。不正な文字や壊れたグループは、文字化けではなく明確なエラーで知らせます。
- 「入れ替え」で出力を入力に戻して方向を反転、「コピー」で結果をクリップボードに送ります。
デコードは空白を無視し、ラッパーのトグルがオフでも <~ ~> 区切りを受け付けます。PDF ファイルからストリームをそのままコピーするときに便利です。
関連ツール
- Base64 エンコード/デコード 無料オンラインBase64エンコーダーとデコーダー。テキストをBase64に、Base64をテキストに即座に変換。サーバーへのアップロードなし、100%プライベート。
- Base32 エンコーダー デコーダー テキストをBase32に即座にエンコード、またはBase32をテキストにデコード。100%ブラウザ完結、データアップロードゼロ。RFC 4648準拠。TOTPシークレット、OTPキー、QRコードデータ、バイナリからテキスト変換に最適。
- 16進数からテキスト 16進数文字列を即座に読み取り可能なテキストに変換。複数のフォーマットに対応し、16進数の値をASCIIまたはUTF-8テキストにデコードします。
- Hexビューアー 検索、オフセットナビゲーション、仮想スクロール付きのHexダンプ形式でファイル内容を表示
- AES暗号化/復号 AES暗号化/復号ツール、CBC/CFB/CTR/OFB/ECBモード、Pkcs7/ZeroPadding/NoPadding、128/192/256ビット鍵、Base64出力、鍵/IV形式自動検出
- Brotli 圧縮ツール 無料オンライン Brotli 圧縮ツール。品質 0〜11 でファイルを .br に圧縮、または .br を元に戻せます。ブラウザ内で完結 — アップロード不要・インストール不要。
- Zstd 圧縮ツール 無料オンライン zstd 圧縮ツール。Zstandard レベル 1〜19 でファイルを .zst に圧縮、または .zst を元に戻せます。ブラウザ内で完結 — アップロード不要・インストール不要。
- MessagePack 変換ツール 無料オンライン MessagePack 変換ツール。JSON を msgpack にエンコード、hex・base64・.bin ファイルを読みやすい JSON にデコード、サイズ比較付き。アップロード不要、ブラウザ内で完結。