Ǧardien (Crée ton compte et garde tes secret en lieu sur)

Le principe :

Guider l’utilisateur dans la création de son compte avec un processus à la fois simple et sécurisé.
Pour ça, une progressive web app destinée à être utilisé hors ligne (comme Gsper) avec le parcours suivant :

  1. Générer un compte (en option : en utilisant un identifiant secret/salt et mdp, autre option, sauvegarder un contenu arbitraire)
  2. Préparer l’impression (combien émettre de fragments, combien de fragment nécessaire pour reconstituer le compte)
  3. Imprimer les fragments sous forme mots + QR-Code selon le protocole SLIP-0039 (éventuellement en option, générer des fragments bonus pour le document de révocation)
  4. Reconstituer les fragments sous forme de fichier EWIF sur le ou les terminaux depuis les quels on veut pouvoir s’authentifier (en option, générer le document de révocation à partir de l’accès au compte)
  5. Distribuer les fragments à des personnes de confiances (et/ou dans des lieux sur)

Prototype (partiellement bugué) existant :

https://seedhodler.io/ (src)

Qu’en pensez-vous ?

7 J'aimes

Le fichier de révocation contient le BLOCK_UID de création du compte. Si Ğardien (re)crée un compte membre, il a besoin d’être en ligne.

Si on veut que Ğardien soit manipulé uniquement hors-ligne, on peut faire :

  • soit sauvegarder la seed (ou le fichier PubSec) en fragments (compte membre ou non)
  • soit sauvegarder un doc de révocation déjà généré en fragments
  • soit les deux (deux onglets)

Hors-ligne veut probablement dire ici « dont le code provient d’une source locale sûre », pas « sur une machine déconnectée d’Internet ». Le programme peut demander le dernier blockstamp à un nœud Duniter même en étant un fichier .html ouvert directement depuis le navigateur.

Je serais plutôt pour l’approche ou il est recommandé d’être déconnecté d’internet lorsqu’on l’utilise.

Mais comme pour la prochaine version de Gsper, il peut y avoir certaines étapes ou l’accès internet facilite (retrouver sa clef publique), et d’autres ou il est recommandé de se couper du réseau (saisir ses secrets).

Ceci dit, je préfère que le cas d’utilisation principal de l’app soit faisable 100% hors ligne et que seul des usages auxiliaire sollicite le réseau.

Mon idée initiale est en effet de ne sauvegarder par défaut que la seed sous forme de fragment (un fichier de révocation pouvant être généré à tout moment une fois qu’on a récupérer l’accès au compte).
L’option pour sauvegarder un contenu arbitraire en fragments permettrait de sauvegarder soit un document de révocation pré-généré, soit ses identifiants secrets et mdp pour qui voudrait pouvoir les retrouver pour s’authentifier avec plutôt que par fichier EWIF.

Question stupide : keepassx ne peut-il déjà faire ça ?

Pas à ma connaissance.

L’idée derrière Ğardien, c’est de faire pour Duniter ce que fait DarkCrystal dans Patchbay/SSB : sauvegarder un secret en le partageant à plusieurs personnes, de sorte qu’il faille plusieurs fragments pour reconstituer le secret.

2 J'aimes