你能否澄清下面的疑问?来自IBM网站,https://www.ibm.com/support/knowledgecenter/en/SSFKSJ_7.1.0/com.ibm.mq.doc/sy10520_.htm
的步骤 数字 </跨度> 签名 </跨度> 过程如下:
发件人计算邮件摘要,然后使用发件人的私钥加密摘要,形成 数字 </跨度> 签名 </跨度> 。发件人传送 数字 </跨度> 签名 </跨度> 与
使用发件人的私钥加密摘要
每当你看到有关使用私钥进行加密的事情时,预计解释会有缺陷。没有使用私钥加密 。作者在这里意味着什么 使用发件人的私钥对摘要进行签名 。调用签名加密来自对密码学的非常有限的理解:这两个概念具有不同的属性,并且它们使用不同的算法。例如,并不总是能够“解密”签名并恢复已签名的摘要(可能使用某些签名算法,而其他签名算法则不可能);你所能做的就是 校验 某个摘要是否具有某种特征。
这就是说,是的,有两个签名。
从第二个签名,客户端知道握手是由拥有某个私钥的人签署的。从第一个签名,客户端知道某个私钥的所有者是某个域名的所有者。通过将两者放在一起,客户端知道握手是由域名所有者签署的。
事实上,在典型的握手中,可能会有更多的签名。客户如何决定信任CA?毕竟任何人都可以使用自己的私钥签署证书。一般来说有一个 链 证书:服务器的证书由CA签名,CA有自己的证书,由另一个CA签名,依此类推。最后是一小组CA证书,这些证书在客户端的操作系统或浏览器中进行了硬编码。这些证书称为 根 链。它们通常被称为“根CA”,但请注意,作为根CA不是CA的属性,因为不同的系统可以具有不同的根CA集。
有关TLS的更多信息,请参阅 SSL / TLS如何工作? 。