Architecture de sécurité

Vos données vous appartiennent.

Kapsul a été conçu dès le départ autour d'un principe simple : personne d'autre que vous ne doit pouvoir lire vos données financières — pas même nous.

Paramètres de chiffrement

AlgorithmeAES-256-GCM
Dérivation de cléPBKDF2 — SHA-256 — 210 000 itérations
Vecteur d'init. (IV)96 bits aléatoires, unique par opération
Tag d'auth. (GCM)128 bits — intégrité garantie
ImplémentationWeb Crypto API (natif navigateur)
Clé exportableNon — jamais sérialisée ni transmise

La clé ne quitte jamais votre navigateur

Votre clé de chiffrement est dérivée de votre mot de passe directement dans votre navigateur, via l'API Web Crypto — une interface cryptographique native, fournie par votre système d'exploitation, sans dépendance tierce.

Le mot de passe sert de secret initial. À partir de lui, PBKDF2 effectue 210 000 passages de hachage SHA-256 pour produire une clé AES-256 bits. Ce nombre d'itérations correspond à la recommandation NIST 2023 — il rend toute attaque par force brute prohibitivement coûteuse.

La clé dérivée est marquée non exportable par le navigateur : elle existe uniquement en mémoire pour la durée de la session, et ne peut être lue ni par JavaScript, ni par Kapsul.

Chiffrement avant envoi — AES-256-GCM

Chaque donnée sensible (enveloppes, transactions, positions de portefeuille) est chiffrée avant d'être transmise au réseau. Le processus, à chaque écriture :

  1. Génération d'un IV de 96 bits aléatoires, unique pour cette opération
  2. Chiffrement AES-256-GCM de la donnée JSON sérialisée
  3. Concaténation IV + ciphertext encodée en Base64
  4. Envoi de cette chaîne opaque vers le serveur

Le mode GCM (Galois/Counter Mode) garantit à la fois la confidentialité et l'intégrité : toute altération du ciphertext en transit est détectée et le déchiffrement échoue.

Ce que Supabase stocke

Supabase est notre base de données. Elle ne reçoit que des blobs chiffrés — des chaînes Base64 sans structure lisible. Un accès direct à la base ne révèle aucune information financière.

Concrètement, une ligne de transaction en base ressemble à :

data_encrypted: "3k2nP9xQr7...YmFzZTY0...3RyaW5n"

Supabase Auth gère séparément votre adresse e-mail et votre session de connexion — c'est la seule donnée identifiable qu'il détient. Votre mot de passe de chiffrement (distinct du mot de passe de connexion) n'est jamais transmis.

Architecture zéro-connaissance

Le modèle est dit Zero-Knowledge : même en cas d'accès complet à nos infrastructures (base de données, logs serveur, trafic réseau), il est techniquement impossible de lire vos données — la clé n'y est jamais présente.

Ce modèle a une conséquence importante : si vous perdez votre mot de passe de chiffrement, vos données sont irrécupérables. Nous ne pouvons pas effectuer de réinitialisation. Conservez-le dans un gestionnaire de mots de passe.

Implémentation — Web Crypto API

Aucune bibliothèque cryptographique externe n'est utilisée. Tout repose surwindow.crypto.subtle, l'API cryptographique embarquée dans tous les navigateurs modernes (Chrome, Firefox, Safari, Edge). Elle est implémentée au niveau du système d'exploitation et auditée indépendamment.

Le code de chiffrement de Kapsul tient en moins de 70 lignes et peut être audité directement dans les outils développeur de votre navigateur.

Données de marché — cotations et historique

Les cours boursiers (actions, ETF) et les taux de change sont récupérés en temps réel depuis l'API publique Yahoo Finance. Ces requêtes ne contiennent aucune donnée personnelle — uniquement des symboles boursiers (AAPL, RDDT…).

Les positions de votre portefeuille (quantité, PRU, date d'achat) sont chiffrées comme toutes les autres données sensibles — Yahoo Finance ne les reçoit jamais.

Récapitulatif — qui voit quoi

DonnéeVousKapsul / SupabaseTiers
Transactions & enveloppes✓ LisibleChiffré (illisible)Jamais transmis
Positions portefeuille✓ LisibleChiffré (illisible)Jamais transmis
Clé de chiffrement✓ En mémoireJamais reçueJamais transmise
Adresse e-mail✓ (Supabase Auth)Non partagée
Symboles boursiersLogs serveurYahoo Finance (anonyme)

Cette architecture de chiffrement de bout en bout est active pour tous les comptes, y compris en période bêta. Aucune donnée financière n'est stockée en clair, quelle que soit la formule d'abonnement.