nx_tls13_record_test.nx
buildroot/runtime/nx_tls13_record_test.nx
about
nx_tls13_record_test.nx -- internal-consistency KAT for the
TLS 1.3 record-layer protection wrapper.
We don't pin to RFC 8448 ยง3 wire bytes here because those depend
on the full key schedule + traffic-secret derivation tied to
specific handshake messages. Instead we verify:
A. Round-trip: encrypt then decrypt restores plaintext + type
B. Nonce-with-seq: encrypt(seq=0) != encrypt(seq=1) given
same (key, iv, content) -- confirms IV XOR seq actually
varies the keystream
C. Tampered tag rejected (TAG_MISMATCH)
D. Tampered header (wrong length in AAD) rejected
E. Padding: encrypt with padding_len > 0, decrypt strips it
F. All-zeros inner (no type byte) rejected (EMPTY_INNER)
G. Nonce construction byte-exact for known (iv, seq) pair
expect_exit: 0
license_tier: ORIGINAL
dependencies 3 imports · 0 importers
imports: nx_syscalls.nxnx_chacha20_poly1305.nxnx_tls13_record.nx
imported by: nobody (leaf or entry point)
call flow from main pre-order; caps 40 nodes / depth 6 declared; ↻ = already shown
structs
| none |
consts
| none |
functions
| 25 | func main() -> i64 |