OGDE

Federated immunity MVP — v0.2.2

Status: experimental, locally verified; do not use as sole production security control.

Trust model

Important boundaries

File interfaces

Trust registry (private local file): schema_version:1 and publishers array with signed identity pinned to public key.

Local revision state (private local file): schema_version:1 and feeds keyed by feed ID with last accepted revision/digest/timestamp.

Assessment report includes findings, priorities, publisher, revision, feed_digest_sha256, asset and explicit limitations.

Example workflow (POSIX shell)

python -m pip install -e .
mkdir -p .ogde-local
ogde keygen --private .ogde-local/dev-publisher.key --public .ogde-local/dev-publisher.pub
python scripts/create_demo_feed.py --out .ogde-local/demo-feed.json
ogde sign --feed .ogde-local/demo-feed.json --private .ogde-local/dev-publisher.key --out .ogde-local/demo-signed.json

# In a real deployment, independently verify the key before confirming trust.
ogde trust-add --registry .ogde-local/trust.json --public .ogde-local/dev-publisher.pub --publisher-id ogde-lab --feed-id lab-advisories --confirm-trust-anchor

ogde assess \
  --registry .ogde-local/trust.json --feed .ogde-local/demo-signed.json \
  --sbom examples/sbom.v2-demo.cdx.json \
  --context examples/asset-context.example.json --state .ogde-local/state.json \
  --out .ogde-local/report.json --markdown .ogde-local/report.md \
  --fail-on none

The demo uses an explicitly synthetic package and advisory, not evidence of a genuine vulnerability. No internet is required after Python dependencies have been installed.

Exit codes

Future engineering gates

  1. Independently review all threat-model assumptions and implement fuzz/property testing.
  2. Add robust transactional storage with remote anchoring and independently reviewed publisher key rotation.
  3. Interoperate with standards-based advisories, VEX, CSAF and signed provenance rather than inventing more incompatible formats.
  4. Build a consent-based multi-tenant API with strong isolation, audit logs, rate limits and no remote command channel.
  5. Pilot on non-sensitive test assets; gather triage precision, false positives, time-to-notification and resilience metrics.