假设客户端和服务器希望使用SSL通过网络进行通信,
客户端使用服务器的公钥加密message1 - >将message1发送到服务器 - >服务器将使用服务器的私钥解密message1。
服务器使用服务器的私钥加密message2 - >将message2发送到客户端 - >客户端使用服务器的公钥解密message2。
我的问题是,在案例2中,如果对手获得了服务器公钥(公共),那么他将能够解密消息2,是正确的还是我在这里遗漏了什么?
答案 0 :(得分:2)
如果您使用" private"关键,是的,任何人都可以使用" public"解码它。键。如果"公共"关键是公开的,不会很安全。
但是,我认为你有某种困惑;简而言之,SSL只使用公钥加密来交换密钥,并使用此密钥使用对称加密执行其余的通信。非对称/公钥加密比对称/密钥慢得多,因此公钥只是简单地用于获取其属性(即标识),然后它开关"更快的密钥加密。