PGP简介
2016-06-29 22:27
204 查看
1. 简介
PGP(Pretty Good Privacy),是一个基于RSA公匙加密体系的邮件加密软件。可以用它对邮件保密以防止非授权者阅读,它还能对邮件加上数字签名从而使收信人可以确认邮件的发送者,并能确信邮件没有被篡改。它的功能强大,有很快的速度,而且它的源代码是免费的。2. 业务分析
以发送方为例,完整的过程为:签名、压缩、加密。图一 签名过程
- 发送者创建消息。
- 发送者使用SHA-1算法产生消息的160位hash代码。
- 发送者采用RSA算法,使用发送者的私钥KRa对hash代码进行加密,然后将结果附加在消息的头部。
- 接收者使用RSA算法和发送者的公钥KUa解密和恢复hash代码。
- 接收者为消息产生一个新的hash代码,并且与解密后的hash代码进行比较,如果两者匹配,那么消息就是可信的。
图二 加密过程
- 发送者产生一条消息,并为该消息产生一个用作会话密钥的随机的128位数字。
- 使用会话密钥和可靠的算法加密消息。
- 使用接收者的公钥KUb和RSA算法加密会话密钥,并且把结果附加到消息的头部。
- 接收者使用自己的私钥KRb和RSA算法解密和恢复会话密钥。
- 使用会话密钥解密消息。
图三 完整的发送与接收过程
3. 压缩分析
对于EMAIL传输和文件保存来说,压缩有利于节省空间,减少运算并提高安全性。压缩的时机:
PGP在签名后加密前压缩消息。
在压缩前产生签名的原因:
签名未压缩的消息更加可取,可以通过保存未压缩消息的签名来实现将来的验证。
压缩算法的不确定性,会影响hash函数和签名的实现
在压缩后加密消息的原因:
提高密密码的安全性。因为压缩后的消息与最初的明文相比具更少的冗余,所以密码分析就会更困难
4. 电子邮件兼容性
因为邮件系统只允许使用包含ASCII文本的数据块,为了满足这个限制,PGP支持将未加工的8位二进制流通过BASE64编码变成ASCII码,并转换为可打印的ASCII字符流。用于实现这一转换的方案就是radix-64转换。相关文章推荐
- 使用 PGP 保护代码完整性(三):生成 PGP 子密钥
- [Cryptography] KDC, CA, PKI, PGP
- Make PGP messages and signatures more interesting
- 使用GPG对文件进行加密解密批处理
- 一次生成gpg key的过程
- osx中安装gpg
- 使用PGP加密你的文件
- 在Windows下使用Gpg4win对文件进行完整性校验(PGP校验)
- 加密程序PGP背后的故事
- gnupg数字签名与加密详解
- PGP通过outlook express加密mail 推荐
- 邮件安全之使用PGP软件对邮件信息进行加密和签名
- 如何利用PGP构建加密磁盘 推荐
- 如何恢复受损的PGP加密磁盘中NTFS文件内容 推荐
- 9月第3周安全回顾 内网安全威胁严重 PGP增强邮件加密功能
- CA证书服务器(3) 数字签名和消息摘要算法
- 【MAC OS Sierra】PGP邮件加密教程
- [Publish AAR To Maven] 使用GPG对文件进行签名加密
- JAVA 下的 pgp加密解密示例
- JAVA操作PGP非对称加密实践