- Création de sites web
- Hébergement
- Gestion de mail avec antispam
- Dépôt de noms de domaine

3 rue Blomet
75015 Paris

Tél  01 47 31 85 41
Contact

Rechercher
 
[Tout voir]
Catégories
  C ds l'r
  HiTech
  Internet
  Siteparc
  Photo
  Ailleurs Land
  PC-Mac

Références
Mentions légales
Photo Zach Dischner
 
YABT (Yet Another Bitcoin Tutorial)
Par Frédéric Dumas, vendredi 07 février 2014 à 07:36 - HiTech

Graphique XBT/USD

Plus le taux de change de la monnaie créée à la fin de la décennie par "Satoshi Nakamoto" - le Bitcoin - grimpe contre dollar (1$ mi-2012, 10$ fin 2012, 100$ mi-2013, 1000$ fin 2013), plus les miners achètent et installent en batterie des ASICS capables de forger des bitcoins malgré la difficulté grandissante (ces équipements "du commerce" testent des milliards de digests par seconde, de quelques Ghash/s fin 2012 à quelques centaines fin 2013), plus se multiplient alors sur les blogs des articles et des avis personels, sur la désormais célèbre monnaie électronique.

Ce billet suit la tendance : son auteur n'a aucune autorité sur le sujet, mais s'en empare. Je ne fréquente pas assidûment les conférences ni ne lis tout ce qui s'écrit sur Bitcoin; j'ai de bonnes chances de cuisiner dans ce billet quelques erreurs et approximations. Cette "monnaie" repose sur des techniques qui ne nous sont pas familières; fouiller ses implications économiques, politiques et sociales entraine autant de questions nouvelles que n'apporte de réponses. Je m'en tiendrai donc à pousser quelques portes. Ma seule exigence, c'est de vérifier qu'elles ne se referment pas derrière moi, c'est à dire que je ne raconte pas n'importe quoi.

Ouvrir les bonnes portes, c'est aussi s'écarter de celles qui donnent sur quatre murs. Ce billet prend le contre-pied de conceptions erronnées associées à Bitcoin :

  • les bitcoins ne sont pas des pièces de monnaie électroniques, contrairement à ce que l'image du porte-monnaie laisse croire; mais que sont-ils alors ?
  • les bitcoins ne permettent pas les transactions financières anonymes, le système est construit au contraire pour garantir la tracabilité perpétuelle de chaque opération; tout au plus offre-t-il une forme de pseudo-anonymat ;
  • les bitcoins ne sont pas les mieux adaptés aux micro-payements, contrairement au ghetto dans lequel, faute d'y croire, on les cantonne habituellement.

Liquidités, mais sans monnaie

