Handshake

QUIC은 전송 핸드셰이크와 TLS 핸드셰이크를 합친다

새 연결은 보통 1 RTT 안에 암호화와 전송 파라미터 협상을 끝낼 수 있고, 재접속에서는 조건이 맞을 때 0-RTT 데이터도 보낼 수 있다.

새 QUIC 연결: Initial + TLS 1.3으로 보통 1 RTT
재개 연결: 서버가 허용하면 0-RTT early data 가능
0-RTT는 replay 위험 때문에 요청 종류를 제한해야 함
첫 연결

1-RTT 보안 연결

Client
Initial + TLS ClientHello + transport parameters →
Server
Client
← Handshake + TLS ServerHello + encrypted response keys
Server
Client
1-RTT application data ↔
Server
재개 연결

0-RTT는 조건부 최적화

Client
Initial + session ticket + early data →
Server
Client
← handshake confirmation
Server

주의: 0-RTT 데이터는 재전송 공격 가능성을 고려해 멱등 요청이나 안전한 작업에 제한하는 것이 일반적이다.