Ascii85 / Base85 エンコーダー & デコーダー
開発
Ascii85(Base85 とも)は 4 バイトを 5 つの印刷可能 ASCII 文字にまとめ、Base64 より約 7% コンパクトでありながらテキストセーフです。PDF ストリーム(ASCII85Decode フィルタ)や PostScript の内部で使われる二進→テキストエンコーディングで、小さなバイナリをソースや設定に埋め込むのにも便利です。本ツールは UTF-8 テキストや生の hex バイトを Ascii85 にエンコードし、デコードして戻します。Adobe/PDF 版は出力を <~ … ~> 区切りで囲み、全ゼロの 4 バイトグループを単一の 'z' に圧縮します。素の版は文字ストリームのみを出力します。デコードは寛容で — z 短縮と任意の区切りをどちらも受け入れます — 各グループを検証し、切り詰められた 1 文字の末尾や 32 ビットを超えるグループを拒否します。すべてローカルで動作し、アップロードされません。
Adobe/PDF は <~ ~> と z ゼロ短縮を追加します。デコードは両バリアントを受け付けます。文字セットは ! ~ u(および z)。
使い方
- エンコードまたはデコードを選択。
- Adobe/PDF か素の版、データが UTF-8 テキストか hex バイトかを選択。
- 入力欄に入力・貼り付けて結果をコピー。
よくある質問
- Ascii85 は Base64 とどう違いますか?
- どちらもバイトを印刷可能 ASCII にしますが、Ascii85 は 85 文字で 4 バイトを 5 文字に(サイズ 25% 増)、Base64 は 64 文字で 3 バイトを 4 文字に(33% 増)エンコードします。Ascii85 の出力はやや小さい反面、一部の文脈でエスケープが必要になりうる記号文字を多く使います。
- 'z' は何をしますか?
- Adobe 版では、全ゼロの 4 バイトグループが '!!!!!' ではなく単一の 'z' として書かれ、ゼロが連続するデータで容量を節約します。グループ間でのみ有効で、グループ内には置けません。素の版は 'z' を出力しません。本ツールのデコーダは版に関係なく常に 'z' を理解します。
- <~ と ~> のマーカーは何ですか?
- エンコードブロックの開始と終了を示す Adobe Ascii85 区切りです(PDF は ~> をデータ終端マーカーに使用)。Adobe 版はエンコード時にこれを付け、デコーダは存在すれば自動的に取り除くため、PDF/PostScript の Ascii85 をそのまま貼り付けられます。
- なぜデコードが失敗しましたか?
- Ascii85 は '!'(0x21)から 'u'(0x75)までの文字と 'z' のみを使います。その範囲外の文字、文字が 1 つだけの最終グループ(どの完全なバイトも表現できない)、値が 0xFFFFFFFF を超える 5 文字グループは無効で、エラーとして報告されます。
関連ツール
Base64 ↔ 16進数 変換
Base64 文字列を16進数バイトに、16進数を Base64 に戻します。URL セーフ対応、ブラウザ上で動作します。
Quoted-Printable エンコーダー & デコーダー
テキストを MIME Quoted-Printable(RFC 2045)にエンコード、または復号 — =XX エスケープ・ソフト改行・UTF-8 に対応、エンコード時は 76 文字で折り返し — ブラウザ内で。
ハッシュ生成 (SHA)
テキストから SHA-1・SHA-256・SHA-384・SHA-512 ハッシュを生成。
URL エンコーダー / デコーダー
URL 用にテキストをパーセントエンコード、または URL をデコード。
Base64 エンコーダー / デコーダー
テキストを Base64 にエンコード、または Base64 をテキストにデコード。
JSON フォーマッター & バリデーター
ブラウザで JSON を整形・並べ替え・圧縮・検証できます。