Nous allons vous montrer trois techniques, de la plus simple à la plus sûre. Encore une fois, aucune de celles-ci n'est une solution magique ou parfaite. N'hésitez pas à les tester selon vos possibilités et compétences techniques.

Notez que toutes les versions de Tails étant signées par la même clé, vous n'aurez pas à vérifier la clé à chaque fois et que la confiance que vous pourriez progressivement lui accorder le sera une fois pour toute. En revanche, il vous faudra vérifier l'image ISO à chaque fois que vous en téléchargez une nouvelle !

Corréler plusieurs téléchargements de la clé de signature de Tails

Une technique simple pour augmenter la confiance que vous pouvez accorder à la clé de signature de Tails serait de la télécharger plusieurs fois, de plusieurs endroits, depuis différents ordinateurs, eventuellement plusieurs pays etc.

Vous pourriez, par exemple, les sauvegarder dans un même dossier sur une clé USB avec un nom différent pour chaque. Lancez ensuite les commandes suivantes dans un terminal pour vérifier qu'elles sont toutes identiques :

cd [votre dossier de téléchargements]
sha256sum tails-signing*.key

Cette commande devrait vous donner quelque chose comme ça :

7d4636ed49f6dd09d6e606936b6e686daad4200925875443668843b633ef6df2  tails-signing-desktop.key
7d4636ed49f6dd09d6e606936b6e686daad4200925875443668843b633ef6df2  tails-signing-laptop.key
7d4636ed49f6dd09d6e606936b6e686daad4200925875443668843b633ef6df2  tails-signing-library.key
7d4636ed49f6dd09d6e606936b6e686daad4200925875443668843b633ef6df2  tails-signing-seattle.key

Vous devrez ensuite vérifier visuellement que toutes les sommes de contrôle de la première colonne sont identiques, ce qui voudrait dire que les clés le sont également.

Vous pourriez aussi utiliser cette technique pour comparer des clés téléchargées par des amis ou d'autres personnes en qui vous avez confiance.

Utiliser la toile de confiance OpenPGP

Si vous voulez être très prudent et réellement authentifier la clé de signature de Tails d'une manière plus forte que ce que le HTTPS standard vous permet, vous allez devoir utiliser la toile de confiance OpenPGP.

Un problème inhérent au HTTPS standard est le fait que la confiance généralement accordée à un site web est définie par des autorités de certification : un ensemble fermé et hiérarchique d'entreprises et d'institutions gouvernementales agréées par les vendeurs de navigateurs web. La critique de ce modèle de confiance a été faite depuis longtemps et il a été montré de nombreuses fois qu'il était sujet à certaines attaques comme expliqué dans notre page d'avertissements.

Nous pensons plutôt que le dernier mot lorsqu'il s'agit de faire confiance à un site web doit revenir aux utilisateurs, et que la construction de la confiance devrait être basée sur des relations humaines.

La Toile de confiance OpenPGP est un modèle de confiance décentralisé basé sur les clés OpenPGP. Voyons ça avec un exemple.

Vous êtes un ami d'Alice et lui faites vraiment confiance quant à sa manière de gérer les clés OpenPGP. Vous avez confiance dans la clé d'Alice.

De plus, Alice a rencontré Bob, un développeur de Tails, lors d'une conférence et a signé sa clé. Alice a confiance dans la clé de Bob.

Bob est un développeur de Tails qui possède la clé de signature de Tails. Bob a pleinement confiance dans la clé de signature de Tails.

Ce scénario créé un chemin de confiance entre vous et la clé de signature de Tails vous permettant de lui faire confiance sans avoir à dépendre des autorités de certification.

Ce modèle de confiance n'est pas parfait non plus et demande à la fois prudence et intelligence dans le suivi de la part des utilisateurs. Les détails techniques de la création, de la gestion et des processus de confiance des clés OpenPGP vont au-delà du sujet de cette page.

Nous reconnaissons quand même qu'il n'est pas donné à tout le monde de pouvoir établir un bon chemin de confiance jusqu'à la clé de signature de Tails, cela étant basé sur un réseau de relations humaines ainsi que sur le savoir-faire relativement complexe d'outils comme OpenPGP.

Vérifier la clé de signature de Tails via le trousseau Debian

En suivant le précédent scénario, quand Alice a rencontré Bob, un développeur de Tails, elle aurait pu effectuer une nouvelle signature sur la clé de signature de Tails avec sa propre clé, pour certifier cette relation de confiance et la rendre publique. La clé de signature de Tails contiendrait désormais une nouvelle signature faite par Alice.

En fait, la clé de signature de Tails est déjà signée par les clés de plusieurs développeurs officiels de Debian, le système d'exploitation sur lequel est basé Tails. Debian utilise de manière considérable OpenPGP et vous pouvez télécharger les clés de tous les développeurs Debian en installant le paquet debian-keyring. Vous pouvez ensuite vérifier les signatures faites par ces développeurs avec leurs propres clés sur la clé de signature de Tails.

Pour télécharger le trousseau Debian vous pouvez faire :

sudo apt-get install debian-keyring

