TLS 传输层安全协议(Transport Layer Security):
2014年10月,Google发布在SSL 3.0中发现设计缺陷,因此大部分浏览器都开始逐步禁止使用SSL安全传输,新的安全传输协议TLS便诞生了。
TLS记录协议通道:
HDR为数据报头,数据包最多长为16KB,如果长于16KB将分割成多个数据包。
TLS使用的单项密钥,意思是服务器到用户需要一个Key,用户到服务器又需要另一个不同的Key。一个Key用来加密,一个Key用来解密。
TLS还使用了2个64bits计数器,一个用于浏览器到服务器,一个用于服务器到浏览器,这样就能有效防止重放攻击。
加密步骤:
上图为TLS一个包内包含的内容,蓝色为加密密文,白色为非加密内容。非加密内容仅为报头,报头包含类型、协议版本号、长度。
1.计算tag,计算内容包括64bits计数器,报头,数据。注意,计数器的只有在tag中计算,具体值并不会放在数据中,因为浏览器和服务器都隐性的知道计数器