nx_ecdsa_p384_real_bisect_test.nx
buildroot/runtime/nx_ecdsa_p384_real_bisect_test.nx
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
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
structs
| none |
consts
| none |
functions
| 31 | func read_to(path: *u8, out_buf: *u8, max: i64) -> i64 |
| 42 | func emit_label(c0: i64, c1: i64, c2: i64, c3: i64, c4: i64) -> i64 |
| 50 | func emit_nl() -> i64 |
| 55 | func hexnib(v: i64) -> i64 |
| 60 | func dump_bytes(bytes: *u8, n: i64) -> i64 |
| 74 | func dump_u384(p: *i64) -> i64 |
| 91 | func main() -> i64 |