Skip to content

kmay89/securaCV

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1,367 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

SecuraCV

HACS Badge Validate with HACS Status License

SecuraCV logo animation

Witnessing without watching.

SecuraCV is a calm, local-first witness layer for homes, studios, labs, and small sites. It helps you understand what happened without turning your cameras and sensors into an identity archive.

Clips stay on your hardware. Events become privacy-preserving claims. The durable record is a signed, hash-chained log you can verify offline.

The promise

Principle What it means in practice
Local by default No subscription, remote indexing, or telemetry. Your cameras, your logs, your disk.
Minimal by design The kernel accepts semantic events such as motion in zone A, not face embeddings, plates, demographics, or person re-identification.
Verifiable after the fact Events are Ed25519-signed and hash-chained, so edits show up during verification.
Comfortable to live with Home Assistant integration, a verified timeline, gentle Canary devices, and display surfaces designed to be readable instead of alarming.
Honest about limits Specs, threat model, docs linting, and supply-chain provenance are part of the product, not fine print.

Start with the short essay: Witnessing is not watching. For the precise rules, read the privacy invariants.


Choose your path

If you are... Start here Outcome
Running Home Assistant with cameras Home Assistant setupFrigate integration Frigate keeps recording; SecuraCV adds verified witness events and chain health.
Running Docker beside an existing Frigate Docker quickstart One sidecar container wraps the witness API, bridge, and doctor checks.
Building hardware Getting started with Canarieshardware guides Small independent witnesses for radar, camera-module presence, WiFi sensing, and displays.
Evaluating trust and safety Why exports work this waythreat model A clear view of what is enforced, what is audited, and what remains out of scope.
Developing Operator guidedocumentation map Specs, commands, testing expectations, and day-2 operations in one map.

Prefer to explore first? The SecuraCV Lab turns the same paths into an interactive guide with browser demos and one-tap commands.


Install

Home Assistant add-on

Requires Home Assistant 2024.4.1 or newer.

  1. In Home Assistant, install the official Mosquitto broker add-on.
  2. Add these repositories in Settings → Add-ons → Add-on Store → ⋮ → Repositories:
    • https://github.com/blakeblackshear/frigate-hass-addons
    • https://github.com/kmay89/securaCV
  3. Install Frigate and Privacy Witness Kernel.
  4. Open the Privacy Witness Kernel Web UI and follow the setup wizard.
  5. Point Frigate at your cameras. The wizard writes a starter config template to /config/frigate.yml; copy it into Frigate's config, replace the placeholder RTSP URLs, then start Frigate.

After setup, SecuraCV publishes witness sensors, chain-integrity status, daily digest state, and a Verify Now action into Home Assistant. Frigate keeps handling clips and retention; SecuraCV adds the privacy boundary and verifiable event log.

The happiest path today is Home Assistant + Frigate + Mosquitto on a Raspberry Pi 4 or x86 host with RTSP cameras.

Docker beside Frigate

Use the compose quickstart, doctor check, bundled-broker option, and API-token setup in Frigate integration.

From source

On a supported Linux host, the repository installer is curl -fsSL https://raw.githubusercontent.com/kmay89/securaCV/main/scripts/install.sh | bash.

# Ubuntu/Debian prerequisites
sudo apt-get install build-essential libseccomp-dev pkg-config

# Run a local demo, then verify the generated witness log
cargo run --bin demo
cargo run --bin log_verify -- --db demo_witness.db

Real camera ingest, break-glass exports, service operation, and day-2 commands live in the Operator Guide.


How it works

Camera / sensor
      ↓
Frigate, RTSP, file, V4L2, ESP32, or sensor adapter
      ↓
Privacy Witness Kernel
      ↓
Event contract + metadata minimization
      ↓
Ed25519-signed hash-chain log + optional sealed vault envelope
      ↓
Home Assistant, CLI verification, or export workflow

SecuraCV separates private media from verifiable claims:

  1. Cameras and sensors observe locally.
  2. Detection output is reduced to an allowed event vocabulary.
  3. Precise timestamps are coarsened, zones stay local, and identity selectors are forbidden.
  4. Each accepted event is appended to a signed hash chain.
  5. Verification proves whether the chain still matches what was written.
  6. Raw media access, when enabled, goes through the break-glass vault flow instead of casual browsing.

The important promise is not that tampering is impossible. It is that tampering becomes visible.


