PGP是用优秀的公开密钥加密算法的非常安全的程序。它主要提供机密性、完整性和鉴别服务,来确保电子邮件与文件存储的安全。PGP的操作含鉴别、机密性、压缩、电子邮件的兼容性和分段五种服务。
(1)鉴别
PGP的鉴别服务是基于公钥密码体制的数字签名。
(2)机密性
通过加密要传输的消息实现机密性,它是PGP提供的又一个基本信息安全服务。在PGP中,每次只用一次用于对称加密算法的会话密钥,用公钥密码体制来分发密钥。可用的对称密码算法有AES、3DES、IDEA、CAST-128等,非对称算法有ECC、RSA和Dife- Hellman等。
(3)压缩
默认情况下,在签名后、加密前,PGP压缩传递的消息,可助于电子邮件的传输和减小文件存储的空间。
(4)电子邮件的兼容性
PGP至少要加密传输消息的一部分。如果只用签名服务,则消息摘要要加密;如果用机密性服务,则报文与签名共同被加密。这样,经过加密后的消息将由8比特的字节流组成。但许多电子邮件系统只可用ASCI码字符。为确保电子邮件在网络上的畅通,PGP有把原始8比特二进制流转换成ASCⅡ码字符的服务。
为实现这个目标,PGP用的方案是 Radix64转换。每3个字节的二进制数据为一组映射成4个ASCⅡ码字符。它还附带了CRC校验来检查传输错误用 Radix64把消息长度增加了33%,但消息的签名部分较小,且明文已做了压缩。这种压缩足够弥补 Radix-64变换带来的扩展。
(5)分段和重装
最大的消息长度通常限制电子邮件设施,如很多Internet能访问的设施被限制到最大。所有超过此长度的消息都须分成更小的报文段,每个段分开发送。为实现此约束,PGP自动把长报文分成能用电子邮件发送的够小的报文段。
分段在全部其他处理完成后进行,因此在第一个报文段的开始位置,会话密钥和签名部分只出现一次。在接收端,PGP先去除所有的电子邮件首部,并重新组装成原来完整的分组。