code wiki / _hdl_build / nx_fw_capsule_gate.nx

nx_fw_capsule_gate.nx

buildroot/runtime/_hdl_build/nx_fw_capsule_gate.nx

3712 B87 linesdepth 10pulls 15 transitivereach 0 importersview sourcekind gate/prooftopic fw
docsdependenciesstructsconstsfunctions

about

nx_fw_capsule_gate.nx -- proves the signed capsule = Secure-Boot-grade integrity. T1 authentic-verifies : a capsule signed by the platform key -> cap_verify == 1 N1 corrupted-rejected : flip a payload byte (signature no longer matches)-> cap_verify == 0 N2 FORGED-rejected : signed with a DIFFERENT key (forgery) -> cap_verify == 0 N3 garbage-rejected : a too-short / non-capsule blob -> cap_verify == 0 N2 is the capability sha256 LACKS: a forger can recompute a hash, but cannot forge a signature without the platform private key. GREEN only if all four hold. Evidence -> knowledge/status/fw_capsule_gate.log. Sovereign: imports nx_fw_capsule (-> nx_ed25519) + nx_framed_append + nx_syscalls. license_tier: ORIGINAL

dependencies 3 imports · 0 importers

nx_fw_capsule.nx nx_framed_append.nx nx_syscalls.nx nx_fw_capsule_gate.nx

imports: nx_fw_capsule.nxnx_framed_append.nxnx_syscalls.nx

imported by: nobody (leaf or entry point)

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

main cp_puts sys_write sys_now_realtime_sec sys_mmap sys_clock_gettime_real cgc_len sys_mmap ↻ cap_plat_seed cap_path cp_cat cp_catn sys_mmap ↻ cap_make sys_mmap ↻ cp_wr_u32 ed25519_sign_full sys_mmap ↻ ed25519_sha512 sys_mmap ↻ sha512_init sha512_update sha512_blk_set_byte blk_get_i64 blk_set_i64 sha512_compress sys_mmap ↻ blk_get_i64 ↻ sha512_gamma0 sha512_gamma1 sha512_sigma1 sha512_ch sha512_k sha512_sigma0 sha512_maj sha512_final sha512_blk_set_byte ↻ sha512_compress ↻ ge_p3_alloc sys_mmap ↻

structs

none

consts

15const CGC_LOG: *u8 = "knowledge/status/fw_capsule_gate.log"
16const CGC_PAY: *u8 = "NISHI-fw-capsule-gate-payload-image"

functions

18func cgc_len(s: *u8) -> i64 { var i: i64 = 0; while s[i] != 0 as u8 { i = i + 1 } return i }
called by 1: main
19func cgc_row(name: *u8, pass: i64) -> i64
32func main() -> i64