Le Bitcoin et la Blockchain

24 juin 2016

La vidéo du jour décrypte les mystères du bitcoin, et vous explique vraiment comment il marche, et ce qu’est cette mystérieuse blockchain.

Pour préparer cette vidéo, j’ai dû pas mal me documenter. J’ai trouvé beaucoup d’endroits où les grands principes du bitcoin sont expliqués, mais assez peu d’infos détaillées sur ce qu’il se passe vraiment « sous le capot ». A force de lecture, je pense avoir compris l’essentiel, et j’espère donc avoir donné à tout le monde les éléments nécessaires pour comprendre comment un système comme le bitcoin pouvait tenir debout, et en quoi le concept de la blockchain assure la décentralisation du système.

Les conditions sur l’identifiant

Parmi les points que je n’ai pas explicités (même si je l’ai suggéré), il y a les « conditions » que l’on impose sur le résultat du hashage pour qu’il soit considéré comme valide pour proposer son bloc. Je rappelle : un noeud du réseau possède une liste de transactions « en attente », qui ne sont pas encore validées, c’est-à-dire qu’elles n’apparaissent pour l’instant dans aucun bloc. Pour faire de cette liste LE nouveau bloc, le noeud doit lui trouver un identifiant qui est obtenu en appliquant une fonction de hashage sur un ensemble contenant l’identifiant du bloc précédent, la liste des transactions (chiffrées) et un nonce.

(Petite précision au passage, il existe plein de possibilités différentes pour la fonction de hashage, le protocole Bitcoin utilise SHA256, que l’on peut tester en ligne ici).

Le résultat du hashage est une longue chaîne de caractères, et pour qu’un identifiant soit considéré comme valide, on impose qu’il commence par un certain nombre de zéros. Et pour avoir la chance que le résultat du hashage commence par une suite de zéro, il faut essayer plein de nonces différents. C’est ça le problème compliqué à résoudre…en fait il n’est pas « compliqué », c’est juste un truc de gros bourrin.

Plus la taille et la puissance du réseau bitcoin augmentent, plus on augmente le « nombre de zéros requis » par lequel doit commencer le résultat du hashage. C’est comme cela qu’on ajuste la difficulté du problème pour rester sur une moyenne de « 1 bloc nouveau toutes les 10 minutes ».

Les frais de transaction

Un autre détail que j’ai passé sous silence, c’est celui des frais de transaction. Quand on fait un paiement en bitcoin, outre le destinataire de la transaction, on peut décider de payer une petite somme au noeud qui arrivera à valider le bloc contenant la transaction. L’intérêt c’est qu’en faisant ça, on offre une incitation aux noeuds à inclure notre transaction dans le prochain bloc. Aujourd’hui ça n’a pas grande importance, car les noeuds qui valident un bloc reçoivent une récompense en bitcoin « nouvellement créés ». Mais cette récompense va en décroissant (25 BTC aujourd’hui, mais elle sera bientôt divisée par 2) et va tendre vers 0. A terme, ce sont les frais de transaction qui rémunèreront les noeuds « mineurs ». Le fait d’inclure des frais de transaction est quelque chose de libre, mais à terme les mineurs consacreront leurs efforts à faire valider les transactions qui leur donnent un peu de récompense en frais de transactions. Il y aura donc une incitation à inclure un peu de frais, sous peine de ne jamais se faire valider sa transaction.

Donc le bitcoin ne sera pas totalement gratuit, mais il y a fort à parier qu’à cause de la concurrence entre les mineurs, les frais de transaction soient très réduits, en tout cas bien inférieurs à ce qu’on trouve aujourd’hui par exemple avec les cartes de crédit, les virements ou Paypal.

Qui est le créateur du Bitcoin ?

Enfin pour les courageux qui m’ont lu jusque là, je termine avec une anecdote intéressante. On ne sait pas qui est le créateur du bitcoin. Officiellement, il s’agit d’un certain Satoshi Nakamoto, qui le premier a publié un article en 2009 décrivant le protocole, ainsi que le code. Sauf que cet individu n’existe pas ! Personne ne sait qui se cache derrière la création du bitcoin, et cette question n’est pas neutre puisque d’après la légende, Nakamoto (ou celui qui se cache derrière ce pseudo) possèderait actuellement plus d’un million de bitcoins !

