CipherShift365 -- Architecture Overview
Stakeholders and Concerns
| Stakeholder | Primary concerns |
|---|---|
| CISO / Compliance (A1) | Accuracy & defensibility; auditability; offline guarantee |
| .NET Developer (A2) | Simple, stable SDK; crypto-agility without code change; no production drag |
| Security Architect / Consultant (A3) | One coherent lifecycle; consistent classification |
| DevOps / SRE (A4) | Host non-disruption; SIEM fit; safe failure modes |
| Procurement / Supplier (A5) | Independently verifiable, signed evidence |
| Owner / 365 Architect | Maintainability; IP protection; buildable by one person |
Composition View
Rendering diagram...
The Three Dependency Rules
- Shared Core is the hub. All three modules depend on Core (KB, classification, scoring, CBOM, identity, signing, policy) and never reimplement it.
- Build-time and runtime dependencies are separated. The Analysis Engine (Roslyn, IL inspection) is heavy and runs only at build time. Vault ships into customers' production applications, so it depends on the lightweight Core only -- never on the Analysis Engine.
- One analysis engine, two consumers. The static analysis engine is a shared component consumed by both Compass (CLI/CI) and Guardian's gate.
Component Catalog
| Component | Responsibility |
|---|---|
| Knowledge Base | Versioned, signed classification/recommendation data |
| Classification & Recommendation | Map findings -- risk + PQC recommendation via KB rules |
| Risk Scoring Engine | Single risk model + finding/component/system scores |
| CBOM Model & Serializer | CycloneDX CBOM, deterministic, signable |
| Signing & Verification | Fail-closed, offline-verifiable signing |
| Policy Engine | Shared allow/deny + absolute/baseline-aware modes |
| Analysis Engine (Roslyn/IL) | Shared static analysis consumed by Compass and gate |
| Crypto-Agility API | Algorithm-agnostic SDK; per-algorithm provider policy |
| Hybrid/Composite Engine | Composite schemes; self-describing artifacts |
| Gate / Listener / Drift | Guardian build-time + runtime functions |