看了好久这个看不懂,希望前辈能指点一下。
这句话我感到很疑惑:
"当然,使用 ECDHE 后,如果被中间人拿到私钥,尽管无法用于解密之前流量,但他可以实施 MITM 攻击来解密之后的流量,所以私钥还是要保管好。"
为什么说,在 ECDHE 的密钥交换方法下,中间人拿到(服务器)私钥,能实施 MITM 攻击? (我理解是,ECDHE 的密钥交换方法下,别人拿到服务器私钥,一点作用都没有吧)
因为我理解,不管是 ECDHE,抑或是 RSA 作为密钥交换的方法,都是没办法实施 MITTM 的啊。因为没有合法 CA 啊,无法通过客户端浏览器的认证。
文章前部分说 RSA 作为密钥交换方法的话,拿到网站的私钥,可以解密,这个可以理解,但这个不是 MITM,你直接监听客户端到的服务器 IP 流量,然后有服务器私钥,解密得到 premaster key,那包括会话加密方式和 3 个参数都有了( cipher suite 和 2 个 random 都是公开的),就能算 sessionkey,也就能直接解密了,根本不用当中间人。
HTTPS 下 MITM 的方式应该是指:
中间人能通过客户端的服务器合法认证才行的吧?
要么我在客户端信任 fake 服务器证书,
要么找权威 CA 给我违法签发证书。
写了挺多,可能有点乱。