Aller au contenu

Présentation — ProbatioVault App (React Native)

Application iOS/Android avec chiffrement de bout en bout (Zero-Knowledge)

Démarrage rapide

# Installer les dépendances
npm install

# Lancer l'app
npm run ios      # iOS
npm run android  # Android
npm run web      # Web

# Tests
npm test
npm run test:coverage

Documentation

Stack technique

Composant Technologie
Framework React Native 0.76 + Expo 52
Router Expo Router (file-based)
State Zustand
Crypto @noble/ciphers, @noble/hashes
Storage expo-secure-store, AsyncStorage
Tests Vitest

Architecture

src/
├── app/              # Expo Router (screens)
├── components/       # Composants React
├── services/         # Services (API, crypto, storage)
├── store/            # Zustand stores
├── hooks/            # Custom hooks
├── utils/            # Utilitaires
└── types/            # TypeScript types

Cryptographie

Fonction Algorithme
Chiffrement AES-256-GCM
Hash SHA3-256
Dérivation Argon2id + HKDF
Stockage clés Secure Enclave (iOS) / Keystore (Android)

Zero-knowledge

  • Master key (K_master) jamais stockée
  • Backend ne voit jamais les clés de chiffrement
  • Chaque document chiffré avec clé unique (K_doc)

Voir: Architecture crypto

Platforms

Platform Status Notes
iOS Supporté iOS 13+
Android Supporté Android 6+ (API 23+)
Web (PWA) Planifié Q1 2026
Desktop Planifié Q3 2026

← Retour à l'index