NODE-CONSTANT//SRF-03 · FERRITEHARDEN
WICK / 04//45.5°N · 73.5°W
← SURFACES/SRF-03HARDEN
Core Verification

Ferrite

Formal proof for Rust systems and WebAssembly.

Formal vulnerability analysis for Rust crates, async runtimes, and WebAssembly modules. Ferrite applies Z3 to prove memory safety violations that escape the borrow checker — unsafe blocks, FFI boundaries, integer arithmetic in no_std environments, and WASM linear memory violations. Built for embedded Rust, blockchain runtimes, and security-critical crates where "safe Rust" is not sufficient proof.

unsafe
Block Coverage
FFI
Boundary Analysis
WASM
Runtime Support
§ SPECIFICATION
Input
  • Rust source code or compiled WASM binary
  • Cargo.toml dependency graph
  • Optional: unsafe block annotations and invariant specs
  • Optional: FFI header definitions (C interop)
Constraints Verified
  • Unsafe block memory access bounds
  • Integer overflow in arithmetic-heavy no_std code
  • Use-after-free reachability across FFI calls
  • WASM linear memory write-out-of-bounds
  • Data race conditions in async unsafe contexts
  • Unwrap/expect panic reachability under adversarial input
Output
  • Z3 proof artifact per unsafe violation
  • Borrow checker escape path trace
  • FFI boundary taint analysis
  • Integer overflow witness values in no_std context
  • WASM linear memory safety certificate
§ SAMPLE PROOF ARTIFACT
ARTIFACT // FERRITE-FFI-01FAILURE DETECTED
// SAMPLE PROOF — FERRITE ENGINE

Rust crypto crate — integer overflow in unsafe FFI boundary

TargetCustom no_std cryptographic crate
Conditionkey_len: u32 = 0xFFFF0001 → usize cast wraps on 32-bit target → heap write 4 bytes into 65535-byte alloc
VerdictSAT
SummaryInteger overflow in unsafe FFI call. Borrow checker does not cover arithmetic in extern blocks. Z3 witness confirms reachable under attacker-controlled key length.
StatusReview-ready
→ View full artifact repository
Run Ferrite on your system.

Formal engagement starts with a technical intake. We scope, configure, and deliver a proof artifact within the agreed SLA.

Request Briefing →