目录
CA
CA(Certificate Authority)是证书的签发机构。
- CA是负责签发证书、认证证书、管理已颁发证书的机关。它要制定具体步骤来验证、识别用户身份,并对用户证书进行签名,以确保证书持有者的身份和公钥的拥有权。
- CA 也拥有一个证书(内含公钥)和私钥。网上的公众用户通过验证 CA 的签名从而信任 CA ,任何人都可以得到 CA 的证书(含公钥),用以验证它所签发的证书。
对于用户:
- 如果用户想得到一份属于自己的证书,他应先向 CA 提出申请。在 CA 判明申请者的身份后,便为他分配一个公钥,并且 CA 将该公钥与申请者的身份信息绑在一起,并为之签字后,便形成证书发给申请者。
- 如果一个用户想鉴别另一个证书的真伪,他就用 CA 的公钥对那个证书上的签字进行验证,一旦验证通过,该证书就被认为是有效的。
数字证书
数字证书实际是由证书签证机关(CA)签发的对用户的公钥的认证。
证书的内容包括:电子签证机关的信息、公钥用户信息、公钥、权威机构的签字和有效期等等。目前,证书的格式和验证方法普遍遵循X.509 国际标准。
公钥与私钥
数字证书在用户公钥后附加了用户信息及CA的签名。公钥是密钥对的一部分,另一部分是私钥。公钥公之于众,谁都可以使用。私钥只有自己知道,由公钥加密的信息只能由与之相对应的私钥解密。
为确保只有某个人才能阅读自己的信件,发送者要用收件人的公钥加密信件;收件人便可用自己的私钥解密信件。同样,为证实发件人的身份,发送者要用自己的私钥对信件进行签名;收件人可使用发送者的公钥对签名进行验证,以确认发送者的身份。
| 秘钥对 | 原始信息 | 签名 |
|---|---|---|
| 公钥 | 加密 | 验证签名的真实性 |
| 私钥 | 解密 | 对信息进行签名 |
对称加密和非对称加密
对称加密简单理解就是加密秘钥和解密秘钥是同一个秘钥,反之非对称加密的加密秘钥和解密秘钥不是同一个
| 对称加密 | 非对称加密 | |
|---|---|---|
| 加密速度 | 快 | 慢 |
| 安全性 | 低 | 高 |
所以在实际生产中考虑到加密速度一般使用对称加密对原文信息进行加密和解密,使用非对称加密对对称加密的秘钥进行加密解密
网络通信中信息加密流程
工作原理:
现在假设客户A向银行B传送数字信息,为了保证信息传送的真实性、完整性和不可否认性,需要对要传送的信息进行数字加密和数字签名,其传送过程如下:
1)客户A准备好要传送的数字信息(明文)。(准备明文)
2)客户A对数字信息进行哈希(hash)运算,得到一个信息摘要。(准备摘要)
3)客户A用自己的私钥(SK)对信息摘要进行加密得到客户A的数字签名,并将其附在数字信息上。 (用私钥对数字信息进行数字签名)
4)客户A随机产生一个加密密钥(DES密钥),并用此密钥对要发送的信息进行加密,形成密文。 (生成密文)
5)客户A用双方共有的公钥(PK)对刚才随机产生的加密密钥进行加密,将加密后的DES密钥连同密文一起传送给乙。(用公钥对DES密钥进行加密)
6)银行B收到客户A传送过来的密文和加过密的DES密钥,先用自己的私钥(SK)对加密的DES密钥进行解密,得到DES密钥。(用私钥对DES密钥解密)
7)银行B然后用DES密钥对收到的密文进行解密,得到明文的数字信息,然后将DES密钥抛弃(即DES密钥作废)。(解密文)
8)银行B用双方共有的公钥(PK)对客户A的数字签名进行解密,得到信息摘要。银行B用相同的hash算法对收到的明文再进行一次hash运算,得到一个新的信息摘要。 (用公钥解密数字签名)
9)银行B将收到的信息摘要和新产生的信息摘要进行比较,如果一致,说明收到的信息没有被修改过。(对比信息摘要和信息)