What is ready to explore

  • Verified Home Assistant timeline. A Lovelace card shows events under chain status and displays the verified badge only after signature verification succeeds. See Verified Timeline.
  • Frigate bridge with CI coverage. The Frigate → MQTT → sealed-log path is exercised by automated tests and a live-broker CI smoke path. See Frigate integration.
  • Real ingest paths. File, RTSP, V4L2, ESP32 HTTP, and sensor-adapter paths are documented; the ffmpeg RTSP path has an end-to-end CI roundtrip. See v1 roadmap.
  • Detection backends. The default motion path is dependency-light; Tract/ONNX is feature-gated for local object detection experiments. See inference backends.
  • Canary hardware family. Vision, WAP, Sense, Display, and OTA projects share a growing firmware platform under firmware/.
  • Canary Cards. Radar and witness state can render as standardized, privacy-classed cards across Lab, display, and Home Assistant surfaces. See Canary Cards.
  • SecuraCV Lab. Browser demos model real firmware behavior, display surfaces, onboarding, power/bench behavior, and the MR60BHA2 radar placement pipeline. Try the Lab.
  • USB onboarding design. Experimental USB-OTG builds provide a read-only drive with START-HERE.html, consented one-tap help launch, and recovery/unseal flows. It is off in stock profiles. See USB onboarding.
  • Supply-chain transparency. Published firmware artifacts and browser-flasher factory images carry SLSA provenance attestations recorded in Rekor, complementing checksums and device-side OTA verification. See supply-chain transparency.

Canary devices

Canaries are small, local witnesses that corroborate the kernel instead of trusting one central box.

Device What it does Where
Canary Vision Presence from a Grove Vision AI module; no pixels leave the device. firmware/projects/canary-vision/
Canary WAP WiFi-sensing presence, mesh experiments, beacon/chirp work, local dashboard. firmware/projects/canary-wap/
Canary Sense MR60BHA2 60 GHz mmWave radar witness for presence, coarse occupancy, range bands, and wellbeing builds. firmware/projects/canary-sense/
Canary Display Watch and wall display surfaces with calm status, QR onboarding concepts, Lab parity, and living-canary health cues. firmware/projects/canary-display/
Canary OTA Standalone signed-update engine work: manifest fetch, SHA-256 verify, A/B rollback building blocks. firmware/projects/canary-ota/

Build plans, BOMs, enclosure notes, and bench procedures are collected in hardware docs. Firmware capability status is tracked in firmware features.


Trust, safety, and limits

SecuraCV should feel useful, not stressful. It is intentionally conservative about its claims:

  • The invariants define what the kernel must not collect or expose.
  • The event contract defines which claims are allowed.
  • The threat model separates enforceable security boundaries from audited trust boundaries.
  • The root paradox explains what host compromise can and cannot preserve.
  • The Beacon and Chirp specs keep life-safety advisories distinct from emergency-broadcast impersonation and forbid PII on the wire.

A few bright lines keep the system calm:

  • No face recognition, plate OCR, demographic estimates, or bulk identity search.
  • No cloud dependency for verification.
  • No life-safety shortcut that auto-originates Beacon alerts from sensors alone.
  • No claim that outruns the implementation: if a feature is marked design, RFC, pending bench validation, or post-v1, treat it as exactly that.

The project values honest edges more than glossy overclaiming.


Documentation

The best entry point is the documentation map. It is checked in CI so new docs cannot become unreachable.

High-signal references:


Status

SecuraCV is a v1 release candidate.

Current audited docs status:

  • The root README now points at current setup paths, hardware families, Lab surfaces, and supply-chain verification.
  • The docs map is CI-enforced, so Markdown under docs/ must remain reachable.
  • The core Frigate/MQTT/witness-log path is verified end-to-end in CI.
  • The RTSP ffmpeg path has a real roundtrip test.
  • The v1 tag is still held for on-device hardware validation across the kernel/bridge path and representative ESP32 firmware.

Track the exact gate in v1 roadmap and recent work in CHANGELOG.


Contributing

SecuraCV is independent, open source, and Apache-2.0 licensed. Helpful contributions include:

  • testing a real Home Assistant or Docker install,
  • bench-validating Canary hardware,
  • improving docs and examples,
  • reviewing privacy/security boundaries,
  • building small, calm, local-first user experiences.

Read CONTRIBUTING, the security policy, and the repo engineering guide in AGENTS.md before opening a PR.


License & usage

The software is Apache-2.0 (LICENSE) — free to run, anywhere, at any scale, forever. Two short, plain-language companions cover the rest:

  • LICENSING.md — who pays, who doesn't, and why. Free for schools, universities, nonprofits, groups, businesses, and governments to self-host at any scale; the short list of things that cost money (bought hardware, court-grade attestation, support SLAs) each has a free path; and the survival promises (no phone-home, no kill switch, standalone verifier) that make it safe to standardize on.
  • TRADEMARK.md — using the name, logo, and mascot: a free "Works with SecuraCV" badge for anyone, primary marks by public grant.
  • TERMS.md — a plain-language template for paid-services terms (advisory-only, liability capped at fees, not a safety device). A scaffold for your attorney to finish — not legal advice, and it covers services only, never the Apache-2.0 software.

SecuraCV — calm local proof, without the surveillance archive.

About

Privacy Witness Kernel — processes visual data into semantic events without storing raw video frames. Ed25519 signatures, hash chains, tamper-evident logging. ESP32-S3/Rust firmware. MAC / IPHONE / tvOS / iPad support

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Releases

Packages

Used by

Contributors

Languages