在机器之间协商时,是否可以简单地捕获密钥?
假设我连接到我银行的网站。浏览器会向银行服务器发送请求。银行服务器将向我发送其SSL证书的副本。如果它有效,浏览器将发送签名确认。是不是可以在那时简单地捕获私钥?
答案 0 :(得分:3)
您的私钥(以及银行也不会)通过网络发送。银行的公开密钥是它发送到您的浏览器的X509证书的一部分。如果银行使用其私钥签署任何内容,您的浏览器将使用银行的公钥(来自证书)验证签名。整个SSL会话使用对称密码加密(出于性能原因)。为了能够做到这一点,双方都需要交换会话密钥(每个连接不同,并在定义的时间间隔后重新协商)。此交换使用 Diffie-Hellman 算法完成。在此交换期间,密钥不通过网络发送,它由双方独立计算。
答案 1 :(得分:2)
是否可以简单地捕获密钥 在机器之间协商?
不,因为它永远不会被发送,它是独立计算的。您需要服务器的私钥(私有)来重复导致会话密钥的独立计算。所以它很安全。
答案 2 :(得分:1)
仅共享公钥。银行不需要分享私人银行。
答案 3 :(得分:0)
私钥未共享且未存储在证书中。