Ce document propose un mécanisme de distribution et d'activation du certificat de révocation de la clé de signature de Tails.

Objectifs

Couverts par la proposition actuelle :

  1. Empêcher une personne seule de révoquer notre clé de signature.
  2. Permettre à un groupe de personnes appartenant à tails@boum.org de révoquer notre clé de signature dans le cas où la plupart des personnes de tails@boum.org deviennent injoignables.
  3. Permettre à un groupe de personnes, pas nécessairement de tails@boum.org, de révoquer notre clé de signature dans le cas où tous ou presque tous les membres de tails@boum.org deviennent injoignables.
  4. Rendre difficile à un groupe de personnes n'appartenant pas à tails@boum.org de révoquer notre clé à moins que tous ou presque tous les membres de tails@boum.org soient injoignables.
  5. Les personnes n'appartenant pas à tails@boum.org ne devraient pas savoir comment les parts sont distribuées, et qui en a.
  6. Les personnes possédant une part du certificat de révocation de la clé de signature devraient avoir des instructions pour s'en servir si nécessaire.

Groupes

Nous définissons quatre groupes complémentaires de personnes de confiance :

  • Groupe A : les personnes de tails@boum.org
  • Groupe B
  • Groupe C
  • Groupe D

Toutes ces personnes doivent avoir une clé OpenPGP et comprendre ce qu'est un certificat de révocation.

Parts cryptographiques

Nous générons un certificat de révocation de la clé de signature et le découpons en un certain nombre de parts cryptographiques, par exemple en utilisant la méthode du partage de clé secrète de Shamir, implémentée par gfshare.

Les combinaisons suivantes de personnes pourraient se regrouper et réassembler leurs parts pour reconstruire un certificat de révocation complet :

  • Trois personnes de tails@boum.org : A{3}
  • Deux personnes de tails@boum.org et une autre personne n'appartenant pas à tails@boum.org : A{2}+(B|C|D)
  • Une personne de tails@boum.org et deux personnes n'appartenant pas à tails@boum.org mais de deux groupes différents : A+(B|C|D){2}
  • Trois personnes n'appartenant pas à tails@boum.org mais de trois groupes différents : (B+C+D){3}

Nous générons ces parts :

  • N parts, une pour chaque personne de tails@boum.org
  • 1 part pour les personnes du groupe B
  • 1 part pour les personnes du groupe C
  • 1 part pour les personnes du groupe D

Qui sait quoi

  • Les personnes de tails@boum.org connaissent la composition de chaque groupe
  • Les personnes extérieures à tails@boum.org :
    • Sont informées des circonstances dans lesquelles elles devraient révoquer la clé de signature
    • Sont invitées à contacter une certaine adresse email si elles décident de révoquer la clé de signature
    • Sont informées qu'elles ont besoin de trois parts différentes pour réassembler le certificat de révocation

Infrastructure

  • Toutes les personnes ayant une part sont inscrites à une liste de diffusion.
  • Cette liste de diffusion est hébergée sur un serveur de confiance différent de boum.org afin d'être plus résilient que nos canaux habituels de communication.

Changer les membres des groupes B, C, ou D

Pour ajouter une personne à un groupe donné :

  • Demander à une personne de ce groupe d'envoyer sa part à la nouvelle personne.

Pour retirer une personne d'un groupe :

  • Envoyer de nouvelles parts à tout le monde sauf à la personne qui est retirée.
  • Demander à tout le monde de supprimer leur part précédente et garder une trace de ceci. Une fois que tous les membres de 2 groupes parmi les groupes B, C ou D ont supprimé leur part, il est impossible de reconstituer le certificat avec les anciennes parts.
  • Espérons que cela n'arrive pas souvent :)

Expiration

Les certificats de révocation n'ont pas de date d'expiration. Une manière d'annuler le pouvoir de révocation est de détruire toutes les copies des parts de deux groupes parmi les groupes B, C ou D.

Email envoyé aux membres des groupes

Sujet : distribution

Salut,

Nous voulons vous proposer de faire partie de notre mécanisme de
distribution du certificat de révocation de la clé de signature de Tails.

L'idée est de distribuer des parts cryptographiques du certificat de
révocation à des personnes en qui nous avons confiance. Ces parts
cryptographiques peuvent être mises ensemble pour réassembler le certificat
de révocation et révoquer la clé de signature de Tails. Cela peut être
nécessaire dans le cas où quelque chose de vraiment mauvais nous arriverais
et où nous ne serions pas capable de faire la révocation nous-mêmes.

Note : dans la totalité de ce document, 'nous' correspond au groupe de
personnes inscrites à tails@boum.org, c'est une liste de diffusion
Schleuder.

