假设我的页面没有 SSL。我们假设有以下步骤:
用户向我的网页发出请求(我们称之为 www.mypage.com)。
客户端 JS 创建一个SYMMETRIC KEY。
客户端 JS 向我的后端页面发出请求,请求我的服务器的PUBLIC KEY 。
客户端 JS 对获得的PUBLIC KEY中之前生成的SYMMETRIC KEY进行加密。
客户端 JS 将加密数据发送到服务器。
服务器对接收到的数据进行解密。
服务器开始发送/读取在步骤 2 中生成的对称密钥中加密的所有后续信息。
客户端 JS 也开始发送/读取在步骤 2 中生成的对称密钥中加密的所有后续信息。
据我所知,即使攻击者监听了步骤1到步骤8的每一条信息,他们也无法解密任何内容,用户是安全的。
你们同意我的观点吗?我对么?如果是,我们是否可以假设浏览器中的本机 SSL 存在是因为“写得不好”的页面?