Il existe plusieurs hypothèses : ce pourrait être en réalité un groupe de personnes plutôt qu’un individu unique. En effet beaucoup de gens trouvent que le code source est trop beau et trop parfait pour avoir été écrit par une seule personne. Ce pourrait être également un certain Craig Steven Wright, dont on a parlé récemment et qui a renoncé à prouver qu’il est Nakamoto. Peu de détails filtrent sur Satoshi Nakamoto, mais il communique très sporadiquement sur les forums. Certains ont noté que son anglais était impeccable (donc il est probablement anglophone), et ont même analysé la distribution des heures de post de ses messages pour essayer d’en déduire son fuseau horaire !

Petit détail amusant sur Satoshi Nakamoto et la naissance du bitcoin : quand on propose un bloc, on a la possibilité d’inclure un court message. Le tout premier bloc, qui a donc été « miné » par Nakamoto contient l’énigmatique message suivant: « Chancellor on brink of second bailout for banks ». Ce message a un rôle : c’est un titre du Times datant du 3 janvier 2009, sachant que le premier bloc a été miné le 5 janvier. L’idée était de prouver que le premier bloc, qui est à la base de la blockchain, ne pouvait pas avoir été miné avant le 3 janvier 2009. Pourquoi donc ? Pour exclure la possibilité d’une arnaque sophistiquée dans laquelle Nakamoto aurait pu pré-calculer plein de blocs, laisser la blockchain se développer, puis la pirater en utilisant tous ses blocs précalculés. Mais grâce à son message, Satoshi prouve au monde que le premier bloc n’a pas pu être calculé avant le 3 janvier 2009, et que donc il n’a pas pu préparer ce genre d’arnaque. Malin !


Le deep learning

8 avril 2016

Vous entendez parler du deep learning, mais vous n’en avez pas encore compris la profondeur ? Cette vidéo est faite pour vous !

Fidèle à mon habitude, voici la liste des choses essentielles, mais pourtant éliminées par manque de place et pour rester accessible au plus grand nombre. Lire la suite »


Jeu de Go, intelligence artificielle et le 19e coup

13 mars 2016

J’ai pondu une petite vidéo de réaction à chaud sur la victoire du programme informatique AlphaGo sur le champion de jeu de go Lee Sedol. La vidéo est sortie à 2-0 pour AlphaGo. A l’heure où j’écris ces lignes, on en est à 3-1 et il reste une manche à jouer. Mais AlphaGo a donc gagné la confrontation.

Lire la suite »


La fourmi de Langton [Vidéo]

12 décembre 2015

Le sujet de la dernière vidéo ? La simplicité et la complexité, l’ordre et le chaos, l’émergence !

Allez, et pour ceux qui se demandent ce qu’il se passe en dimension supérieure : la mouche de Langton !

 


Est-ce mal de montrer une courbe dont l’axe des ordonnées ne démarre pas à zéro ?

4 décembre 2015

La semaine dernière, j’ai publié une vidéo dont le but était d’examiner la physique qui se trouve derrière le réchauffement climatique. J’ai évidemment eu droit à une horde de commentaires climatosceptiques, dont je n’ai que faire puisque la vidéo ne s’adressait pas à eux : je l’avais plutôt faite pour toucher les « climato-agnostiques », ceux qui ne savaient pas trop quoi penser de tout ça et qui pouvaient avoir des doutes sur les fondements scientifiques du phénomène, ou sur l’opacité des modèles climatologiques.

Mais ça n’est pas de ça dont je veux vous parler aujourd’hui ! Je voudrai plutôt revenir sur une remarque qui m’a été faite plusieurs fois en commentaire (sans malveillance généralement) : le fait que ma courbe d’évolution du CO2 ait une ordonnée qui ne démarre pas à zéro. Voici la courbe en question :
CO2_600

Alors est-ce que c’est mal de faire une courbe avec l’ordonnée qui ne démarre pas à zéro ? Du point de vue des règles qui prévalent dans les revues scientifiques, absolument pas ! Et c’est vrai que je ne me suis pas posé la question en faisant le graphique.

Mais du point de vue de la communication vis-à-vis du grand public, a-t-on le droit de représenter des données comme ça ? ou bien est-ce trompeur ?

Commençons par rappeler ce que dit l’orthodoxie de la communication graphique (voir par exemple le gourou Edward Tufte). Pour un graphique « en barres », il est ABSOLUMENT interdit de ne pas démarrer l’échelle à zéro ! Par exemple, il est totalement proscrit de faire ça :

