数字签名和数字证书

1. 信息安全三要素

信息安全中有三个需要解决的问题:

  1. 保密性(Confidentiality):信息在传输时不被泄露
  2. 完整性(Integrity):信息在传输时不被篡改
  3. 有效性(Availability):信息的使用者是合法的

这三要素统称为 CIA Triad。

公钥私钥解决保密性问题。
数字签名解决完整性问题和有效性问题。

2. 数字签名(Digital Signature)

2.1 生成签名

将消息的哈希值用私钥加密,得到数字签名。

生成签名

2.2 验证签名

用公钥解密签名,与明文消息的哈希值对比,相同则验证成功。

验证签名

3. 数字证书(Digital Certificate)

证书是对公钥生成的数字签名,用于为公钥提供合法性证明。

证书一般包含:公钥、公钥的数字签名、公钥拥有者的信息。

若证书验证成功,表明该公钥是合法的,可信的。

数字证书

3.1 认证机构(Certification Authority,CA)

CA 是受信任的第三方机构,负责发放和管理数字证书。

3.2 生成证书

  1. 服务器将公钥 A 给 CA
  2. CA 用自己的私钥 B 给公钥 A 加密,生成数字签名 A
  3. CA 把公钥 A,数字签名 A 和附加的服务器信息整合在一起,生成证书,发回给服务器
生成证书

3.3 验证证书

验证证书就是验证证书中的签名。

验证证书

3.4 证书作废

当用户私钥丢失、被盗,CA 需要对证书进行作废(revoke)。要作废证书,CA 需要制作一张证书作废清单(Certificate Revocation List,CRL)。

一个有效的证书必须满足:

  1. 有合法的认证机构签名
  2. 在有效期内
  3. 该证书没有作废

4. Reference

https://www.jianshu.com/p/9db57e761255

你可能感兴趣的:(数字签名和数字证书)