nx_rsa_pkcs1_v1_5_sha256_4096_real_test.nx
buildroot/runtime/nx_rsa_pkcs1_v1_5_sha256_4096_real_test.nx
about
nx_rsa_pkcs1_v1_5_sha256_4096_real_test.nx -- REAL RSA-4096 verify
against an openssl-generated keypair + signature.
Proves the full PKCS1v1.5-SHA256 + RSA-4096 mod-exp + u4096_load_be
pipeline shipped this session works end-to-end against bytes
produced by a real production toolchain (openssl). No TLS, no
X.509, no PEM parsing -- just the load-bearing math + padding.
Test fixtures (must exist before running):
/tmp/rsa4096_test_n.hex -- 1024-char hex of the 4096-bit modulus
+ trailing newline
/tmp/rsa4096_test_msg.txt -- 23-byte message "hello-rsa4096-substrate"
/tmp/rsa4096_test.sig -- 512-byte raw RSA-PKCS1v1.5-SHA256 signature
Generated by (host-side):
openssl genrsa -out rsa4096_test.key 4096
openssl rsa -in rsa4096_test.key -modulus -noout | sed 's/Modulus=//' \
> rsa4096_test_n.hex
echo -n 'hello-rsa4096-substrate' > rsa4096_test_msg.txt
openssl dgst -sha256 -sign rsa4096_test.key -out rsa4096_test.sig \
rsa4096_test_msg.txt
expect_exit: 0
dependencies 3 imports · 0 importers
imports: nx_syscalls.nxnx_u4096.nxnx_rsa_pkcs1_v1_5_sha256_4096.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
| 30 | func _hex_nibble(c: u8) -> i64 called by 1: main |
| 46 | func _read_file(path: *u8, out: *u8, cap: i64) -> i64 |
| 63 | func main() -> i64 |