TLS 1.3包括3个子协议——alert、handshake、record handshake协议负责协商使用的TLS版本、加密算法、哈希算法、密钥材料和其他与通信过程有关的信息,对服务器进行身份认证,对客户端进行可选的身份认证,最后对整个握手阶段信息进行完整性校验以防范中间人攻击,是整个TLS协议的核心。 record协议负责对接收到的报文进行加密解...
或者,两个人最基础的状态即版本都不一样,男孩好动激进,版本都 TLS 1.1 了,而女孩温婉娴静,版本只有 SSL 3.0,那么女孩也会Alert男孩。 如下,客户端发送的版本是 TLS 1.1,而服务端提供的版本是 SSL 3.0,所以服务端就发送了警告 Alert。 这样,两个人握手就失败了 Handshake Failure,如下: 对于上面的加密套件 Cip...
} HandshakeType;/*定义handshake消息类型*/struct{HandshakeType msg_type;/*Handshake消息类型*/uint24 length;/*消息长度*/select (HandshakeType){casehello_request: HelloRequest;caseclient_hello: ClientHello;caseserver_hello: ServerHello;casecertificate: Certificate;caseserver_key_exchange: ServerKeyExchange...
TLS 1.3 还特意给 EarlyDataIndication 定义了一种 ContentType : early_handshake (共四种 alert(21), handshake(22), application_data(23), early_handshake(25) ) 5. Resumption 和 PSK TLS 1.3 里面,把session resumption/session ticket 恢复出来的key,和 psk (rfc4279), 统一在一个 handshake PSK 模式...
对于Alert 的消息处理比较特殊,不能进行分片。 application data:对TLS协议不可见,所以没有对应的处理规则。 handshake message:握手信息,传输数据中间不能夹杂其他信息。 加密解密使用AEAD,使用AEAD加密机制和协商出来的加密算法对消息报文进行加密 。 AEADEncrypted = AEAD-Encrypt(write_key(即加密密钥), nonce, plain...
5.4. handshake — Server Certificate 当服务器确定了CipherSuite后,根据CipherSuite里面的认证算法,如果需要发送证书给客户端,那么就发送 Server Certificate消息给客户端。Server Certificate总是在ServerHello之后立即发送,所以在同一个RTT里。 Server Certificate里面包含了服务器的证书链。
客户端计算所有接收信息的 hash 值,并采用协商密钥解密 encrypted_handshake_message,验证服务器发送的数据和密钥,验证通过则握手完成;(7).加密通信 开始使用协商密钥与算法进行加密通信。注意:(a) 服务器也可以要求验证客户端,即双向认证,可以在过程2要发送 client_certificate_request 信息,客户端在过程4中先...
TLS协议分析 (五) handshake协议 证书与密钥交换 5.4. handshake — Server Certificate 当服务器确定了CipherSuite后,根据CipherSuite里面的认证算法,如果需要发送证书给客户端,那么就发送 Server Certificate消息给客户端。Server Certificate总是在ServerHello之后立即发送,所以在同一个RTT里。
客户端计算所有接收信息的 hash 值,并采用协商密钥解密 encrypted_handshake_message,验证服务器发送的数据和密钥,验证通过则握手完成; (7).加密通信 开始使用协商密钥与算法进行加密通信。 注意: (a) 服务器也可以要求验证客户端,即双向认证,可以在过程2要发送 client_certificate_request 信息,客户端在过程4中先发...
接着,双方交换`change_cipher_spec`和`encrypted_handshake_message`,最终完成握手,启用加密通信。2. **会话缓存 TLS通过会话标识(session ID)和会话记录(session ticket)两种机制加速握手过程。session ID保存服务器缓存,占用资源较多,而session ticket仅由服务器保存,占用少,更优先。重建连接时,服务...