SSL主要功能在握手阶段
- SSL并不强制通信双方使用某种特定的对称密钥、公开密钥算法、或MAC算法。相反,双方可以在握手阶段自行协商在通信过程中使用的密码算法。
-
在握手阶段双方会交换一个不重数,所以实际的握手过程是客户端发送它支持的密码算法列表,连同一个客户端不重数服务端从该列表中选择一种对称算法,一种公钥算法和一种MAC算法,把他的选择,自己的证书以及一个服务端不重数发送给客户端;
- 第四步有社么用?
此前发送的报文有被篡改的风险(把可选择加密方式中较难的删除),所以第四步用来对比MAC,看是否被篡改- 不重数有社么用?
每次连接不重数不同,主密钥就不同,防止攻击者冒充客户端向服务端建立连接。
SSL的结束
不能直接发送TCP结束报文,否则攻击者先发送直接会把连接中断,所以要把结束标志放到已加密的部分