PGP原理及流程分析(Pretty Good Privacy)

PGP(Pretty Good Privacy)是一种结合了散列、数据压缩、对称加密和公钥加密的加密技术,用于确保消息的完整性和来源验证。加密流程包括:散列处理、公钥数字签名、证书创建、对称加密、公钥构造数字信封,最终形成PGP加密信息。此外,PGP也可采用SM2、SM3、SM4等国密算法实现相同功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


什么是PGP?


PGP(Pretty Good Privacy)加密,由一系列散列、数据压缩、对称密钥加密,以及公钥加密的算法组合而成,每个步骤支持几种算法。

PGP支持消息认证和完整性检测:

完整性检测被用来检查消息在传输过程中是否变更过(即验证消息完整性);

消息认证则是被用来决定消息是否确由某特定的人或实体发出(即数字签名验证)。

在PGP中,这些特性默认是和消息加密同时开启的,而且同样可以被应用到明文的验证。

发送者只需使用PGP为消息创建一个数字签名,即以数据或信息创建一个散列,然后使用发送者的私钥利用散列生成数字签名。


PGP加密流程


PGP Cryptographic  Function
PGP Cryptographic Function

假设在一个数据 M M M传输的过程中,发送者为 A A A、接受者为 B B B,公私钥对 ( p k , r k ) (pk, rk) (pk,rk),会话密钥 s k sk sk

散列函数(哈希函数)用 H H H代替,公钥密码算法以 R S A RSA RSA为例,对称加密算法以 A E S AES AES为例

1️⃣数据经过散列处理 H H H形成摘要: H ( M ) H(M) H(M)
2️⃣用公钥密码算法 R S A RSA RSA对摘要数字签名: s i g R S A − r k A ( H ( M ) ) sig_{RSA-rk_A}(H(M)) sigRSArkA(H(M))
3️⃣链接数据与数字签名得到证书,(并进行压缩,压缩可省略): s i g R S A − r k A ( H ( M ) ) ∣ ∣ M sig_{RSA-rk_A}(H(M))||M sigRSArkA(H(M))M
4️⃣对称加密算法 A E S AES AES加密前一步得到的证书: A E S s k ( s i g R S A − r k A ( H ( M ) ) ∣ ∣ M ) AES_{sk}(sig_{RSA-rk_A}(H(M))||M) AESsk(sigRSArkA(H(M))M)
5️⃣公钥密码算法 R S A RSA RSA构造数字信封,封装密钥: R S A p k B ( s k ) RSA_{pk_B}(sk) RSApkB(sk)
6️⃣链接,完成PGP加密: R S A p k B ( s k ) ∣ ∣ A E S s k ( s i g R S A − r k A ( H ( M ) ) ∣ ∣ M ) RSA_{pk_B}(sk)||AES_{sk}(sig_{RSA-rk_A}(H(M))||M) RSApkB(sk)AESsk(sigRSArkA(H(M))M)


✔ 除了上述利用 H 、 R S A 、 A E S H、RSA、AES HRSAAES的PGP加密原理应用,还可以用 S M 2 、 S M 3 、 S M 4 SM2、SM3、SM4 SM2SM3SM4构建一个同样具有机密性和认证服务的文件传输方案

S M 2 p k B ( s k ) ∣ ∣ S M 4 s k ( s i g S M 2 − r k A ( S M 3 ( M ) ) ∣ ∣ M ) SM2_{pk_B}(sk)||SM4_{sk}(sig_{SM2-rk_A}(SM3(M))||M) SM2pkB(sk)SM4sk(sigSM2rkA(SM3(M))M)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值