|
wired
libc-free QUIC/HTTP3 SDK in C for x86_64-linux
|
RFC 9001 4.1.2: after the client Finished verifies, the server completes the handshake: derive the application (1-RTT) secrets from the transcript including the client Finished, install the 1-RTT key set, and mark the handshake confirmed. More...
Go to the source code of this file.
Data Structures | |
| struct | quic_srvfin_state |
| Server handshake-completion state. More... | |
Functions | |
| void | quic_srvfin_state_init (quic_srvfin_state *s, quic_keysched *sched, quic_keyset *keys) |
| Bind the key schedule and key set the completion step operates on. | |
| int | quic_srvfin_complete (quic_srvfin_state *s, const u8 *final_transcript, usz final_transcript_len) |
| Advance the key schedule to Master over the final transcript (the handshake messages through the client Finished), install the server 1-RTT keys, and confirm. | |
RFC 9001 4.1.2: after the client Finished verifies, the server completes the handshake: derive the application (1-RTT) secrets from the transcript including the client Finished, install the 1-RTT key set, and mark the handshake confirmed.
| int quic_srvfin_complete | ( | quic_srvfin_state * | s, |
| const u8 * | final_transcript, | ||
| usz | final_transcript_len ) |
Advance the key schedule to Master over the final transcript (the handshake messages through the client Finished), install the server 1-RTT keys, and confirm.
The application secrets are Derive-Secret(Master, ..., transcript), which hashes the raw messages internally, so this takes the raw transcript bytes and length, not a precomputed hash.
| s | completion state |
| final_transcript | the raw handshake messages through the client Finished |
| final_transcript_len | length of final_transcript in bytes |
| void quic_srvfin_state_init | ( | quic_srvfin_state * | s, |
| quic_keysched * | sched, | ||
| quic_keyset * | keys ) |
Bind the key schedule and key set the completion step operates on.
| s | completion state to initialize |
| sched | the key schedule to advance |
| keys | the key set to install the 1-RTT keys into |