数字证书是用于在互联网上验证身份的电子凭证,可防范通信过程中的身份冒充、拦截(窃听)和数据篡改。

为验证在线通信的真实性并确认文档发送者的身份,基于公钥密码学的数字签名得到了广泛应用。具体而言,数字签名的工作原理如下:

发送方:

  1. 对文档内容应用加密哈希函数,生成“消息摘要”。
  2. 使用发送方的私钥加密消息摘要,从而创建数字签名。
  3. 将原始文档连同数字签名一起发送给接收方。

接收方:

  1. 使用发送方的公钥解密数字签名,以获取原始消息摘要。
  2. 使用相同的加密哈希函数,根据收到的文档独立生成新的消息摘要。
  3. 验证两个消息摘要是否匹配。

通过此过程,接收方可确认发送方是该公钥的合法所有者,并确保文档在传输过程中未被篡改。为确保安全,接收方必须通过可信且可验证的方式获取发送方的公钥。数字证书正是为此而设:如果说数字签名相当于技术层面的官方“印章”,那么数字证书就可以视为这些印章的“真实性证明”。

数字证书必须由称为证书颁发机构(CA)的可信第三方机构签发。这些证书通常包含以下信息:

  • 所有者(证书持有者)的公钥
  • 证书持有者的身份和凭据信息
  • 颁发该证书的CA的详细信息
  • CA自身用于验证证书真实性的数字签名

可以使用CA自身数字签名证书(通常称为CA证书)中包含的公钥来验证CA的数字签名。获取并验证CA证书后,用户可以确认所签发用户数字证书的真实性。