根据RFC 8446
(TLSv1.3) [https://www.rfc-editor.org/rfc/rfc8446]
Encrypted Extension
并且Finished
是两个不同的握手消息。
但在 RFC 8448(TLS 1.3 握手跟踪示例)[https://www.rfc-editor.org/rfc/rfc8448]
在此跟踪文档的所有示例中,Encrypted Extension
(消息类型 0x08)和Server Finished
(消息类型 0x14)消息被连接在一起并一起发送。
请参阅 RFC 8446 的第 23 和 24 页。
payload (80 octets): **08** 00 00 28 00 26 00 0a 00 14 00 12 00 1d 00
17 00 18 00 19 01 00 01 01 01 02 01 03 01 04 00 1c 00 02 40 01
00 00 00 00 00 2a 00 00 **14** 00 00 20 48 d3 e0 e1 b3 d9 07 c6 ac
ff 14 5e 16 09 03 88 c7 7b 05 c0 50 b6 34 ab 1a 88 bb d0 dd 1a
34 b2
我知道通过将两个握手消息(如果它们由一个实体一个接一个地立即发送)一起添加将提高性能,并且 RFC 8446 提供了这一规定。
但这真的是任何服务器实现都必须一起发送Encrypted Extension
和Server Finished
消息的吗?
或者服务器和客户端应该支持这两种实现,即
a) 分别发送Encrypted Extension
和Server Finished
消息。
b) 在一个握手消息中同时发送Encrypted Extension
和Server Finished
消息。