Aller au contenu

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_events cô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)