Vous pouvez lire la description complète du mécanisme de distribution sur :

https://tails.boum.org/doc/about/openpgp_keys/signing_key_revocation/index.fr.html.

La procédure est publique et le seul élément secret est la liste des
personnes en possession du matériel cryptographique.

Nous vous proposons cela car nous vous faisons confiance à la fois pour vos
capacités techniques à stocker votre part dans un lieu sûr et à faire les
manipulations nécessaires mais également car nous vous faisons confiance en
tant qu'être humain pour avoir un jugement éclairé sur quand utiliser cette
part et pour agir uniquement dans l'intérêt de Tails.

Les pires choses qui pourraient arriver si le mécanisme échoue sont :

A. La clé de signature n'est pas révoquée alors qu'elle le devrait. Cela
pourrait rendre possible à des attaquants de distribuer des images ISO Tails
malveillantes ou de publier des informations malveillantes en notre nom.

B. La clé de signature est révoquée alors qu'elle n'aurait pas dû. Cela
pourrait empêcher des personnes de vérifier nos images ISO avec OpenPGP
jusqu'à la publication d'une nouvelle clé de signature.

Distribution des parts
======================

Chaque personne de tails@boum.org, groupe A, a une part *différente*, A1,
A2, ..., An.

En plus de ça, nous définissons trois groupes complémentaires, B, C, et D de
personnes de confiance qui sont proches de Tails mais avec des intérêts
différents et des accès différents aux informations nous concernant. Vous
faites partie d'un de ces groupes.

Tout le monde dans le groupe B a une part B *identique*.

Tout le monde dans le groupe C a une part C *identique*.

Tout le monde dans le groupe D a une part D *identique*.

Trois parts différentes sont nécessaires pour réassembler le certificat de
révocation. Par exemple, les parts A1, A2 et A3, ou les parts A1, B et C.

Comment stocker vos parts
=========================

Veillez conserver votre part dans un stockage chiffré et rendre aussi
difficile que possible à une personne non-fiable d'en faire une copie.

Vous pouvez renommer le fichier tant que vous conservez le nombre dans le
nom du fichier de votre part car il est nécessaire pour utiliser la part.

N'hésitez pas à faire une sauvegarde du fichier mais à un moment nous
pourrions vous demander de le supprimer et vous devrez pouvoir être en
mesure de savoir si vous avez encore une copie ou non. Ce n'est pas grave de
perde votre part si vous nous prévenez que vous l'avez perdu. Il est
actuellement pire de continuer à avoir une copie de votre part "quelque
part" en pensant ne pas en avoir que de l'avoir perdu par erreur.

N'hésitez pas à nous demander si vous avez besoin de clarification sur les
aspects techniques de cela.

Quand utiliser votre part
=========================

Tout le monde en possession d'une part est inscrit à une liste de diffusion.

Si une personne en possession d'une part apprenait qu'un très mauvais
événement était arrivé à un grand nombre d'entre nous et pense vraiment que
nous ne serons plus capable de révoquer la clé de signature de Tails
nous-mêmes, alors cette personne doit écrire à la liste de diffusion en
expliquant pourquoi elle pense que la clé de signature doit être révoquée.

Oui, il y a un algorithme mathématiquement prouvé pour cela et c'est ici que
votre jugement en tant qu'être humain est nécessaire. La description du très
mauvais évènement doit être vérifié ou soutenu par suffisamment de personnes
pour être plausible.

Gardez en tête que nous pouvons toujours révoquer la clé de signature
nous-mêmes si trois d'entre nous sont capables de communiquer et d'échanger
leurs parts. Donc nous avons besoin de votre aide seulement si seul deux
d'entre nous sont capables de communiquer.

À moins que n’ayez réellement besoin de commencer le processus de révocation
de la clé, n'écrivez pas à la liste de diffusion.

Communications futures
======================

Dans le cas où nous aurions besoin à l'avenir de communiquer avec vous à
propos de ce mécanisme de révocation, nous le ferons toujours avec des
messages signées avec la clé de signature de Tails. Nous pourrions faire ça
pour par exemple :

  - Vous demander d'envoyer votre part à un nouveau membre de votre groupe.

  - Vous demander de supprimer votre part. Cela peut-être nécessaire pour
    annuler le fonctionnement de la part d'une autre personne : dès que
    suffisamment d'entre vous avez supprimé votre part, les quelques
    personnes ne l'ayant pas supprimé se retrouvent avec des parts
    inutilisables.

Donc, pouvons-nous compter sur vous ?

Si vous répondez positivement, nous allons vous envoyer votre part et vous
inscrire à la liste de diffusion.

Merci et que la force soit avec vous !