Glossaire / Référence pour développeurs
PKI
Aussi appelé Infrastructure à clés publiques.
- Qu'est-ce que le PKI ?
- Le PKI, ou infrastructure à clés publiques, est le système d'autorités de certification, de certificats et de magasins de confiance qui permet à un logiciel de décider si une clé publique appartient réellement au nom qui lui est associé.
Le PKI est la façon dont le web résout le problème de la présentation : vous n'avez jamais rencontré le serveur, vous faites donc confiance à un tiers qui se porte garant de lui. Votre navigateur est livré avec une liste de quelques centaines de telles autorités, et n'importe laquelle d'entre elles peut se porter garante de n'importe quel nom. Bitcoin a été conçu pour éviter d'avoir besoin de cette liste.
Comment cela fonctionne
Le PKI comporte trois composants, et un seul d'entre eux se trouve sur votre appareil.
Une autorité de certification détient une clé de signature et délivre des certificats après avoir vérifié quelque chose au sujet du demandeur, ce qui, pour les certificats web ordinaires, signifie confirmer la maîtrise d'un nom de domaine et rien de plus. Un certificat lie un nom à une clé publique et porte la signature de l'autorité sur les deux. Un magasin de confiance, livré avec votre système d'exploitation ou votre navigateur et mis à jour en même temps que lui, énumère les autorités que vous acceptez, et tout le reste découle de cette liste.
La faiblesse du modèle est structurelle et non accidentelle. La confiance n'est pas délimitée : une autorité de n'importe quel pays peut délivrer un certificat pour n'importe quel domaine dans le monde, de sorte que la sécurité de chaque site équivaut à la sécurité de l'autorité la plus faible du magasin. Ce n'est pas hypothétique. Des attaquants qui ont compromis l'autorité néerlandaise DigiNotar en 2011 ont délivré un certificat frauduleux pour le domaine de Google et l'ont utilisé contre des internautes en Iran, les éditeurs de navigateurs ont retiré les racines de DigiNotar, et l'entreprise était en faillite en septembre de cette année-là. Google a annoncé en 2017 que Chrome cesserait de faire confiance à l'activité de certificats de Symantec après avoir déclaré que plus de 30 000 certificats avaient été délivrés de manière irrégulière.
Deux atténuations ont suivi. Certificate Transparency, spécifié dans la RFC 6962 en juin 2013, exige que les certificats soient publiés dans des journaux publics en ajout seul, afin qu'une délivrance abusive soit au moins détectable lorsqu'elle ne peut pas être empêchée. La durée de vie des certificats a aussi été fortement réduite, selon l'idée qu'un justificatif de courte durée limite les dommages causés par un certificat qui n'aurait jamais dû exister.
Où vous le rencontrez
Le PKI protège le moment où vous saisissez un mot de passe de plateforme d'échange, ce qui est son rôle principal dans la vie d'un acheteur de bitcoin.
C'est aussi là que ses limites se font sentir. Un cadenas signifie que la connexion est chiffrée et que le domaine correspond à un certificat. Il ne signifie pas que l'entreprise est honnête, agréée ou solvable, et un domaine ressemblant enregistré par un escroc obtient un certificat valide en quelques secondes précisément parce qu'il maîtrise bien ce domaine. Lisez l'orthographe du nom dans la barre d'adresse, et accédez au site par un marque-page plutôt que par une publicité.
Les fabricants de portefeuilles matériels exploitent leur propre petite infrastructure pour l'attestation des appareils, avec une seule racine qu'ils contrôlent au lieu d'un magasin public. Cette organisation est bien plus solide que celle du web pour la simple raison qu'elle ne contient aucun tiers.
La conception propre à Bitcoin a pris une voie entièrement différente. Une adresse est dérivée d'une clé par hachage, il n'y a donc aucun nom à certifier et personne à qui demander. Vous vérifiez une destination en comparant des caractères, ce qui nuit à la convivialité et retire plusieurs centaines de parties de confiance de l'équation.
PKI vs clé publique
Le PKI n'est pas le terme général désignant l'utilisation de clés publiques. Générer une paire de clés, recevoir du bitcoin à l'adresse qui en est dérivée, puis signer une transaction avec elle n'implique aucune autorité, aucun certificat et aucun magasin de confiance, ce qui est tout l'intérêt de cette conception. Le PKI est la bureaucratie spécifique construite pour associer des noms du monde réel à des clés, et bitcoin s'en passe délibérément.