HTTPS 协议中,为什么需要第一步交换随机数
最近在学习HTTPS
按照流程:双方交换 random1 和 random2
客户端生成 random3 作为 pre master secret,并通过被签名的可靠公钥加密后传给 server,
这样双方都拿 random1 random2 random3 通过算法各自生成 master secret
在这里,只有 random3 是能够保证不被第三人知道的,为什么公开的 random1 和 random2 有存在的必要?为什么不直接生成 master secret 发过去?
查了查资料,这里是因为前向安全性。加入随机参数,使得:即使现在所有密钥都泄露了,历史消息也不会被破解。