Concepts clés¶
Synthèse des principes structurants de ProbatioVault. Pour la vue détaillée, voir presentation/architecture.md.
Architecture générale¶
- Séparation App/Backend/Infra : app mobile (React Native/Expo), API NestJS (SRP-6a+JWT, TypeORM/PostgreSQL, Redis), infra OVH (Terraform/Ansible).
- Zéro connaissance : chiffrement bout-en-bout, aucune donnée en clair côté serveur.
- Probatoire : journalisation append-only, stockage WORM/Object Lock, preuves composites pour l’audit.
Principes de base¶
Stockage WORM (Write Once Read Many)¶
- Object Lock (COMPLIANCE) sur les buckets froids (Glacier/Deep Archive).
- Immutabilité des journaux/archives ; rotations gérées via politiques de rétention.
- Référence :
storage/worm.md.
Preuve probatoire¶
- Hash probatoire SHA3-256 + arbres de Merkle pour l’horodatage/proof.
- Preuve composite décrite dans
refs/composite-proof.md. - Audit trail append-only (schema
audit_eventscôté backend).
Architecture zero-knowledge¶
- Clés dérivées côté client (Argon2id + HKDF-SHA3-256) ; K_master jamais transmise.
- SRP-6a pour l’auth (aucun mot de passe en clair côté serveur).
- Voir :
refs/crypto.md,ProbatioVault-app/docs/epics/34.md(dérivation hiérarchique).
Technologies utilisées¶
Infrastructure¶
- OVH Cloud (VPC, SG, Private Network)
- Terraform (provisioning), Ansible (configuration)
Backend¶
- Node.js / NestJS, TypeORM/PostgreSQL, Redis
- CI/CD (tests, migrations, sonar) ; Swagger/OpenAPI pour les contrats
Frontend / Clients¶
- React Native (Expo) pour mobile, PWA/Desktop en préparation
- Consommation exclusive de l’API backend (contrats Swagger)