Figure 8 — Encrypted Capability Tunnel Between Meta Machines

Two Meta Machines with matching namespace entries (shared key material), connected by an encrypted tunnel. Shows CAP.LOAD key access, CALL encryption, and GC sweep revocation path.

TWO META MACHINES WITH MATCHING KEY MATERIAL META MACHINE A (Kenneth) CTMM Sim-64 • Custom ISA Thread Registers CR8 me (Thread identity) CR1 mymother (Outform, E) CR0 tunnel key (Inform, R) Namespace Entry: tunnel_key (index 7) Word 0 Location: crypto key data ptr Word 1 Limit: key length (256-bit) Word 2 Seals: MAC | ver=3 | G=0 Accessed via CAP.LOAD CR0, #7 (R permission) META MACHINE B (Priscilla) Capability • RISC-V base ISA Thread Registers CR8 me (Priscilla) CR1 myson (Outform, E) CR0 tunnel key (Inform, R) Namespace Entry: tunnel_key (index 4) Word 0 Location: crypto key data ptr Word 1 Limit: key length (256-bit) Word 2 Seals: MAC | ver=3 | G=0 Accessed via CAP.LOAD CR0, #4 (R permission) same key material ENCRYPTED TUNNEL — CALL SEQUENCE 1. CAP.LOAD CR0, #7 R permission → reads tunnel key from namespace mLoad validates perm → bounds → MAC → G → shadow Key material in CR0 2. CALL CR1 (mymother) E permission on Outform GT → RPC tunnel Encrypt payload AES-256 with key from CR0 🔒 Encrypted RPC ═══ Encrypted Point-to-Point Tunnel ═══ HTTPS / capability protocol Machine A ▶ ◀ Machine B 3. Machine B receives → mLoad validates Outform GT on myson Decrypts with matching key from own namespace entry → delivers to Priscilla's thread GC SWEEP REVOCATION PATH Deterministic garbage collection kills the tunnel by version bump Phase 1: MARK GC sets G=1 on all namespace entries including tunnel_key entry tunnel_key: G=1 (marked) Phase 2: SCAN Walk DNA tree via mLoad Reachable entries: reset G=0 If reachable: G=0 (alive) Phase 3: SWEEP Entries still G=1 = garbage Version bump invalidates GT tunnel_key: ver 3 → 4 ☠ REVOCATION CASCADE BEFORE: GT version matches namespace entry GT in CR0: index=7, ver=3 — Entry: ver=3 ✔ MAC valid ✔ sweep AFTER: GT version mismatch → FAULT GT in CR0: index=7, ver=3 — Entry: ver=4 ✖ MAC invalid ✖ Tunnel killed: next CAP.LOAD or CALL using this GT → FAULT • mLoad detects version mismatch (GT says 3, entry says 4) → MAC recomputation fails • Both machines must renegotiate — old key material is garbage collected and overwritten KEY INSIGHTS Tunnel key is a standard namespace entry: No special-case cryptographic subsystem. The tunnel key is a 3-word namespace descriptor (Location, Limit, Seals) accessed via the same mLoad path as any other resource. R permission on the GT grants read access to the key data. Revocation is deterministic and total: GC sweep bumps the version on unreachable entries. Every GT referencing the old version becomes invalid. The tunnel dies instantly — no "revocation list" to distribute, no race condition, no stale reference. One version bump = total kill. Cross-architecture transparency: Machine A (CTMM, 64-bit) and Machine B (Capability, 32-bit) use the same capability protocol. The ABI descriptor in each namespace entry maps registers between architectures. Network cost (~10ms) dwarfs ABI translation (~50ns).