我想将我的公钥上传到密钥服务器,但我的密钥基础结构已经到位,无需 GPG,而且我不想安装不需要的额外软件。有没有一种简单的方法可以对我的公钥进行 ASCII 保护,而无需安装整个 GnuPG 软件套件?
答案1
OpenPGP 的“Radix-64” ASCII 装甲,描述于RFC 4880§6,主要是标准 Base64 加上类似 PEM 的开始/结束标头,并在末尾加上 CRC24 校验和。它可以像这样实现:
写入 Armor Header Line;可选的 Armor Headers;以及一个空白行:
-----BEGIN PGP PUBLIC KEY BLOCK----- Version: conradpgp v1.0 (leave this line empty)
编写 Base64 编码的消息,每行 76 个字符。
写入校验和行,由
=
后面跟着 Base64 编码的 Armor Checksum 组成:校验和是一个 24 位循环冗余校验 (CRC),
通过相同的 MIME base64 转换转换为四个 radix-64 编码字符
,前面有一个等号 (=)。CRC 是
使用生成器 0x864CFB 和初始化 0xB704CE 计算的。
累加是在数据转换为 radix-64 之前进行的,而不是在转换后的数据上进行的。 此算法的
一个示例实现是
在下一节中。(看第6.1节对于示例 CRC24 代码。)
最后,写一下铠甲尾部:
-----END PGP PUBLIC KEY BLOCK-----