密码学知识Android开发

PKI/CA工作原理及架构

2017-05-09  本文已影响2649人  ZYJ2016

相关概念

数字签名

图1 数字签名

用发送发私钥生成数字签名、用发送方公钥解密,可以证明消息确实是由公钥拥有者发出的。
两份摘要的比对结果,可以证明消息在传输的过程中是否被改动。

数字证书

数字签名要发挥作用,首先需要接收方获取发送方的公钥。如何证明获取的公钥确实是发送方的公钥而不是假冒的呢?数字证书提供了一种发布公钥的简便方法。

图2 证书的申请、发布、使用 图3 数字证书的生成与验证

简单地来说,把上面的原文换成公钥、身份信息、有效期等其他信息,就是数字证书的生成和验证过程。

使用CA私钥进行签名和解密,可以证明证书确实是由CA发布的;
两份摘要的对比结果,可以证明证书内容是否在传输过程中被改动;
如果消息原文中的公钥和身份信息是CA的,则是CA自签名的过程。

通信过程

数字证书提供了一种发布公钥的简便途径,大家通过向CA申请认证发布自己的公钥,通过向CA验证来确认自己获得了别人的公钥。下图展示了通信双方互相获得公钥以后的通信过程。

图4 通信过程

非对称加密安全性高,但计算量大效率低,因此使用对称秘钥对通信的主要内容进行加密;对称秘钥每次使用随机生成,用完即丢弃,降低风险;
用接收方公钥加密对称秘钥,保证了只有接收方才能对密文进行解密;
用发送发私钥进行签名,使得接收方可以验证消息的发送方和消息是否被修改过,保证了信息的完整性和抗否认性。

PKI/CA架构

完整的PKI/CA系统如下部分:

图5 PKI系统

证书申请过程

证书撤销过程

证书的管理

认证中心CA负责维护和发布证书废除列表CRL(certificate revocation lists,又称为证书黑名单)。
当一个证书,特别是其中的公钥因为其他原因无效时(不是因为到期),CRL提供了一种通知用户和其他应用的中心管理方式。CA系统生成CRL以后,放到LDAP服务器中或Web服务器的合适位置,供用户查询或下载。

上一篇 下一篇

猜你喜欢

热点阅读