bargraph

Mais pourquoi est-ce interdit ? Parce que cela crée une manipulation sensorielle : intuitivement, on a tendance à juger de la magnitude du phénomène par la taille de la barre, donc si la taille de la barre n’est pas proportionnelle à la quantité qu’on représente, il y a clairement entourloupe.

Cela a notamment pour effet d’exagérer les différences, et donc éventuellement de faire croire qu’il y a un effet énorme là où il n’y en a pas forcément (en sciences il faudrait aussi parler des barres d’erreur, mais passons là-dessus pour l’instant.)

Maintenant posons nous la même question pour une courbe qui représente la variation d’une certaine quantité Y en fonction d’une autre quantité X, dans notre cas la concentration de CO2 en fonction du temps. Que dit la théorie orthodoxe ? Elle nous dit que dans le cas d’une courbe, notre cerveau ne note pas intuitivement la position de la courbe par rapport à zéro, mais compare plutôt la magnitude des évolutions.

Par exemple dans le cas du CO2, ce qui compte c’est que l’augmentation des deux derniers siècles est 5 à 10 fois plus importante que les fluctuations naturelles observées entre l’an 1000 et l’an 1800.

CO2 comparaison

Et ce résultat est vrai quelles que soient les unités et l’endroit d’où on démarre l’échelle de l’axe Y. On pourrait même ne pas mettre d’unités sur le graphe, cela reste vrai.

Tout ça pour dire que dans la théorie orthodoxe (et notamment celle qui prévaut dans les publications scientifiques), il n’y a absolument aucun problème à afficher une courbe dont l’échelle en ordonnées ne démarre pas à zéro. C’est même en général indispensable, voyez par exemple la courbe de fluctuation de l’irradiance solaire que je montre dans la vidéo

Solar-cycle-data

et imaginez ce qu’elle serait avec une échelle démarrant à 0 ! On ne verrait absolument rien.

Bon tout ça c’était pour la communication telle qu’elle est pratiquée par les scientifiques entre eux…mais qu’en est-il quand on s’adresse à du grand public ? Est-ce que « ne pas commencer l’axe Y à zéro » c’est « tromper » ? Commençons par remarquer que les standards auxquels nous habituent les journaux télévisés ne sont pas très élevés : pas d’échelle, ou une échelle non-linéaire, des corrélations tirées sur deux points, etc. Mais bon, on est quand même là pour faire un peu mieux que ça, non ?

Je l’avoue, en faisant cette courbe de CO2, je ne me suis absolument pas posé la question de savoir si ça allait induire le public en erreur, ou donner l’impression d’une manipulation. Mais vu que plusieurs personnes m’ont fait la remarque, peut-être aurais-je du être plus prudent et au minimum faire remarquer à l’oral que ma courbe ne commençait pas à zéro. Ou bien la commencer à zéro puis zoomer après coup.

Bref, chers lecteurs, chers spectateurs, est-ce que vous vous sentez manipulés par une courbe de ce genre ?

Amis scientifiques et vulgarisateurs, j’attends aussi votre opinion sur cette question !


La machine à inventer des mots, version Ikea

6 novembre 2015

ikea-flatpack-furniture-1Vous connaissez le canapé Söft ? La commode Utrad ? L’étagère Hång ? L’armoire Muskydd ? Le mixeur Skymfor ? La poële Kukväde ? Le placard Klöstig ? Le circuit Rundering ? La table Oljulstad ? Les rideaux Lykofåtsly ? Le bureau Håkmanedfol ? La chaise Sjärganskig ?

Eh bien contrairement aux apparences, ces noms ne font pas partie du véritable catalogue Ikea ! Ils ont été fabriqués automatiquement par un algorithme qui s’inspire de vrais mots suédois pour en créer de nouveaux, qui « sonnent suédois » mais n’existent pas dans cette langue. Lire la suite »


La machine à inventer des mots [Vidéo]

16 octobre 2015

Pour la première fois, j’ai décidé de vous proposer une vidéo non pas sur un sujet scientifique bien établi, mais sur un petit projet de recherche personnel que j’ai entrepris : comment créer des mots nouveaux qui sonnent bien ?

Pour ceux qui voudraient en savoir plus sur la méthode utilisée, voici quelques explications supplémentaires. Lire la suite »


Suivre

Recevez les nouvelles publications par mail.

Rejoignez 17 951 autres abonnés