SelfRecover — protocole AGPL de récupération de compte sans email - LinuxFr.org

pierroons - LinuxFr - 29/05
L’actualité du logiciel libre et des sujets voisins (DIY, Open Hardware, Open Data, les Communs, etc.), sur un site francophone contributif géré par une équipe bénévole par et pour des libristes enthousiastes

Je suis agriculteur en Creuse et je code sur mon temps libre. J'ai commencé à m'intéresser à la question de la récupération de compte en développant ARC PVE Hub, un site destiné à fédérer une communauté de joueurs. Je n'ai jamais compris pourquoi il fallait transmettre son email pour régénérer un mot de passe — ça déplace la sécurité du compte vers un fournisseur SMTP tiers, qui n'est pas contrôlé par l'utilisateur.

J'ai donc imaginé un protocole de récupération sans email, sans SMS et sans tiers. Le travail s'est étoffé en partenariat avec un assistant IA (Claude), comme outil de réflexion et de mise en forme — j'y reviens en fin de dépêche dans une note de transparence.

L'incident de sécurité ANTS du 15 avril 2026 a publiquement illustré le problème. J'en ai eu connaissance après avoir développé SelfRecover, ce qui m'a confirmé la pertinence d'un protocole sans dépendance à l'email. SelfRecover est publié sous AGPL-3.0-or-later sur GitHub.

Cette dépêche présente le protocole, ses choix de conception, ses limites assumées, et la comparaison avec les approches existantes (Keycloak Recovery Codes en particulier, qui m'a été suggéré en relecture). Audit communautaire bienvenu.

Sommaire

    • Le contexte
    • Le protocole en deux phrases
    • Deux modes d'adoption
      • Mode Full — Sans email
      • Mode Lite — Avec email + mot mémorisé
      • Synthèse
    • SelfRecover vs Keycloak Recovery Codes
    • Que se passe-t-il si l'utilisateur perd son secret ?
      • Niveau 1 — Passphrase oubliée
      • Niveau 2 — Passphrase perdue, mais identifiant + mot de récupération retenus
      • Niveau 3 — Accès complètement perdu
      • Chat administrateur humain en mode restreint — état actuel
      • Évolution prévue (en réflexion) : pré-traitement optionnel par chatbot LLM local
      • Démo standalone vs implémentation de référence
      • Pourquoi assumer cette friction
      • Pour quel public
    • Modèle de menace assumé
    • Démos en ligne
    • Code et image Docker
    • Licence et philosophie
    • Note de transparence
      • Conception en partenariat avec un assistant IA
      • Plan d'audit
      • Statut du projet
      • Engagement communauté LinuxFr et culture du libre
    • Pour aller plus loin

Le contexte

Depuis l'essor du web, la réponse standard à « l'utilisateur a oublié son mot de passe » est « on lui envoie un lien de réinitialisation par email ». C'est devenu si universel qu'on oublie ce que ça implique :

  • La sécurité du compte est déléguée au fournisseur de la boîte mail (Gmail, Outlook, ProtonMail). Si la boîte mail tombe, le compte aussi.
  • Le canal email est régulièrement exploité par phishing : campagnes imitant des mails de réinitialisation légitimes pour capturer les mots de passe.
  • Les bases de données qui stockent les emails des utilisateurs deviennent une cible massive : leur fuite expose à la fois l'identité et les vecteurs de récupération.

L'incident de sécurité ANTS illustre une autre facette du problème de gestion des données d'authentification dans les services en ligne. Détecté le 15 avril 2026 et rendu public le 20 avril, il a touché 11,7 millions de comptes selon les communiqués officiels. La cause technique identifiée est une faille d'énumération de type IDOR (Insecure Direct Object Ref...
[Courte citation de 8% de l'article original]

Loading...