code wiki / _hdl_build / nx_fw_signed_robust_gate.nx

nx_fw_signed_robust_gate.nx

buildroot/runtime/_hdl_build/nx_fw_signed_robust_gate.nx

6247 B107 linesdepth 11pulls 16 transitivereach 0 importersview sourcekind gate/prooftopic fw
docsdependenciesstructsconstsfunctions

about

nx_fw_signed_robust_gate.nx -- proves the fusion: signature-gated A/B + factory never-brick. T0 signed-clean-flash : a signed capsule flashes + commits to the inactive bank -> SR_OK + selectable + flipped F1 forged-active-fallback : a FORGED image planted in the ACTIVE bank is NOT selected; -> selectable via signed factory sr_select falls back to a signature-valid image (the headline) F2 double-fault-factory : both banks dead -> the signed immutable factory -> selectable N1 all-bad-teeth : both banks + the factory all forged/garbage -> NOT selectable (honest) N2 forged-source-rejected : sr_safe_flash refuses to even WRITE a forged source -> SR_REJECTED, banks intact GREEN only if all five hold. ed25519 signs are minimized (auth + forged signed ONCE, copied per scenario). Evidence -> knowledge/status/fw_signed_robust_gate.log. Sovereign: imports nx_fw_signed_robust (-> nx_fw_capsule -> nx_ed25519) + nx_framed_append + nx_syscalls. license_tier: ORIGINAL

dependencies 3 imports · 0 importers

nx_fw_signed_robust.nx nx_framed_append.nx nx_syscalls.nx nx_fw_signed_robust_gate.nx

imports: nx_fw_signed_robust.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 sys_now_realtime_sec sys_mmap sys_clock_gettime_real srg_len sys_mmap ↻ cap_plat_seed 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 ↻ fe_alloc nx_scratch nx_scratch_init nx_scratch_oom sys_mmap ↻ fe_zero

structs

none

consts

17const SRG_LOG: *u8 = "knowledge/status/fw_signed_robust_gate.log"
18const SRG_PAY: *u8 = "NISHI-fw-signed-robust-payload"

functions

20func srg_len(s: *u8) -> i64 { var i: i64 = 0; while s[i] != 0 as u8 { i = i + 1 } return i }
called by 1: main
21func srg_garbage(path: *u8) -> i64
called by 1: main calls 2: sys_mmapcp_write
26func srg_row(name: *u8, pass: i64) -> i64
called by 1: main calls 2: sys_mmapfa_appendz
39func main() -> i64