nx_quic_keys.nx
buildroot/runtime/nx_quic_keys.nx
about
nx_quic_keys.nx -- RUNG 5a of the sovereign QUIC transport: the Initial key schedule (RFC 9001 sec 5).
Builds on the sovereign HKDF-SHA256 (nx_hkdf) + adds the TLS 1.3 HKDF-Expand-Label (RFC 8446 sec 7.1).
QUIC Initial keys are derived purely from the client's Destination Connection ID + a fixed salt -- this
is what protects the handshake packets (R5b does the AEAD with these keys). Gated byte-exact against the
RFC 9001 A.1 worked example (DCID 0x8394c8f03e515708). No float. license_tier: ORIGINAL
dependencies 1 imports · 3 importers
imports: nx_hkdf.nx
imported by: nx_quic_handshake_sm.nxnx_quic_keys_test.nxnx_quic_tls_schedule.nx
structs
| none |
consts
| none |
functions
| 9 | func quic_initial_salt(out: *u8) -> i64 |
| 18 | func hkdf_expand_label(secret: *u8, label: *u8, label_len: i64, ctx: *u8, ctx_len: i64, l: i64, out: *u8) -> i64 |
| 33 | func quic_initial_secrets(dcid: *u8, dcil: i64, client_secret: *u8, server_secret: *u8) -> i64 |
| 44 | func quic_initial_extract(dcid: *u8, dcil: i64, initial_secret: *u8) -> i64 |
| 52 | func quic_derive_keys(secret: *u8, key: *u8, iv: *u8, hp: *u8) -> i64 |
| 59 | func main() -> i64 { return 0 } |