本文へスキップ
ecdsa.com

ASCII アーマー

OpenPGP のバイナリパケットを、-----BEGIN PGP PUBLIC KEY BLOCK----- や -----END PGP PUBLIC KEY BLOCK----- などの行で挟んだ base64 として表すテキストエンコーディングです(RFC 9580 §6.2)。
別表記ASCII armorarmoredBEGIN PGPcleartext signature

ブロックの種類には、PGP MESSAGE、PGP PUBLIC KEY BLOCK、PGP PRIVATE KEY BLOCK、PGP SIGNATURE、そして -----BEGIN PGP SIGNED MESSAGE----- で始まるクリアテキスト形式(§7)があります。先頭行の後には任意のアーマーヘッダーが続き、任意の CRC24 チェックサム行は = で始まります。RFC 9580 は、新しいアーマーにはチェックサムを含めるべきではなく、読み取り側はチェックサムを理由にアーマーを拒否してはいけないとしています。

PEM に似ていますが、別の形式です。PEM のラベルが ASN.1 の構造を示すのに対し、アーマーは OpenPGP のパケット列を示し、一方のツールではもう一方を解析できません。クリアテキスト署名されたメッセージでは、- で始まる行がダッシュエスケープされ、ハッシュ計算時には行末の空白が無視されます。これはよくある混乱の原因です。

規格と参考文献

すべての用語