code wiki / (root) / nx_ecdsa_p384_real_bisect_test.nx

nx_ecdsa_p384_real_bisect_test.nx

buildroot/runtime/nx_ecdsa_p384_real_bisect_test.nx

10644 B286 linesdepth 13pulls 65 transitivereach 0 importersview sourcekind gate/prooftopic ecdsa
docsdependenciesstructsconstsfunctions

about

nx_ecdsa_p384_real_bisect_test.nx -- bisect ECDSA-P384 verify pipeline against the cert2 -> cert3 pair of the real example.com chain to locate the root cause of VUI_VERIFY_FAIL (verdict 6). Steps (each value is compared inline with a golden hex computed off-substrate via Python cryptography): 1. SHA-384(cert2.tbs) -- 48 bytes 2. nx_ecdsa_sig_parse_der_384(cert2.sig) -- r, s (12 LE limbs each) 3. nx_x509_pubkey_extract_ec_p384(cert3) -- pub_x, pub_y All bytes are dumped as hex on stderr so we can `diff` against the Python golden. The test always exits 0; the smoke checks the printed hex matches expected. expect_exit: 0.

dependencies 13 imports · 0 importers

nx_syscalls.nx nx_u384.nx nx_x509.nx nx_x509_pubkey_ec.nx nx_sha512.nx nx_ecdsa_sig_der_384.nx nx_ecdsa_sig_der.nx nx_ecdsa_p384.nx nx_x509_verify_ecdsa_p384.nx nx_x509_verify_under_issuer.nx nx_ecdsa_p384_real_bisect_test

diagram shows first 10 each side; +3 more imports, +0 more importers in the complete lists below.

imports: nx_syscalls.nxnx_u384.nxnx_x509.nxnx_x509_pubkey_ec.nxnx_sha512.nxnx_ecdsa_sig_der_384.nxnx_ecdsa_sig_der.nxnx_ecdsa_p384.nxnx_x509_verify_ecdsa_p384.nxnx_x509_verify_under_issuer.nxnx_u256.nxnx_x509_verify_ecdsa.nxnx_sha256.nx

imported by: nobody (leaf or entry point)

call flow from main pre-order; caps 40 nodes / depth 6 declared; ↻ = already shown

main sys_mmap read_to sys_mmap ↻ sys_read_file sys_openat_rd sys_lseek sys_mmap ↻ sys_read sys_close x509_parse sys_mmap ↻ asn1_cursor_init asn1_expect_tag sys_mmap ↻ asn1_read_tlv_header asn1_read_tag asn1_read_length asn1_read_length ↻ x509_read_tlv sys_mmap ↻ asn1_expect_tag ↻ x509_read_alg_id sys_mmap ↻ asn1_expect_tag ↻ sha256_digest sys_mmap ↻ sha256_init sys_mmap ↻ sha256_k sha256_update sha256_compress_ni_blocks blk_set_byte sha256_compress sha256_compress_ni blk_word blk_byte sha256_final blk_set_byte ↻ sha256_compress ↻

structs

none

consts

none

functions

31func read_to(path: *u8, out_buf: *u8, max: i64) -> i64
called by 1: main calls 2: sys_mmapsys_read_file
42func emit_label(c0: i64, c1: i64, c2: i64, c3: i64, c4: i64) -> i64
called by 1: main calls 2: sys_mmapsys_write
50func emit_nl() -> i64
called by 1: main calls 2: sys_mmapsys_write
55func hexnib(v: i64) -> i64
called by 2: dump_bytesmain
60func dump_bytes(bytes: *u8, n: i64) -> i64
74func dump_u384(p: *i64) -> i64
called by 1: main calls 2: sys_mmapdump_bytes
91func main() -> i64