Chiffrement à connaissance nulle

Vos données sont chiffrées sur votre appareil avant d'atteindre nos serveurs. On n'a aucune connaissance de votre mot de passe, de vos clés de chiffrement ni de vos informations personnelles. Même nous, on ne peut pas déchiffrer vos données.

Qu'est-ce que le chiffrement à connaissance nulle?

Le chiffrement à connaissance nulle, ça veut dire qu'on a littéralement aucune connaissance de votre mot de passe, de vos clés de chiffrement ou de vos données déchiffrées. Tout est chiffré côté client avant d'atteindre nos serveurs.

Au lieu d'envoyer votre mot de passe, vous utilisez des signatures cryptographiques pour prouver que vous le connaissez sans le révéler. Imaginez que vous prouvez avoir une clé sans la montrer.

  • Le mot de passe reste toujours sur votre appareil

  • Données chiffrées côté client avant le téléversement

  • Même nous, on ne peut pas accéder à vos données chiffrées

  • Une fuite des serveurs ne peut pas exposer vos informations

Le principe de connaissance nulle

Ce qu'on peut voir et ce qu'on ne peut pas voir

On ne voit JAMAIS :

  • Votre mot de passe (en clair ou chiffré)

  • Vos clés de chiffrement

  • Vos informations d'identité (noms, dates de naissance, adresses)

  • Vos justificatifs (cartes de crédit, pièces d'identité, permis)

  • Aucune donnée déchiffrée : tout est chiffré côté client

On voit uniquement :

  • Un hachage de votre preuve d'authentification (non réversible)
  • Votre sel unique pour la dérivation de clé
  • Des blocs de données chiffrées (illisibles pour nous)
  • Des numéros de téléphone chiffrés côté serveur (nécessaires au routage des SMS et des appels)
  • Des modèles d'utilisation anonymes (sans identifiants personnels)
Preuve à connaissance nulle

Comment fonctionne la connexion à connaissance nulle

Un processus cryptographique qui prouve votre identité sans révéler votre mot de passe

1

Demande de sel

Le client demande votre sel unique (octets aléatoires) nécessaire pour dériver les clés de chiffrement à partir de votre mot de passe.

2

Dérivation de la clé

Votre appareil dérive une clé de chiffrement principale à partir de votre mot de passe à l'aide d'Argon2id, une fonction de dérivation à coût mémoire (64 Mio de mémoire de travail, 3 itérations). Le coût mémoire est ce qui bloque les attaques par GPU et ASIC : forcer un seul mot de passe demande des gigaoctets de RAM par tentative, pas seulement des cycles CPU.

3

Génération de la preuve

Votre appareil crée une preuve cryptographique avec HMAC-SHA256 et votre clé dérivée. Cette preuve ne peut être générée que par quelqu'un qui connaît votre mot de passe.

4

Vérification de la preuve

Le serveur compare le hachage de votre preuve au hachage stocké à l'inscription. S'ils correspondent, l'authentification réussit, sans voir votre mot de passe.

5

Création de la session

Les cookies de session sont stockés sous forme de cookies HttpOnly, ce qui bloque l'accès JavaScript et les attaques XSS.

Pourquoi c'est important

L'authentification traditionnelle envoie votre mot de passe (chiffré en transit) au serveur, qui le vérifie. Si le serveur est compromis pendant la transmission ou le stockage, les mots de passe sont à risque. Avec la connaissance nulle, votre mot de passe ne voyage jamais nulle part. Un attaquant qui intercepte le trafic réseau ou compromet nos serveurs n'obtient rien d'utile : seulement des hachages de preuves cryptographiques qui ne peuvent pas être inversés pour révéler votre mot de passe.

Détails techniques

Implémentation cryptographique

Dérivation des clés

  • Argon2id avec 64 Mio de coût mémoire et 3 itérations

  • Sel unique de 32 octets par utilisateur

  • Clés séparées pour l'authentification et le chiffrement

  • La conception à coût mémoire défait les attaques par GPU et ASIC

Authentification par mot de passe

  • Génération de preuve cryptographique HMAC-SHA256

  • Vérification de preuve à connaissance nulle

  • Stockage de preuve hachée SHA-256

  • Protection contre les attaques temporelles

Chiffrement des données

  • Chiffrement authentifié AES-256-GCM

  • Chiffrement côté client uniquement

  • Aucune connaissance du texte clair côté serveur

  • IV unique par opération

Indirection de clé à deux couches

  • Votre mot de passe dérive une clé principale (Argon2id)

  • La clé principale enveloppe une clé de coffre distincte, propre à votre compte

  • Toutes vos données sont chiffrées avec la clé de coffre, pas la clé principale

  • Un changement de mot de passe ne fait que ré-envelopper la clé de coffre, sans rechiffrer vos données

Confidentialité persistante des communications

  • SMS, MMS, appels et messagerie vocale entrants utilisent l'agrément de clé X25519 sur courbe elliptique

  • Chaque message génère une nouvelle paire de clés éphémère côté expéditeur

  • La clé privée éphémère est effacée immédiatement après le scellement

  • Compromettre votre clé privée demain ne déchiffre pas les messages d'hier

Sécurité de session

Protéger votre session

Comment on empêche le détournement de session et les attaques XSS

Couches de protection de la session

Plusieurs mécanismes de sécurité travaillent ensemble pour protéger votre session authentifiée :

Cookies HttpOnly

Les cookies de session stockés dans des cookies HttpOnly ne sont pas accessibles à JavaScript, ce qui bloque le vol par XSS

Politique SameSite

SameSite=Lax empêche l'envoi des cookies dans les requêtes intersites, ce qui bloque les attaques CSRF

Indicateur Secure

Les cookies ne sont transmis qu'en HTTPS, ce qui empêche l'interception par un intercepteur (man-in-the-middle)

Jetons CSRF

Les opérations qui modifient l'état nécessitent des jetons CSRF que les attaquants ne peuvent pas falsifier

Expiration de la session

Les sessions expirent automatiquement après 24 heures, ce qui limite la fenêtre de compromission

Clé de coffre chiffrée

Votre clé de coffre en mémoire (la véritable clé qui chiffre vos données) est conservée comme une référence non extractible et effacée à la déconnexion. La clé principale, elle, est effacée juste après avoir déballé la clé de coffre à la connexion.

Pourquoi c'est important

Protection XSS

Même si un attaquant injecte du JavaScript malveillant dans votre navigateur, il ne peut pas accéder à vos cookies de session, parce que les cookies HttpOnly ne sont pas exposés à JavaScript.

Protection CSRF

Les attaquants ne peuvent pas faire faire à votre navigateur des requêtes authentifiées à notre API : les cookies SameSite et les jetons CSRF bloquent les requêtes intersites.

Défense en profondeur

Plusieurs couches de protection : si un mécanisme de sécurité échoue, d'autres sont toujours en place pour protéger votre session.

Sécurité des cookies

  • L'indicateur HttpOnly bloque l'accès JavaScript

  • L'indicateur Secure impose le HTTPS

  • SameSite=Lax bloque les requêtes intersites

  • Portée de domaine explicite

En savoir plus sur notre politique de cookies

Stockage de session

  • Clé de coffre conservée comme référence WebCrypto non extractible en mémoire

  • Chiffrement AES-256-GCM

  • Expiration automatique

  • Nettoyage sécurisé de la mémoire à la déconnexion

En savoir plus sur notre politique de cookies

Foire aux questions

Que signifie réellement la connaissance nulle?

La connaissance nulle, ça veut dire qu'on n'a aucune connaissance de votre mot de passe ni de vos clés de chiffrement. Vous ne nous envoyez jamais votre mot de passe : à la place, vous prouvez que vous le connaissez à l'aide de signatures cryptographiques. Même si quelqu'un compromettait nos serveurs, il ne pourrait pas accéder à vos données, parce qu'on n'a pas les clés pour les déchiffrer.

En quoi est-ce différent de l'authentification traditionnelle par mot de passe?

Les systèmes traditionnels envoient votre mot de passe (même chiffré en transit) au serveur, qui le hache et le vérifie. Avec la connaissance nulle, votre mot de passe ne quitte jamais votre appareil. À la place, vous dérivez une clé cryptographique de votre mot de passe et vous générez une preuve. Le serveur vérifie que cette preuve correspond à celle calculée à l'inscription : votre vrai mot de passe n'est jamais transmis ni stocké.

Comment fonctionne la vérification de mot de passe à connaissance nulle?

Quand vous vous connectez, votre appareil dérive une clé de chiffrement à partir de votre mot de passe avec Argon2id (64 Mio à coût mémoire, 3 itérations). Il crée ensuite une preuve cryptographique avec HMAC-SHA256 et cette clé. Le serveur compare un hachage de cette preuve à celui stocké à l'inscription. Votre mot de passe ne quitte jamais votre appareil ; seule une preuve que vous le connaissez le fait.

Comment empêchez-vous le détournement de session?

On utilise plusieurs couches de protection de session : les cookies HttpOnly empêchent JavaScript d'accéder aux cookies de session (ce qui bloque les attaques XSS), SameSite=Lax empêche l'envoi des cookies dans les requêtes intersites (ce qui bloque CSRF), les indicateurs Secure imposent la transmission en HTTPS uniquement, et les jetons CSRF protègent les opérations qui modifient l'état. Même si un attaquant injecte du code malveillant, il ne peut pas voler votre session.

Où sont stockées mes clés de chiffrement?

Votre clé principale est dérivée de votre mot de passe avec Argon2id (64 Mio à coût mémoire, 3 itérations). Elle n'est jamais stockée nulle part : elle déballe brièvement la clé de coffre de votre compte à la connexion, puis elle est effacée de la mémoire. La clé de coffre (la véritable clé qui chiffre vos données) ne vit en mémoire que pendant la session active, comme une référence WebCrypto non extractible, et elle est effacée à la déconnexion.

Que se passe-t-il si WIGGWIGG est compromis?

Même si des attaquants compromettent complètement nos serveurs, ils ne peuvent pas déchiffrer vos données. On ne stocke pas les mots de passe : seulement des hachages de preuves d'authentification, non réversibles. On ne stocke pas les clés de chiffrement : vous les dérivez de votre mot de passe. Toutes vos données sensibles sont chiffrées côté client avant d'atteindre nos serveurs. Le pire qu'ils pourraient obtenir, ce sont des blocs chiffrés qu'ils ne peuvent pas lire.

Prêt à découvrir la vraie confidentialité?

Rejoignez WIGGWIGG et découvrez la sécurité à connaissance nulle par vous-même.