How debopam525/sih-2026 works
ECDAT is an enterprise cryptographic discovery and post-quantum migration analysis tool. Users authenticate, submit scans, and follow extracted cryptographic evidence through detection, CBOM correlation, quantum/risk/Mosca assessment, and replacement recommendations; they can then review inventory, manage application context and migration readiness, export reports, and compare rescans. The graph emphasizes documented capabilities and sampled orchestration. Scanner-to-CBOM and report/diff wiring is based on the README; unsampled implementations are represented only by supported directory paths.
Main entry points: pipeline.py Analysis pipeline · App.tsx ECDAT dashboard · models Cryptographic domain records · router.py API router
Components 29
User interface
- ECDAT dashboard
frontend/src/App.tsx - API client
frontend/src/api/client.ts - Session state
frontend/src/store/auth.tsx - Scan workspace
frontend/src/pages/Scans.tsx - Inventory and insights
frontend/src/pages/Assets.tsx - Application context
frontend/src/pages/Applications.tsx - Migration readiness
frontend/src/pages/Migration.tsx - Report exports
frontend/src/pages/Reports.tsx
API and orchestration
- API router
backend/app/api/v1/router.py - Authentication and RBAC
backend/app/api/v1/auth.py - Scan endpoints
backend/app/api/v1/scans.py - Assessment endpoints
backend/app/api/v1/analysis_routes.py - Application endpoints
backend/app/api/v1/applications.py - Report endpoints
backend/app/api/v1/reports.py
Discovery and CBOM
- Scan orchestration
backend/app/scanners/runner.py - Source and package scanners
backend/app/scanners - Detection and normalization
backend/app/detection - CBOM correlate and export
backend/app/cbom
Assessment and migration
- Analysis pipeline
backend/app/analysis/pipeline.py - Quantum vulnerability
backend/app/analysis/quantum.py - Risk scoring
backend/app/analysis/risk.py - Mosca prioritization
backend/app/analysis/mosca.py - PQC recommendations
backend/app/analysis/recommendation.py - Migration status
backend/app/models/migration.py - Report generation
backend/app/reports/generator.py
Domain state
- Application database
backend/app/core/db.py - Cryptographic domain records
backend/app/models - Runtime scoring settings
backend/app/core/runtime_settings.py
Other components
- Analyst
Connections 36
- Analyst → ECDAT dashboard: uses
- ECDAT dashboard → API client: requests
- ECDAT dashboard → Session state: checks session
- ECDAT dashboard → Scan workspace: opens
- ECDAT dashboard → Inventory and insights: opens
- ECDAT dashboard → Application context: opens
- ECDAT dashboard → Migration readiness: opens
- ECDAT dashboard → Report exports: opens
- API client → API router: calls API
- API client → Authentication and RBAC: logs in
- API router → Authentication and RBAC: dispatches
- API router → Scan endpoints: dispatches
- API router → Assessment endpoints: dispatches
- API router → Application endpoints: dispatches
- API router → Report endpoints: dispatches
- Scan endpoints → Scan orchestration: starts scans
- Scan orchestration → Source and package scanners: runs scanners
- Source and package scanners → Detection and normalization: detects assets
- Detection and normalization → CBOM correlate and export: normalizes evidence
- CBOM correlate and export → Cryptographic domain records: records inventory
- Scan endpoints → Analysis pipeline: triggers assessment
- Analysis pipeline → Quantum vulnerability: assesses
- Analysis pipeline → Risk scoring: scores
- Analysis pipeline → Mosca prioritization: prioritizes
- Analysis pipeline → PQC recommendations: recommends
- Analysis pipeline → Migration status: seeds status
- Analysis pipeline → Cryptographic domain records: persists results
- Analysis pipeline → Runtime scoring settings: reads assumptions
- Application endpoints → Analysis pipeline: rescores assets
- Application endpoints → Cryptographic domain records: reads and updates
- Assessment endpoints → Cryptographic domain records: reads assessments
- Report endpoints → Report generation: generates exports
- Report generation → Cryptographic domain records: reads scan data
- Scan orchestration → Cryptographic domain records: tracks scan state
- Cryptographic domain records → Application database: stored in
- Runtime scoring settings → Application database: reads and writes