Pour obtenir une liste des signatures faites par d'autres personnes sur la clé de signature de Tails vous pouvez faire :

gpg --keyid-format long --list-sigs 1202821CBE2CD9C1

Vous obtiendrez quelque chose comme ça :

pub   4096R/1202821CBE2CD9C1 2010-10-07 [expires: 2012-10-06]
uid                          Tails developers (signing key) <tails@boum.org>
sig 3        1202821CBE2CD9C1 2011-04-16  Tails developers (signing key) <tails@boum.org>
sig          BACE15D2A57498FF 2011-04-16  [User ID not found]
sig          CCD2ED94D21739E9 2011-06-12  [User ID not found]
uid                          T(A)ILS developers (signing key) <amnesia@boum.org>
sig 3        1202821CBE2CD9C1 2010-10-07  Tails developers (signing key) <tails@boum.org>
sig          BACE15D2A57498FF 2010-10-07  [User ID not found]
sig          8CBF9A322861A790 2010-12-24  [User ID not found]
sig          7EF27D76B2177E1F 2010-12-27  [User ID not found]
sig          CCD2ED94D21739E9 2010-12-29  [User ID not found]
sig          AC0EC35285821C42 2011-03-22  [User ID not found]
sig          C2DEE7F336042734 2010-10-24  [User ID not found]

Les lignes se terminant par '[User ID not found]' sont des signatures faites par des clés qu'à l'heure actuelle vous n'avez pas dans votre trousseau. Vous pouvez essayer de les chercher dans le trousseau Debian via leur identifiant de clé : la suite de 16 chiffres située entre l'étiquette 'sig' et la date. Par exemple, vous pouvez faire :

gpg --keyring=/usr/share/keyrings/debian-keyring.gpg --list-key CCD2ED94D21739E9

Si cette signature correspond à une clé du trousseau Debian, vous obtiendrez quelque chose comme ça :

pub   4096R/CCD2ED94D21739E9 2007-06-02 [expires: 2012-05-31]
uid                          Daniel Kahn Gillmor <dkg@fifthhorseman.net>
uid                          Daniel Kahn Gillmor <dkg@openflows.com>
uid                          [jpeg image of size 3515]
uid                          Daniel Kahn Gillmor <dkg@debian.org>
sub   4096R/C61BD3EC21484CFF 2007-06-02 [expires: 2012-05-31]
sub   2048R/125868EA4BFA08E4 2008-06-19 [expires: 2011-05-31]

Vous pouvez ensuite importer cette clé dans votre propre trousseau en faisant :

gpg --keyring=/usr/share/keyrings/debian-keyring.gpg --export CCD2ED94D21739E9 | gpg --import

Vous pouvez désormais essayer de vérifier la signature faites par cette nouvelle clé sur la clé de signature de Tails en faisant :

gpg --keyid-format long --check-sigs 1202821CBE2CD9C1

En réponse, le status de la vérification est indiqué par un marqueur juste après l'étiquette "sig". Un "!" indique que la signature a été vérifiée avec succès, un "-" une mauvaise signature et un "%" indique qu'une erreur est survenue lors de la vérification de signature (e.g. un algorithme non pris en charge). Par exemple, dans la réponse suivante la signature de Daniel Kahn Gillmor sur la clé de signature de Tails a été vérifié avec succès :

pub   4096R/1202821CBE2CD9C1 2010-10-07 [expires: 2012-10-06]
uid                          Tails developers (signing key) <tails@boum.org>
sig!3        1202821CBE2CD9C1 2011-04-16  Tails developers (signing key) <tails@boum.org>
sig!         CCD2ED94D21739E9 2011-06-12  Daniel Kahn Gillmor <dkg@fifthhorseman.net>
uid                          T(A)ILS developers (signing key) <amnesia@boum.org>
sig!3        1202821CBE2CD9C1 2010-10-07  Tails developers (signing key) <tails@boum.org>
sig!         CCD2ED94D21739E9 2010-12-29  Daniel Kahn Gillmor <dkg@fifthhorseman.net>

pub   4096R/1202821CBE2CD9C1 2010-10-07 [expires: 2012-10-06]
uid                          T(A)ILS developers (signing key) <amnesia@boum.org>
sig!3        1202821CBE2CD9C1 2010-10-07  T(A)ILS developers (signing key) <amnesia@boum.org>
sig!         CCD2ED94D21739E9 2010-12-29  Daniel Kahn Gillmor <dkg@fifthhorseman.net>

3 signatures not checked due to missing keys

Rejoignez la toile de confiance !

La toile de confiance étant basée sur des relations humaines et des interactions dans la vraie vie le mieux serait d'entrer en contact avec des gens qui s'y connaissent en OpenPGP, de commencer à l'utiliser et à construire des liens de confiance afin de vous frayer votre propre chemin de confiance jusqu'à la clé de signature de Tails.

Vous pourriez commencer par prendre contact avec un groupe d'utilisateurs Linux ou autres amis de Tails proches de chez vous et échanger à propos des procédés OpenPGP.

En lire plus à propos de OpenPGP