RAVEN
Passive RF spectrum chain-of-custody. The substrate every Phase 7+ RF Bureau program rides on. Without it, each wireless program reinvents IQ → canonicalization → Merkle → Rekor.
How RAVEN works
- An operator captures IQ samples from any SDR (rtl_sdr, HackRF, USRP) into a
cu8orcf32file. pluck bureau raven sweepruns a deterministic 32-bin Welch PSD over the IQ buffer per (geohash × time × band) tile, signs each tile with the receiver's Ed25519 key, and commits the tile-set as a Merkle forest.- The substation operator signs the sweep root and posts the in-toto Statement under predicate
https://pluck.run/Raven.Sweep/v1to the public Sigstore Rekor log. - Downstream programs (STINGRAY / KARMA / CELESTE / COSMOS) layer protocol-specific decoders on top — they share the same Welch digest, the same Merkle leaf shape, and the same predicate URI namespace.
pluck bureau raven anomalydiffs a current sweep against a baseline; tiles whose Welch-distance crosses threshold land as signedhttps://pluck.run/Raven.Anomaly/v1markers.
Determinism contract
Same IQ buffer + same sample rate + same window + same segment length + same overlap → byte-identical Welch digest. Tests lock this. Cross-receiver equivocation proofs are the entire substrate value; they are useless if two honest receivers can not produce the same digest from the same RF.
Programs riding the substrate
- STINGRAY · CellularEquivocation proofs for cell towers — two receivers in the same geohash + band reporting different Welch digests means at least one is lying.
- KARMA · Wi-FiEvil-twin AP detection by Welch-distance against a known-good monitor in the same geohash + 2.4/5 GHz band.
- CELESTE · GNSSGPS-spoofing detection — operator-declared baseline of expected GNSS bands diffed against current sweeps.
- COSMOS · LEO satelliteDiscontinuity detection across multi-receiver passes; a re-broadcast / relay attack surfaces as a Welch-distance gap.
Quorum compounds the value
Single-receiver sweeps are tamper-evident records. But all the contradiction proofs above require ≥ 2 distinct receivers in the same band + time window. RAVEN's quorum field (k-of-n) makes that requirement machine-checkable.
Phase 7 alpha vs 7.5
Alpha ships file-input only (cu8 / cf32 IQ files). Live SDR streaming (rtl_tcp, librtlsdr, USRP) defers to Phase 7.5 — same JS-layer-first pattern as TRIPWIRE Phase 2.