|
wired
libc-free QUIC/HTTP3 SDK in C for x86_64-linux
|
RFC 9001 4: per-protection-level key sets. More...
Go to the source code of this file.
Data Structures | |
| struct | keyset |
| Per-protection-level key store: one AES-128-GCM key set per level plus an installed flag. More... | |
Functions | |
| void | keyset_init (keyset *state) |
| Clear all levels to not-installed. | |
| int | keyset_install (keyset *state, int level, const initial_keys *keys) |
| Install keys at level (0/1/2). | |
| int | keyset_for_level (const keyset *state, int level, const initial_keys **out) |
| Fetch keys for level into *out. | |
RFC 9001 4: per-protection-level key sets.
Levels: 0=Initial, 1=Handshake, 2=1-RTT. Each level holds one initial_keys (AES-128-GCM material) plus an installed flag.
| int keyset_for_level | ( | const keyset * | state, |
| int | level, | ||
| const initial_keys ** | out ) |
Fetch keys for level into *out.
*out points into state; it stays valid while state lives and the level is not overwritten.
| state | key set to query |
| level | protection level (LEVEL_*) |
| out | receives a pointer to the installed keys |
| void keyset_init | ( | keyset * | state | ) |
Clear all levels to not-installed.
| state | key set to reset |
| int keyset_install | ( | keyset * | state, |
| int | level, | ||
| const initial_keys * | keys ) |
Install keys at level (0/1/2).
| state | key set to update |
| level | protection level (LEVEL_*) |
| keys | key material copied into the set |