Ga naar inhoud

Evidence pack formaat — OpenAI Audit module

OpenAI Audit packs gebruiken dezelfde verifier en signing chain als de andere modules. Het manifest krijgt module: "openai_admin" en schema_version: 2; de bundle bevat vier jsonl-bestanden in plaats van twee.

Bundle layout

pack-N.tar.gz
├── manifest.json — getekend
├── manifest.sig — Ed25519 over manifest.json
├── users.jsonl — één regel per user-snapshot
├── projects.jsonl — één regel per project-snapshot
├── api_keys.jsonl — één regel per API-key snapshot
└── events.jsonl — alle audit events in periode

manifest.json keys

{
"schema_version": 2,
"module": "openai_admin",
"pack_id": "12",
"tenant_id": "77198636-…",
"period_start": "2026-04-01T00:00:00Z",
"period_end": "2026-04-30T23:59:59Z",
"org_ids": ["org-abc123", "org-def456"],
"user_count": 25,
"project_count": 3,
"api_key_count": 12,
"event_count": 89,
"users_sha256": "",
"projects_sha256": "",
"api_keys_sha256": "",
"events_sha256": "",
"signing_public_hex": "d2f60e21…",
"created_at": "2026-05-01T03:14:22Z"
}

Verifiëren

Terminal window
python3 tools/evidence-pack-verify.py pack-12.tar.gz \
--expected-pubkey d2f60e21e0d496252b92bb308310e1a1dd1d5010f8fcaabbe169bdae1e2b7173

De verifier detecteert module: "openai_admin" en checkt de 4 jsonl bestanden + manifest sig.

Wat je auditeur met de pack kan aantonen

  • API key inventaris op datum X — uit api_keys.jsonl
  • Welke keys zijn orphan — alle entries waar last_used_at < period_start - 90d
  • Wie was admin in de periode — uit users.jsonl met role=“owner”
  • Wanneer is een key/user/project toegevoegd of verwijderd — uit events.jsonl

Wat je auditeur niet ziet

  • Volledige e-mailadressen — alleen prefixes en hashes
  • API key values — alleen redacted versies
  • Wat de keys hebben gedaan (prompts/completions) — die data is bij OpenAI, niet bij ons