Bitcoin en piècesIl y a une image fausse du Bitcoin, celle de ces pièces scintillantes et entassées, forcément dorées ; elles sont frappées d'un B barré, singeant le dollar américain. On pourrait aussi les prendre pour des jetons de casino. L'illustration entretient le public dans l'illusion que les bitcoins sont des pièces électroniques. C'est la comparaison reprise dans la plupart des articles. On imagine ces bitcoins stockés dans un porte-monnaie (l'ordinateur de leur détenteur). Les faits divers rapportant le vol ("mon dépositaire s'est fait hacker") ou la perte de bitcoins ("j'ai formaté mon disque dur, tous mes bitcoins sont effacés") alimentent cette vision des choses. L'Autorité de contrôle prudentiel de la Banque de France elle-même parle du "risque de vols des bitcoins stockés sur un ordinateur". Pour comprendre où sont stockés et ce que sont les bitcoins, il faut recourir à un autre paradigme.

Qui a déja copié un fichier sur son ordinateur sait que cloner à l'identique est la caractéristique première de l'informatique. A vrai dire, échanger des fichiers est synonyme de les dupliquer : celui qui reçoît un fichier n'en prive pas celui qui l'envoie. Or, dans le cas de la monnaie, il est indispensable de dissocier ces deux propriétés : on cherche à faciliter l'échange mais aussi et surtout à s'opposer au clonage des "pièces". 

Pour concilier les deux exigences, la solution retenue par Satoshi Nakamoto consiste à publier et diffuser régulièrement vers tous les logiciels Bitcoin (qu'on pourrait par approximation appeler les "porte-monnaies") la totalité des transactions en cours. Toutes les 10 minutes environ, les transactions les plus récentes sont jointes ensemble en un block d'une taille variable (selon le volume de transactions). Ce block est une longue liste de tous les comptes ayant au cours des 10 dernières minutes émis ou reçus des bitcoins et de tous les montants impliqués dans chaque transfert. Ce block n'excède jamais la taille d'un méga-octet; anecdotique à ce stade, ce détail aura son importance plus tard.

Enfonçons donc une première porte ouverte. Les bitcoins ne sont pas ces pièces ou ces jetons qu'on imagine passer d'un porte-monnaie à l'autre. Contrairement à la croyance, ils ne sont pas stockés dans les "porte-monnaie" des utilisateurs. Les bitcoins n'ont pas d'autre existence que dans ce (très) long livre de comptes qui certifie le solde de chaque compte. Ce sont des unités dont on débite ou crédite des comptes et dont on tient scrupuleusement une comptabilité publique. En fait, Bitcoin est un vaste système public de compensation entre comptes, qui n'a d'autre existence que dans la block chain et les algorithmes du logiciel Bitcoin qui la manipule. Pas dans les fameux "porte-monnaie".

Block chainLes détails de chaque transaction sont diffusés publiquement pour ne pouvoir ultérieurement être falsifiés par personne. Les techniques de chiffrement à clés asymétriques certifiant la validité de ces blocks sont évidement beaucoup plus sophistiquées que ce résumé extrême. Je renvoie le lecteur voulant découvrir d'avantage ces mécanismes à cet excellent wiki sur Bitcoin.

Reste à comprendre ce qui arrive à ces malchanceux qui "perdent leurs bitcoins". Comment la disparition de leur "porte-monnaie" électronique peut les avoir "effacés", si précisément les bitcoins ne sont pas stockés localement, mais au contraire soigneusement et publiquement archivés dans la block chain ?

Il faut s'interroger sur ce dont est dépositaire en réalité le "porte-monnaie", le logiciel Bitcoin. Il ne détient jamais aucun bitcoin. Il détient les clés secrètes privées qui permettent d'autoriser les transferts depuis les comptes qu'il gère. Or, la force d'un système cryptographique à clés asymétriques est justement de tout faire pour qu'il soit impossible de "retrouver" une clé privée "perdue". Ce que malchanceux et imprévoyants perdent, ce ne sont pas leurs bitcoins, c'est la clé permettant de les dépenser. Les bitcoins, eux, restent attachés à ce compte désormais inutile, comme fossilisés dans la block chain.

Assez paradoxalement, il serait possible de continuer à créditer un tel compte dont on connait l'adresse (qui par définition n'est pas secrète) et d'augmenter ainsi leur encourt à fonds perdu. Ces bitcoins additionnels, ne pouvant plus jamais en être extraits, connaîtraient le confort du trou noir.

Pseudo-anonymat

L'ensemble des blocks, depuis ceux portant les toutes premières transactions de janvier 2009, constituent une information publique, ouverte, consultable par tous. Faites l'expérience d'installer et de commencer à utiliser le logiciel Bitcoin sur votre machine : sa première action est de télécharger la totalité de la block chain, morceau par morceau; il en vérifie au passage la complétude, comme les centaines de milliers d'autres clients Bitcoin en fonctionnement l'ont déjà fait. L'opération est d'ailleurs très laborieuse.

Inflation de la block chainRecensant et permettant de reconstituer la totalité des transactions passées pour la totalité des comptes existants, la taille de la block chain ne peut qu'être en inflation linéaire constante. En ce début d'année 2014, elle pèse une douzaine de gigaoctets. Toutes les transactions Bitcoin du monde entier tiennent donc encore sur un seul disque Blue-ray ! Le lecteur pourra vérifier si cette affirmation est toujours valide lorsqu'il lira mon billet.

Mais surtout, étant publique et ordonnée (sans être à proprement parler horodatée), la block chain permet à n'importe qui de prendre connaissance de tous les mouvements de bitcoins, depuis et vers n'importe quel compte. Là où nous sommes habitués à un relatif secret bancaire pour l'exécution de nos virements classiques, Bitcoin provoque au contraire la divulgation sans exception de toutes les transactions. Pourquoi alors flotte autour de Bitcoin cette réputation d'anonymat ?

Enfonçons une seconde porte ouverte. Pour transférer des bitcoins d'un compte à un autre, on a besoin de connaître l'adresse du compte bénéficiaire. Pour un usage commercial courant, on connaîtra évidemment l'identité du détenteur du compte dont on reçoit ou vers lequel on transfère les bitcoins. Mais contrairement au transfert bancaire classique, cette information n'est pas nécessaire. D'ailleurs, elle n'apparait nulle part dans les blocks. Nous connaissons l'identité du détenteur simplement parce que nous sommes en relation d'affaires avec lui.

Dès lors, pensent certains, si je ne dis à personne que ce compte m'appartient, je peux payer ou recevoir des bitcoins anonymement. Or, cet espoir repose largement sur un effet d'optique et sera le plus souvent déçu.

Loupe a la traceRappelons-nous que la block chain donne à connaître toutes les transactions passées et présentes de tous les comptes. Divulguer son identité pour une transaction (auprès d'un bureau de change de devises en ligne par exemple) donne à celui qui possède ce lien entre l'adresse d'un compte Bitcoin et l'identité d'une personne, la connaissance de toutes les transaction passées par cette personne. En sens inverse, en suivant la trace des transactions passées propres à un compte donné, retrouver et interroger les personnes ou les organismes qui ne font pas mystères, eux, de leur identité, et qui connaitraient celle de l'inconnu, est également faisable. Les Douanes en ont récemment fait la démonstration en interrogeant une plateforme de change pour connaître l'identité d'un client détenteur d'un compte Bitcoin utilisé pour un trafic de drogue "anonyme" et interpeler ensuite l'individu par des méthodes classiques.

Pour exister, l'anonymat devrait être scrupuleusement respecté pour toutes les transactions d'un compte donné, sans exception. Celui qui cherche à conserver son compte Bitcoin strictement anonyme devrait n'y recevoir des bitcoins que de personnes ou organismes qui ignorent qui il est vraiment, et n'en transférer qu'à des personnes qui ignorent de qui elles reçoivent ce payement. Dans la vie de tous les jours, celle dans laquelle Bitcoin se propose comme un nouveau moyen de payement, ces conditions draconiennes pour rester réellement anonyme ne sont jamais remplies !

En fait, à chaque fois que nous lions notre compte Bitcoin à notre identité réelle, nous brisons l'anonymat et laissons voir à tous ceux qui seraient en possession de cette information l'ensemble de nos transactions passées. Parmi beaucoup d'exemples, c'est un pouvoir phénoménal offert aux marchands en ligne, qui pourraient reconstituer en parcourant la block chain nos habitudes d'achats, à toutes les époques. Utiliser des comptes Bitcoin différents pour chaque transaction, dans l'espoir d'interdire les rapprochements, n'est qu'une protection incertaine: à un moment ou un autre, on souhaitera bien consolider les sommes éparpillées sur tous ces comptes. Une analyse un peu poussée de la block chain dévoilera ces corrélations; gageons que les logiciels pour le faire existent ou sont en cours de développement. L'histoire des remailers me laisse dubitatif face aux services de mélange des bitcoins. Au mieux pourra-t-on gêner un peu le travail des pisteurs les moins persévérants, sans jamais se cacher définitivement.

Europe sans cashQuoiqu'en pensent les libertariens, l'incapacité de Bitcoin à garantir l'anonymat est sans doute plus un atout qu'un handicap. Elle permet d'écarter une objection très forte formulée par les Etats, qui rejetteraient sans aucun doute dans l'illégalité un moyen de payement moderne vraiment anonyme. Il n'est qu'à voir les efforts en Europe pour limiter toujours davantage la possibilité d'utiliser des espèces. Par conception, les traces consignées par Bitcoin dans la block chain rendent au contraire possible le travail des enquêteurs de tous bords. L'utilisateur d'aujourd'hui ferait bien d'en prendre conscience.

Grosse monnaie contre micro-payements 

Une troisième et dernière idée fausse consiste à voir en Bitcoin le moyen par excellence des micro-payements, ces payements d'un ou deux euros pour la transaction desquels les cartes de crédit sont réputées prélever des frais astronomiques en comparaison de la somme en jeu. Faute de mieux, la solution habituellement retenue pour ces payements de très petits montants repose sur l'envoi de SMS "premium" depuis le téléphone mobile.

L'idée que Bitcoin est adapté aux micro-payements pourrait avoir deux origines :

  • Inconnu dans le commerce traditionnel, Bitcoin est actuellement sur-représenté sur les seuls sites web l'utilisant pour collecter des dons, qu'on imagine être de faibles montants. Cet usage participe à son image. L'arrivée de Bitcoin en 2014 sur des sites web marchands américains de premier plan changera la donne.
  • L'absence de système bancaire prélevant une commission au passage laisse faussement penser que les transactions par Bitcoin sont gratuites, ou au moins d'un coût forcément très faible. Ce qui est vrai aujourd'hui pourrait ne plus l'être demain.

Le wiki Bitcoin déjà cité donne quelques comparaisons éclairantes entre les capacités du réseau bancaire traditionnel et le réseau Bitcoin, en nombre de transactions à la seconde :

  • Visa est ainsi estimé supporter jusqu'à 10.000 transactions par seconde, avec un rythme de croisière d'environ 2000;
  • Paypal est estimé en supporter 100 fois moins, soit une centaine par seconde avec un rythme de croisière moitié moindre (environ 50);
  • Bitcoin est lui limité à 7 transactions par seconde, avec une charge aujourd'hui observée de moins d'une transaction par seconde.

Pourquoi une telle limite propre à Bitcoin ? Rappelons l'existence de deux constantes évoquées plus haut et liées au protocole lui-même :

  • un block réunissant les dernières transactions ne peut excéder une taille d'un méga-octet;
  • il faut environ 10 minutes pour calculer un block;
  • ajoutons enfin une variable : une transaction a une taille moyenne de 250 octets.

Bitcoin loadPar construction, et sans préjuger d'évolutions futures du protocole Bitcoin relevant ces limites, on comprend que le nombre de transactions ne peut être beaucoup supérieur à 4000 par block, toutes les 10 minutes. Quand on voit la différence de plusieurs magnitudes entre le trafic Bitcoin et le trafic Visa (un demi million de transactions possibles par tranche de 10mn chez Visa), on sait qu'une situation de congestion sur le réseau Bitcoin n'est pas théorique, mais se produira nécessairement avec sa popularité croissante. Dès lors qu'il y aurait plus de transactions dans cette fenêtre de 10mn que le block ne peut en agréger ensemble, sur quel critère choisir d'inclure telle transaction au dépend de telle autre ?

C'est là qu'interviennent les frais de transactions, payés par l'émetteur, et perçus par ceux qui attachent les transactions en block (les miners). Ces commissions sont consenties à la discrétion de celui qui émet le payement, elles peuvent varier pour chaque transaction et même être égales à zéro. Cependant, il n'est pas difficile d'imaginer que les miners privilégient en priorité l'inclusion dans le block des transactions leur rapportant les plus fortes commissions. Les transactions présentant à la demande de l'émetteur les frais les plus faibles seront au pire ignorées, au mieux traitées avec retard.

Enfonçons une troisième et dernière porte ouverte: quels sont les transactions pour lesquelles l'émetteur aura le plus de réticence à accepter des frais élevés ? Les micro-payements, évidemment. En ce début d'année 2014, le volume des transactions ne sature pas la capacité de 7 transactions par seconde du réseau Bitcoin. Aussi, les miners conservent un intérêt à attacher à chaque block toute transaction qui se présente: quelque soit la commission associée, même nulle, son exécution ne se fera pas au détriment d'une autre mieux rémunérée. Mais au fur et à mesure de l'accroissement du volume des transactions, un arbitrage deviendra nécessaire entre elles. Les transactions à faible commissions deviendront donc de moins en moins prioritaires. Au premier rang desquelles les micro-payements.

Par construction, Bitcoin favorise ainsi la rapidité d'exécution des transactions qui rémunèrent le mieux les miners (vraissemblablement les transactions de forts montants vers un petit nombre de bénéficiaires) et désavantage les transactions qui les rémunèrent le moins bien (vraisemblablement les micro-payements). L'avenir dira si les micro-payements conserveront une place dans le système, à condition de consentir à des délais d'exécution très rallongés.

Contrairement à son image de monnaie bien adaptée aux payements de coin de table, cette caractéristique oriente Bitcoin vers un rôle de monnaie faite pour payer les "vrais" achats.

Merci au lecteur de rectifier par ses commentaires les contre-sens que j'aurais pu commettre dans ce billet.