×

We use cookies to help make LingQ better. By visiting the site, you agree to our cookie policy.


image

Science Étonnante, (#37) Le Bitcoin et la Blockchain (avec Heu?Reka) - YouTube

(#37) Le Bitcoin et la Blockchain (avec Heu?Reka) - YouTube

Depuis quelque temps j'avais envie de faire une vidéo sur le Bitcoin

et puis, il y a quelques semaines, Gilles qui est créateur de la chaîne Heu?reka

en a faite une qui est vachement bien.

Et à la réflexion je me suis dit qu'il restait quand même quelques détails techniques à expliquer,

notamment sur le concept de Blockchain qui est la technologie qu'il y a derrière le Bitcoin.

Et du coup j'ai quand même décidé de faire une vidéo

et j'ai demandé à Gilles de venir m'aider un peu !

- Salut Gilles, Tu nous dis un mot sur ta chaîne ?

- Hello David et merci de m'avoir invité à participer à cette vidéo.

- De nous avoir invités !

- Ah oui pardon, de nous avoir invités. Donc Heu?reka c'est une chaîne de vulgarisation

qui s'intéresse principalement à la finance et à l'économie.

On y aborde des sujets divers du genre : Quel est le lien entre l'économie réelle et la finance ?

Quel est l'intérêt des différentes monnaies ? ou encore, Qu'est-ce que c'est que le Quantitative Easing ?

- Bah pourquoi tu choisis les sujets les plus chiants, on parle aussi du loup de Wall Street, de The big short,

on vous dit tout sur les traders et on vous explique d'où vient l'argent.

Alors avant de regarder la suite, allez vous abonner à Heu?reka.

On entend souvent que le Bitcoin serait une monnaie électronique,

mais en fait vous savez, la monnaie actuelle, elle est déjà largement électronique.

Quand vous payez des petites sommes, vous payez peut-être avec des pièces ou avec des billets

mais dès que vous faites une transaction avec une carte bleue ou un virement,

la banque débite votre compte et elle crédite celui du vendeur.

Il n'y a pas d'échange d'argent physique, tout se passe dans les comptes de la banque

donc une bonne partie de la monnaie qu'on utilise est déjà électronique.

Aujourd'hui c'est à peu près quel pourcentage, Gilles ?

Aujourd'hui la masse monétaire totale en zone Euro c'est 11 000 milliards d'euros

et pourtant il n'y a qu'un peu plus de 1 000 milliards d'euros en pièces et en billets

donc l'argent que nous utilisons aujourd'hui est à plus de 90% électronique.

Toute cette monnaie elle n'existe que dans les livres de comptes de la banque.

Evidemment aujourd'hui, ce n'est pas un vrai livre, c'est plutôt une base de données de toutes les transactions,

c'est-à-dire un gros fichier informatique.

Mais du coup, si quelqu'un pirate le fichier informatique ou bien l'efface ?

Le Bitcoin c'est aussi une monnaie électronique mais elle est décentralisée, c'est ça le mot important.

C'est-à-dire que la base de données de toutes les transactions,

elle n'est pas gérée par une instance centrale comme une banque,

mais elle est partagée dans un immense réseau peer to peer.

C'est-à-dire que tous les gens connectés au réseau Bitcoin

peuvent héberger une copie de la base de données qui contient toutes les transactions.

Une base de données qui est distribuée comme ça, déjà,

on peut penser qu'elle est plus difficile à détruire puisqu'il existe plein de copies partout.

Et puis on n'a plus besoin d'une autorité centrale comme une banque,

c'est-à-dire que n'importe qui peut inscrire une transaction dans la base de données.

Par exemple, imaginons que je veuille acheter sa lampe à Gilles.

Heu, celle-là? J'ai dû l'acheter pour environ 100€ donc ça doit faire 0, ...

Pop, pop, pop, tu fais des vidéos sur les traders et tu ne sais même pas négocier ?

David, on peut te vendre la lampe pour 10 Bitcoins.

Ok, 10 bitcoins.

Bon, pour payer la lampe, j'inscris dans la base de données partagée, le message:

"Moi, David, donne 10 Bitcoins à Gilles".

La transaction est enregistrée et les nœuds du réseau communiquent pour se passer l'info

et ensuite Gilles peut m'envoyer sa lampe.

Bon évidemment, il y a un problème avec ce système.

Aujourd'hui une banque, elle sert quand même à quelque chose

et notamment elle authentifie les auteurs des transactions.

Avec ce que je viens de vous décrire on a l'impression que n'importe qui

peut inscrire des transactions en mon nom.

- Quoi ? C'est trop cher 10 Bitcoins?

T'inquiète on va s'arranger.

Moi, David, donne 10 Bitcoins à Gilles... et voilà.

Et puis, autre chose à laquelle la banque sert aujourd'hui,

tout simplement à vérifier que j'ai l'argent pour payer.

Et puis accessoirement, elle empêche que n'importe qui viennent modifier

ou pirater la base de données des transactions.

Pour résoudre tous ces problèmes le Bitcoin se base sur deux technologies:

la signature électronique et la blockchain.

Commençons par le premier problème.

Quand on voit un message dans la base de données qui annonce un transfert de Bitcoin,

comment on peut être certain de son auteur?

Et bien on va utiliser le principe de la cryptographie asymétrique.

J'en avais un petit peu parlé dans mon épisode sur les codes secrets.

En cryptographie généralement on utilise une clé qui permet de chiffrer et déchiffrer des messages.

Dans les techniques de chiffrage des plus simples,

on ne peut déchiffrer un message que si on possède la clé qui a servi à le chiffrer.

Mais il existe des systèmes de chiffrage plus sophistiqués comme ce qu'on appelle l'algorithme RSA

qui sont asymétriques, c'est-à-dire la clé qui sert à chiffrer le message

n'est pas la même que celle qui sert à déchiffrer.

Par exemple, si on ne possède que la clé de chiffrement, on peut chiffrer des messages

mais pas les déchiffrer, il faut une autre clé pour ça.

Alors je ne suis pas sûr d'avoir bien compris :

Comment est-ce qu'on peut réussir à déchiffrer un message mais ne pas être capable de le chiffrer.

Il suffit de faire la même opération en sens inverse, non?

Non, parce qu'en fait que le chiffrage asymétrique ce n'est pas une opération lettre à lettre,

elle transforme le message dans son ensemble.

Elle est un peu lourde, compliquée mathématiquement

et impossible à faire dans l'autre sens si on n'a pas la clé de déchiffrage.

C'est un peu comme si tu avais un dictionnaire français-hongrois mais pas la partie hongrois-français.

Du coup tu peux facilement traduire un mot du français vers le hongrois

mais ce n'est pas facile de connaître le sens en français d'un mot hongrois.

Une des utilisations classique de la cryptographie asymétrique

c'est d'avoir une clé de chiffrement qui est publique, c'est-à-dire que vous la donnez à tout le monde

et n'importe qui peut vous envoyer des messages codés.

Mais la clé de déchiffrement, elle reste privée, vous la gardez uniquement pour vous.

Vous êtes le seul à pouvoir lire les messages

et ceux qui les écrivent ne peuvent pas se lire entre eux.

En fait ils ne peuvent même pas se relire.

Pourquoi est-ce qu'on n'utiliserait pas un chiffrage classique avec une seule clé

mais en donnant une clé différente à chaque personne

Le résultat serait le même, non ?

Du coup je ne vois pas vraiment l'intérêt de ton truc asymétrique compliqué.

L'intérêt c'est que par exemple, un journaliste ou une agence de renseignement

peut avoir une clé publique qui permet à n'importe qui de leur envoyer des messages codés

et il n'y a pas eu besoin d'avoir un échange en clair avant.

Donc ça permet de recevoir des infos tout en protégeant la source.

Enfin, c'est surtout très utilisé dans les communications sur internet.

Bon, ça c'était le principe de la cryptographie asymétrique pour recevoir des messages.

Maintenant le principe de la signature électronique en fait, c'est exactement l'inverse de ça.

Imaginez que j'ai une clé de chiffrement que je garde pour moi, qui soit privée

et que la clé de déchiffrement soit publique.

Si j'inscris un message comme : moi David donne 10 Bitcoins à Gilles

et que je chiffre avec ma clé privée, ça donne du charabia.

J'inscrit ce charabia sur la base de données.

Ensuite n'importe qui peut appliquer ma clé publique

et déchiffrer le charabia pour reconstituer le texte de la transaction.

Mais du coup, on est bien certain que c'est moi qui ai inscrit la transaction

puisque personne d'autre n'aurait pu la chiffrer de cette manière-là

et donc c'est ça qui fournit l'authentification.

Les transactions sont donc impossibles à falsifier sans posséder la clé privée

mais elle sont aussi impossibles à répudier.

C'est-à-dire qu'une fois vous avez payé, vous ne pouvez pas nier l'avoir fait.

Donc en pratique pour échanger des Bitcoin, il faut créer un compte et vous recevez un identifiant,

une clé privée que vous gardez pour vous, évidemment

et une clé publique qui sera connue de tous les nœuds du réseau.

Et la clé privée vous permet d'authentifier vos transactions.

Par contre, si vous la perdez cette clé privée, c'est mort.

D'ailleurs anecdote amusante à ce sujet,

en 2009, alors que le Bitcoin ne valait presque rien et qu'il était facile d'en récupérer,

James Howells, citoyen britannique, en a obtenu la modique somme de 7500.

Quelques mois plus tard, après s'être désintéressé de cette monnaie électronique alors inconnue,

James a tout simplement, lors d'un petit ménage de printemps,

jeté à la poubelle le disque contenant la fameuse clé privée qui donnait accès au Bitcoin.

Une erreur qui fait très très mal, puisque 7500 Bitcoins aujourd'hui ça vaut entre 2 et 3 millions d'euros.

Un détail très important sur la structure des transactions, quand on inscrit une transaction,

on inclut aussi une référence vers les transactions précédentes

qui nous ont fourni l'argent qu'on choisit de dépenser.

Je vais prendre un exemple. Au lieu d'écrire simplement : Moi David donne 10 Bitcoins à Gilles,

j'écris : Moi David donne 10 Bitcoins à Gilles,

en utilisant les 10 Bitcoins que j'ai reçus avant-hier de Nota Bene.

Oui, parce qu'avant-hier avec Nota Bene, on a fait une partie de bras de fer et c'est moi qui ai gagné.

Ah, c'est comme ça que tu dis gagné toi alors. Tu veux peut être que l'on remette ça, non ?

Non mais, on avait déjà remis ça. J'avais quand même gagné.

On va peut-être pas abuser Monsieur !

Bon bref, tu m'as filé 10 bitcoins

et moi j'inscris dans la base de données que ce sont ces mêmes 10 bitcoins

que je vais utiliser pour acheter sa lampe, à Gilles.

Quand on fait des références comme ça, aux transactions passées, ça a deux intérêts.

Le premier c'est que, pour valider une transaction,

on n'a pas besoin de connaître la position exacte du solde du compte de quelqu'un.

Il suffit juste de vérifier que les transactions auquelles il fait référence comme étant la source des bitcoins

n'ont pas déjà été utilisées dans une transaction passée.

Et le deuxième intérêt c'est que, ça empêche de faire du copier-coller de transaction.

Donc t'es en train de me dire que depuis tout à l'heure

que j'essaie de copier-coller la transaction des 10 Bitcoins pour en récupérer 20 et que ça marche pas,

en fait c'est normal?

C'est pas un bug de mon téléphone?

Et bien non, parce qu'on verrait que ça fait deux tentatives d'utilisation

de ces 10 Bitcoins que j'ai reçu de Nota Bene.

Finalement, le Bitcoin se comporte un peu plus comme du cash électronique,

c'est-à-dire de l'argent liquide électronique parce que, comme avec des pièces ou des billets,

il y a cette idée que la double dépense est impossible, on ne peut pas dépenser

deux fois les mêmes Bitcoins qu'on a reçus de quelqu'un.

Et si Nota Bene t'avait filé 20 Bitcoins alors que toi tu ne veux m'en donner que 10 pour la lampe?

Et bien, il existe un système de remboursement qui permet d'utiliser ces 20 Bitcoins

pour te donner 10 Bitcoins à toi

et puis pour me redonner à moi-même les 10 Bitcoins restants.

Donc à priori là, on a un bon système, il est ouvert, il est partagé,

et puis il y a une technique d'authentification qui empêche de faire n'importe quoi.

Il y a juste un petit problème. Il y a plein de copies de la base de données

et elles doivent communiquer entre elles et comment elles font pour se synchroniser.

Ça peut poser des soucis, notamment s'il y a des conflits quand quelqu'un essaye de faire une double dépense.

Imaginons que je proclame donner 10 Bitcoins à Gilles d'un côté du réseau

en utilisant les 10 Bitcoins reçus de Nota Bene.

Puis exactement au même moment, dans une autre copie de la base de données

à un autre endroit du réseau,

je déclare utiliser ces même 10 Bitcoins pour acheter autre chose à quelqu'un d'autre.

Comment les copies de la base de données se synchronisent?

Et laquelle des deux transactions va vraiment compter ?

L'idée c'est que, chaque nœud du réseau enregistre les nouvelles transactions dont il a connaissance

dans une liste de transactions "en attente".

Et puis évidemment, il partage l'information.

Et donc tous les nœuds du réseau possèdent une liste de transactions en attente qui peuvent être

très légèrement différentes les unes des autres

et chaque nœud fait, comme ça, croître sa liste de transactions en attente.

Puis périodiquement, environ toutes les 10 minutes,

il y a un des nœuds du réseau dont on prend les transactions en attente et on les déclare "validées"

et tout le monde se synchronise dessus.

Ce groupe de transactions on l'appelle "un bloc".

Et on remet ça toutes les 10 minutes.

Et du coup, la liste des transactions qui sont validées elle se présente sous la forme d'une suite de blocs,

un toutes les 10 minutes et c'est pour ça qu'on appelle ça la chaîne de blocs ou, blockchain.

Mais alors comment est-ce qu'on choisit le nœud qui détient les transactions validées ?

C'est toujours le même ou alors non, on en choisit un au hasard?

La règle c'est que, pour proposer sa propre liste de transactions en attente

comme étant le nouveau bloc sur lequel tout le monde doit s'aligner,

il faut d'abord lui trouver un nom, un identifiant

et on s'est mis des règles qui font que trouver un identifiant à un bloc,

c'est un problème mathématique extrêmement compliqué.

Donc chaque nœud du réseau travaille en permanence pour essayer de résoudre ce problème mathématique

et trouver un identifiant pour sa liste de transactions en attente

et le premier qui y arrive peut proposer son bloc et tout le monde se synchronise dessus.

Ah ça ça me dit quelque chose, c'est le coup du problème de math hyper difficile à résoudre.

Sauf que moi, j'aimerais bien comprendre pourquoi c'est difficile à résoudre.

Eh bien, on va voir ça!

On a vu que ce qui permettait à la chaîne de blocs de se construire de manière régulière,

c'est que pour proposer un nouveau bloc,

il fallait résoudre d'abord un problème mathématique compliqué,

ce problème sert à trouver un nom au bloc, un identifiant.

Pourtant, trouver un identifiant ça n'a pas l'air très compliqué comme problème.

Alors pour vous expliquer ça, il faut d'abord que je vous explique ce que c'est que le hachage.

Une fonction de hachage, c'est une fonction qui prend en entrée,

une chaîne de caractères de n'importe quelle longueur

et qui donne en sortie, une autre chaîne de caractères qui est de longueur fixe.

Par exemple ici, on a 16 caractères

et ce qu'on veut c'est que le moindre changement dans la chaîne d'entrée,

provoque un grand changement dans la chaîne de sortie.

Par exemple là, si je change un A en O

ou que j'ajoute un point d'exclamation à la fin de la phrase,

la chaîne de sortie est complètement modifiée.

Une des applications du hachage c'est de vérifier qu'un téléchargement s'est bien passé.

Si vous téléchargez un gros fichier,

il y a toujours un risque qu'une petite partie du fichier soit mal transmise

et que ça suffise à rendre l'ensemble du fichier inutilisable.

Une solution c'est que, celui qui met le fichier en téléchargement

le fait d'abord passer dans une fonction de hachage pour en sortir une chaîne de caractères

qui est en quelque sorte l'empreinte digitale du fichier.

Si le fichier que vous avez reçu diffère ne serait-ce que d'un bit du fichier d'origine,

le résultat de son hachage sera complètement différent

et vous pourrez vous rendre compte qu'il y a un souci.

C'est le principe de ce qu'on appelle la somme de contrôle, ou checksum.

Pour trouver un identifiant à chaque nouveau bloc de la blockchain,

on va aussi utiliser le principe du hachage.

Pour ça on fabrique un fichier qui contient toutes les transactions qu'on veut valider,

ainsi que l'identifiant du bloc précédent

et on fait passer le tout par une fonction de hachage.

On obtient ainsi une suite de caractères qu'on va utiliser comme identifiant.

Et ce qui fait que la chaîne est une chaîne c'est que l'identifiant d'un bloc

est utilisé pour calculer l'identifiant du bloc suivant.

L'intérêt de ce système, c'est de protéger la base de données contre la moindre modification.

Si vous voulez changer une transaction ou même juste rajouter un 0,

ça va complètement changer le hachage et donc ça va changer l'identifiant du bloc.

Mais comme l'identifiant du bloc est utilisé dans le hachage du bloc suivant,

il faut aussi changer l'identifiant du bloc suivant

et ainsi de suite dans toute la chaîne.

Donc impossible d'aller changer une transaction dans le passé

sans avoir à recalculer tous les identifiants de tous les blocs qui sont arrivés depuis.

et je vous rappelle, des blocs il y en a un toutes les 10 minutes.

Bon il n'y a pas à dire, à mon avis, ils ont pensé à tout, ça a l'air béton comme protection cette blockchain.

Et bien, je n'en suis pas si sûr, d'après ce qui vient d'être expliqué,

trouver un identifiant ne repose que sur le hachage

or une fonction de hachage ce n'est pas si lourd que ça.

Il y a même des tas de site internet qui peuvent le faire.

Donc un éventuel pirate pourrait tout à fait rajouter ses blocs à toute vitesse dans la blockchain.

Non, alors ce qui protège de ça, c'est le fait qu'on a ajouté

des conditions supplémentaires sur l'identifiant

qui fait que le trouver, c'est compliqué.

L'idée c'est que, quand on fabrique le fichier qu'on veut hacher,

on prend donc l'identifiant du bloc précédent, la liste des transactions,

mais on ajoute aussi à la fin, un nombre qu'on appelle un Nonce

et la présence de ce nonce va évidemment modifier le résultat du hachage.

En fait, on impose des conditions sur le résultat

qui font qu'il faut essayer plein de nonces différents avant d'en trouver un qui colle

et le seul moyen d'y arriver, c'est la manière bourrine.

On essaye plein de nonces à toute vitesse jusqu'à en trouver un qui colle,

comme si on essayait de trouver un digicode d'immeuble en tapant plein de codes au hasard

et les conditions sont faites pour qu'une solution soit trouvée

en moyenne toutes les 10 minutes dans le réseau.

Evidemment au fur et à mesure que le réseau grandit

et que la puissance de calcul des ordinateurs augmente,

on rend les conditions de plus en plus difficiles pour rester sur cette moyenne de 10 minutes.

Donc si on résume, chaque nœud du réseau a sa liste de transactions en attente et il travaille comme un bourrin

pour faire en sorte que cette liste de transactions en attente devienne le prochain bloc.

Donc chacun essaie de trouver un identifiant à sa liste de transactions,

le premier qui y arrive, il est l'élu

et tout le monde s'aligne sur lui et prend sa liste de transactions comme étant le nouveau bloc

et on recommence.

Ce qui est intéressant avec ce système c'est qu'on protège la blockchain de la fraude

en demandant de manière un peu artificielle aux nœuds du réseau

de résoudre un problème compliqué pour avoir le droit de contribuer,

c'est ce qu'on appelle la preuve de travail.

Bah oui, pour contribuer il faut bosser.

La conséquence de ça, c'est que la capacité à frauder devient liée à la puissance de calcul dont on dispose

et pas au nombre de nœuds du réseau qu'on possède,

parce que créer plein d'adresses IP pour avoir plein de nœuds du réseau c'est facile,

par contre aligner un paquet de processeurs pour aller plus vite que tous les autres,

c'est une autre affaire.

Bon là, on est presque au bout de la technologie de la blockchain, il reste juste un problème à résoudre.

Il existe une petite probabilité que deux nœuds du réseau

arrivent à proposer tous les deux leur bloc de manière quasiment simultanée

et puis il existe aussi un tout petit risque que quelqu'un arrive, sur un des noeuds du réseau,

à pirater un bloc ou deux, s'il est suffisamment puissant et avec un peu de chance.

Heu, je ne suis pas sûr de comprendre là.

Imagine que David accepte de nous payer 10 Bitcoins pour la lampe.

On attend une dizaine de minutes puis la transaction apparaît dans un bloc,

a priori ça veut dire que cette transaction a bien été validée.

Donc on envoie la lampe à David.

Sauf qu'à ce moment-là il existe quand même encore une chance

que la transaction soit piratée voire supprimée.

Quoi ? Comment ?

Eh oui, et en cas de piratage du dernier bloc ou bien si, pas de chance,

deux noeuds du réseau arrivent tous les deux à proposer leur bloc et bien il se passe un truc simple,

on se retrouve avec deux chaînes de blocs différentes.

Et là, la règle est simple,

tous les nœuds du réseau doivent conserver les deux chaînes

mais par contre on ne travaille que sur la plus longue des deux,

ce qui fait que, très rapidement, l'une des deux chaînes va prendre le pas sur l'autre.

Donc avant de m'envoyer ta lampe, le mieux c'est quand même d'attendre environ une 1 heure - 5/6 blocs

pour être sûr que la transaction qui va te payer

fait partie d'un bloc qui va bien être dans la chaîne qu'on va conserver.

On voit donc que dans le principe du fonctionnement de la blockchain, donc qui sécurise le Bitcoin,

on est protégé par le fait que chacun ne possède qu'une faible puissance de calcul comparée au total.

En fait, si quelqu'un voulait vraiment compromettre la blockchain,

il faudrait qu'il possède plus de 50% de la puissance de calcul de tout le réseau.

Mais du coup, on peut se demander pourquoi est-ce que tous les ordinateurs du réseau

accepteraient de mettre leur puissance de calcul au service de la protection du Bitcoin.

Et bien, il y a une réponse simple pour ça, c'est qu'on les paye, et on les paye en Bitcoin.

Il faut savoir que quand un bloc est validé,

c'est-à-dire qu'un nœud du réseau arrive à résoudre le problème mathématique compliqué,

il reçoit pour sa peine 25 Bitcoins.

Et au cours actuel du Bitcoin, ça fait pas loin de 10 000€.

Et ces Bitcoins, ils viennent de nulle part, ils sont créés artificiellement pour l'occasion,

c'est d'ailleurs le seul mécanisme de création de nouveaux Bitcoins.

Et c'est pour ça que les ordinateurs qui participent à la sécurisation du réseau,

on les appelle parfois des mineurs, en référence aux mineurs

qui allaient chercher de l'or pour augmenter la masse monétaire.

Alors 10 000 € pour résoudre un problème mathématique, ça à l'air vachement intéressant.

sauf que, maintenant, il faut mettre tellement de puissance de calcul pour y arriver le premier,

qu'il n'y a quasiment aucune chance d'y arriver tout seul, il faut se grouper.

et puis le mécanisme est tel, que la récompense en Bitcoin va décroître au cours du temps.

Donc au final, la masse monétaire des Bitcoins, on sait qu'elle va converger

vers 21 millions de Bitcoins. Pas plus.

On a ici tous les avantages du système Bitcoin.

On a un système qui est centralisé sans autorité de régulation

avec un mécanisme de création monétaire qui est connu d'avance et transparent

et des frais de transactions qui sont réduits.

C'est vrai qu'aujourd'hui, on entend surtout parler du Bitcoin pour des transactions illicites

ou bien pour des logiciels malveillants qui vous cryptent votre ordinateur

et vous demandent des rançons en échange.

enfin quand même, avant de vous lancer dans le grand banditisme avec le Bitcoin

gardez en tête que l'anonymat n'est que théorique.

C'est vrai que votre nom n'apparaît pas explicitement dans les transactions

et si vous êtes le seul à avoir votre clé privée,

en principe vous êtes le seul à savoir que c'est vous qui avez fait la transaction.

sauf qu'il a déjà été montré sur des exemples qu'on pouvait

assez facilement désanonymiser des données en se basant sur des motifs récurrents.

Et n'oubliez pas, tout ce qui est inscrit dans la blockchain

est quelque chose qui est éternel, impossible à modifier.

Donc pensez-y avant d'aller acheter de la drogue.

D'ailleurs au-delà du Bitcoin, on peut penser à tout un tas d'autres applications pour la blockchain,

notamment dans des situations où on souhaite afficher des informations publiquement

mais de manière infalsifiable.

Comme par exemple pour faire du vote en ligne ou bien du notariat.

Aujourd'hui il est évidemment difficile de prédire l'avenir du Bitcoin ou bien les applications de la blockchain

mais ce qui est sûr, c'est qu'à mon avis,

on risque d'en entendre encore beaucoup parler dans les prochaines années.

Merci d'avoir suivi cette vidéo. Merci à Gilles qui m'a aidé

et n'hésitez pas à aller voir sa vidéo qui donne pas mal de détails dont je n'ai pas parlé dans cette vidéo.

Merci beaucoup à Nota Bene qui m'a laissé gagner au bras de fer.

Si vous avez aimé cette vidéo, n'oubliez pas de la partager notamment sur les réseaux sociaux.

Vous pouvez suivre les actus de la chaîne sur Facebook, Tweeter. Vous pouvez me souvenir sur Tipeee.

Vous pouvez aller lire le billet qui accompagne cette vidéo sur mon blog Science Étonnante pour plus d'informations un peu plus techniques

et vous pouvez aussi aller jeter un œil à mon livre que j'ai sorti chez Flammarion.

Merci à bientôt!


(#37) Le Bitcoin et la Blockchain (avec Heu?Reka) - YouTube (#37) Bitcoin und die Blockchain (mit Heu?Reka) - YouTube (#37) Bitcoin and the Blockchain (with Heu?Reka) - YouTube (#37) Bitcoin en de Blockchain (met Heu?Reka) - YouTube (#37) Bitcoin e a cadeia de blocos (com Heu?Reka) - YouTube

Depuis quelque temps j'avais envie de faire une vidéo sur le Bitcoin

et puis, il y a quelques semaines, Gilles qui est créateur de la chaîne Heu?reka

en a faite une qui est vachement bien.

Et à la réflexion je me suis dit qu'il restait quand même quelques détails techniques à expliquer,

notamment sur le concept de Blockchain qui est la technologie qu'il y a derrière le Bitcoin.

Et du coup j'ai quand même décidé de faire une vidéo

et j'ai demandé à Gilles de venir m'aider un peu !

- Salut Gilles, Tu nous dis un mot sur ta chaîne ?

- Hello David et merci de m'avoir invité à participer à cette vidéo.

- De nous avoir invités !

- Ah oui pardon, de nous avoir invités. Donc Heu?reka c'est une chaîne de vulgarisation

qui s'intéresse principalement à la finance et à l'économie.

On y aborde des sujets divers du genre : Quel est le lien entre l'économie réelle et la finance ?

Quel est l'intérêt des différentes monnaies ? ou encore, Qu'est-ce que c'est que le Quantitative Easing ?

- Bah pourquoi tu choisis les sujets les plus chiants, on parle aussi du loup de Wall Street, de The big short,

on vous dit tout sur les traders et on vous explique d'où vient l'argent.

Alors avant de regarder la suite, allez vous abonner à Heu?reka.

On entend souvent que le Bitcoin serait une monnaie électronique,

mais en fait vous savez, la monnaie actuelle, elle est déjà largement électronique.

Quand vous payez des petites sommes, vous payez peut-être avec des pièces ou avec des billets

mais dès que vous faites une transaction avec une carte bleue ou un virement,

la banque débite votre compte et elle crédite celui du vendeur.

Il n'y a pas d'échange d'argent physique, tout se passe dans les comptes de la banque

donc une bonne partie de la monnaie qu'on utilise est déjà électronique.

Aujourd'hui c'est à peu près quel pourcentage, Gilles ?

Aujourd'hui la masse monétaire totale en zone Euro c'est 11 000 milliards d'euros

et pourtant il n'y a qu'un peu plus de 1 000 milliards d'euros en pièces et en billets

donc l'argent que nous utilisons aujourd'hui est à plus de 90% électronique.

Toute cette monnaie elle n'existe que dans les livres de comptes de la banque.

Evidemment aujourd'hui, ce n'est pas un vrai livre, c'est plutôt une base de données de toutes les transactions,

c'est-à-dire un gros fichier informatique.

Mais du coup, si quelqu'un pirate le fichier informatique ou bien l'efface ?

Le Bitcoin c'est aussi une monnaie électronique mais elle est décentralisée, c'est ça le mot important.

C'est-à-dire que la base de données de toutes les transactions,

elle n'est pas gérée par une instance centrale comme une banque,

mais elle est partagée dans un immense réseau peer to peer.

C'est-à-dire que tous les gens connectés au réseau Bitcoin

peuvent héberger une copie de la base de données qui contient toutes les transactions.

Une base de données qui est distribuée comme ça, déjà,

on peut penser qu'elle est plus difficile à détruire puisqu'il existe plein de copies partout.

Et puis on n'a plus besoin d'une autorité centrale comme une banque,

c'est-à-dire que n'importe qui peut inscrire une transaction dans la base de données.

Par exemple, imaginons que je veuille acheter sa lampe à Gilles.

Heu, celle-là? J'ai dû l'acheter pour environ 100€ donc ça doit faire 0, ...

Pop, pop, pop, tu fais des vidéos sur les traders et tu ne sais même pas négocier ?

David, on peut te vendre la lampe pour 10 Bitcoins.

Ok, 10 bitcoins.

Bon, pour payer la lampe, j'inscris dans la base de données partagée, le message:

"Moi, David, donne 10 Bitcoins à Gilles".

La transaction est enregistrée et les nœuds du réseau communiquent pour se passer l'info

et ensuite Gilles peut m'envoyer sa lampe.

Bon évidemment, il y a un problème avec ce système.

Aujourd'hui une banque, elle sert quand même à quelque chose

et notamment elle authentifie les auteurs des transactions.

Avec ce que je viens de vous décrire on a l'impression que n'importe qui

peut inscrire des transactions en mon nom.

- Quoi ? C'est trop cher 10 Bitcoins?

T'inquiète on va s'arranger.

Moi, David, donne 10 Bitcoins à Gilles... et voilà.

Et puis, autre chose à laquelle la banque sert aujourd'hui,

tout simplement à vérifier que j'ai l'argent pour payer.

Et puis accessoirement, elle empêche que n'importe qui viennent modifier

ou pirater la base de données des transactions.

Pour résoudre tous ces problèmes le Bitcoin se base sur deux technologies:

la signature électronique et la blockchain.

Commençons par le premier problème.

Quand on voit un message dans la base de données qui annonce un transfert de Bitcoin,

comment on peut être certain de son auteur?

Et bien on va utiliser le principe de la cryptographie asymétrique.

J'en avais un petit peu parlé dans mon épisode sur les codes secrets.

En cryptographie généralement on utilise une clé qui permet de chiffrer et déchiffrer des messages.

Dans les techniques de chiffrage des plus simples,

on ne peut déchiffrer un message que si on possède la clé qui a servi à le chiffrer.

Mais il existe des systèmes de chiffrage plus sophistiqués comme ce qu'on appelle l'algorithme RSA

qui sont asymétriques, c'est-à-dire la clé qui sert à chiffrer le message

n'est pas la même que celle qui sert à déchiffrer.

Par exemple, si on ne possède que la clé de chiffrement, on peut chiffrer des messages

mais pas les déchiffrer, il faut une autre clé pour ça.

Alors je ne suis pas sûr d'avoir bien compris :

Comment est-ce qu'on peut réussir à déchiffrer un message mais ne pas être capable de le chiffrer.

Il suffit de faire la même opération en sens inverse, non?

Non, parce qu'en fait que le chiffrage asymétrique ce n'est pas une opération lettre à lettre,

elle transforme le message dans son ensemble.

Elle est un peu lourde, compliquée mathématiquement

et impossible à faire dans l'autre sens si on n'a pas la clé de déchiffrage.

C'est un peu comme si tu avais un dictionnaire français-hongrois mais pas la partie hongrois-français.

Du coup tu peux facilement traduire un mot du français vers le hongrois

mais ce n'est pas facile de connaître le sens en français d'un mot hongrois.

Une des utilisations classique de la cryptographie asymétrique

c'est d'avoir une clé de chiffrement qui est publique, c'est-à-dire que vous la donnez à tout le monde

et n'importe qui peut vous envoyer des messages codés.

Mais la clé de déchiffrement, elle reste privée, vous la gardez uniquement pour vous.

Vous êtes le seul à pouvoir lire les messages

et ceux qui les écrivent ne peuvent pas se lire entre eux.

En fait ils ne peuvent même pas se relire.

Pourquoi est-ce qu'on n'utiliserait pas un chiffrage classique avec une seule clé

mais en donnant une clé différente à chaque personne

Le résultat serait le même, non ?

Du coup je ne vois pas vraiment l'intérêt de ton truc asymétrique compliqué.

L'intérêt c'est que par exemple, un journaliste ou une agence de renseignement

peut avoir une clé publique qui permet à n'importe qui de leur envoyer des messages codés

et il n'y a pas eu besoin d'avoir un échange en clair avant.

Donc ça permet de recevoir des infos tout en protégeant la source.

Enfin, c'est surtout très utilisé dans les communications sur internet.

Bon, ça c'était le principe de la cryptographie asymétrique pour recevoir des messages.

Maintenant le principe de la signature électronique en fait, c'est exactement l'inverse de ça.

Imaginez que j'ai une clé de chiffrement que je garde pour moi, qui soit privée

et que la clé de déchiffrement soit publique.

Si j'inscris un message comme : moi David donne 10 Bitcoins à Gilles

et que je chiffre avec ma clé privée, ça donne du charabia.

J'inscrit ce charabia sur la base de données.

Ensuite n'importe qui peut appliquer ma clé publique

et déchiffrer le charabia pour reconstituer le texte de la transaction.

Mais du coup, on est bien certain que c'est moi qui ai inscrit la transaction

puisque personne d'autre n'aurait pu la chiffrer de cette manière-là

et donc c'est ça qui fournit l'authentification.

Les transactions sont donc impossibles à falsifier sans posséder la clé privée

mais elle sont aussi impossibles à répudier.

C'est-à-dire qu'une fois vous avez payé, vous ne pouvez pas nier l'avoir fait.

Donc en pratique pour échanger des Bitcoin, il faut créer un compte et vous recevez un identifiant,

une clé privée que vous gardez pour vous, évidemment

et une clé publique qui sera connue de tous les nœuds du réseau.

Et la clé privée vous permet d'authentifier vos transactions.

Par contre, si vous la perdez cette clé privée, c'est mort.

D'ailleurs anecdote amusante à ce sujet,

en 2009, alors que le Bitcoin ne valait presque rien et qu'il était facile d'en récupérer,

James Howells, citoyen britannique, en a obtenu la modique somme de 7500.

Quelques mois plus tard, après s'être désintéressé de cette monnaie électronique alors inconnue,

James a tout simplement, lors d'un petit ménage de printemps,

jeté à la poubelle le disque contenant la fameuse clé privée qui donnait accès au Bitcoin.

Une erreur qui fait très très mal, puisque 7500 Bitcoins aujourd'hui ça vaut entre 2 et 3 millions d'euros.

Un détail très important sur la structure des transactions, quand on inscrit une transaction,

on inclut aussi une référence vers les transactions précédentes

qui nous ont fourni l'argent qu'on choisit de dépenser.

Je vais prendre un exemple. Au lieu d'écrire simplement : Moi David donne 10 Bitcoins à Gilles,

j'écris : Moi David donne 10 Bitcoins à Gilles,

en utilisant les 10 Bitcoins que j'ai reçus avant-hier de Nota Bene.

Oui, parce qu'avant-hier avec Nota Bene, on a fait une partie de bras de fer et c'est moi qui ai gagné.

Ah, c'est comme ça que tu dis gagné toi alors. Tu veux peut être que l'on remette ça, non ?

Non mais, on avait déjà remis ça. J'avais quand même gagné.

On va peut-être pas abuser Monsieur !

Bon bref, tu m'as filé 10 bitcoins

et moi j'inscris dans la base de données que ce sont ces mêmes 10 bitcoins

que je vais utiliser pour acheter sa lampe, à Gilles.

Quand on fait des références comme ça, aux transactions passées, ça a deux intérêts.

Le premier c'est que, pour valider une transaction,

on n'a pas besoin de connaître la position exacte du solde du compte de quelqu'un.

Il suffit juste de vérifier que les transactions auquelles il fait référence comme étant la source des bitcoins

n'ont pas déjà été utilisées dans une transaction passée.

Et le deuxième intérêt c'est que, ça empêche de faire du copier-coller de transaction.

Donc t'es en train de me dire que depuis tout à l'heure

que j'essaie de copier-coller la transaction des 10 Bitcoins pour en récupérer 20 et que ça marche pas,

en fait c'est normal?

C'est pas un bug de mon téléphone?

Et bien non, parce qu'on verrait que ça fait deux tentatives d'utilisation

de ces 10 Bitcoins que j'ai reçu de Nota Bene.

Finalement, le Bitcoin se comporte un peu plus comme du cash électronique,

c'est-à-dire de l'argent liquide électronique parce que, comme avec des pièces ou des billets,

il y a cette idée que la double dépense est impossible, on ne peut pas dépenser

deux fois les mêmes Bitcoins qu'on a reçus de quelqu'un.

Et si Nota Bene t'avait filé 20 Bitcoins alors que toi tu ne veux m'en donner que 10 pour la lampe?

Et bien, il existe un système de remboursement qui permet d'utiliser ces 20 Bitcoins

pour te donner 10 Bitcoins à toi

et puis pour me redonner à moi-même les 10 Bitcoins restants.

Donc à priori là, on a un bon système, il est ouvert, il est partagé,

et puis il y a une technique d'authentification qui empêche de faire n'importe quoi.

Il y a juste un petit problème. Il y a plein de copies de la base de données

et elles doivent communiquer entre elles et comment elles font pour se synchroniser.

Ça peut poser des soucis, notamment s'il y a des conflits quand quelqu'un essaye de faire une double dépense.

Imaginons que je proclame donner 10 Bitcoins à Gilles d'un côté du réseau

en utilisant les 10 Bitcoins reçus de Nota Bene.

Puis exactement au même moment, dans une autre copie de la base de données

à un autre endroit du réseau,

je déclare utiliser ces même 10 Bitcoins pour acheter autre chose à quelqu'un d'autre.

Comment les copies de la base de données se synchronisent?

Et laquelle des deux transactions va vraiment compter ?

L'idée c'est que, chaque nœud du réseau enregistre les nouvelles transactions dont il a connaissance

dans une liste de transactions "en attente".

Et puis évidemment, il partage l'information.

Et donc tous les nœuds du réseau possèdent une liste de transactions en attente qui peuvent être

très légèrement différentes les unes des autres

et chaque nœud fait, comme ça, croître sa liste de transactions en attente.

Puis périodiquement, environ toutes les 10 minutes,

il y a un des nœuds du réseau dont on prend les transactions en attente et on les déclare "validées"

et tout le monde se synchronise dessus.

Ce groupe de transactions on l'appelle "un bloc".

Et on remet ça toutes les 10 minutes.

Et du coup, la liste des transactions qui sont validées elle se présente sous la forme d'une suite de blocs,

un toutes les 10 minutes et c'est pour ça qu'on appelle ça la chaîne de blocs ou, blockchain.

Mais alors comment est-ce qu'on choisit le nœud qui détient les transactions validées ?

C'est toujours le même ou alors non, on en choisit un au hasard?

La règle c'est que, pour proposer sa propre liste de transactions en attente

comme étant le nouveau bloc sur lequel tout le monde doit s'aligner,

il faut d'abord lui trouver un nom, un identifiant

et on s'est mis des règles qui font que trouver un identifiant à un bloc,

c'est un problème mathématique extrêmement compliqué.

Donc chaque nœud du réseau travaille en permanence pour essayer de résoudre ce problème mathématique

et trouver un identifiant pour sa liste de transactions en attente

et le premier qui y arrive peut proposer son bloc et tout le monde se synchronise dessus. and the first one to do so can propose his block and everyone else synchronizes on it.

Ah ça ça me dit quelque chose, c'est le coup du problème de math hyper difficile à résoudre.

Sauf que moi, j'aimerais bien comprendre pourquoi c'est difficile à résoudre.

Eh bien, on va voir ça!

On a vu que ce qui permettait à la chaîne de blocs de se construire de manière régulière,

c'est que pour proposer un nouveau bloc,

il fallait résoudre d'abord un problème mathématique compliqué,

ce problème sert à trouver un nom au bloc, un identifiant.

Pourtant, trouver un identifiant ça n'a pas l'air très compliqué comme problème.

Alors pour vous expliquer ça, il faut d'abord que je vous explique ce que c'est que le hachage.

Une fonction de hachage, c'est une fonction qui prend en entrée,

une chaîne de caractères de n'importe quelle longueur

et qui donne en sortie, une autre chaîne de caractères qui est de longueur fixe.

Par exemple ici, on a 16 caractères

et ce qu'on veut c'est que le moindre changement dans la chaîne d'entrée,

provoque un grand changement dans la chaîne de sortie.

Par exemple là, si je change un A en O

ou que j'ajoute un point d'exclamation à la fin de la phrase,

la chaîne de sortie est complètement modifiée.

Une des applications du hachage c'est de vérifier qu'un téléchargement s'est bien passé.

Si vous téléchargez un gros fichier,

il y a toujours un risque qu'une petite partie du fichier soit mal transmise

et que ça suffise à rendre l'ensemble du fichier inutilisable.

Une solution c'est que, celui qui met le fichier en téléchargement

le fait d'abord passer dans une fonction de hachage pour en sortir une chaîne de caractères

qui est en quelque sorte l'empreinte digitale du fichier.

Si le fichier que vous avez reçu diffère ne serait-ce que d'un bit du fichier d'origine,

le résultat de son hachage sera complètement différent

et vous pourrez vous rendre compte qu'il y a un souci.

C'est le principe de ce qu'on appelle la somme de contrôle, ou checksum.

Pour trouver un identifiant à chaque nouveau bloc de la blockchain,

on va aussi utiliser le principe du hachage.

Pour ça on fabrique un fichier qui contient toutes les transactions qu'on veut valider,

ainsi que l'identifiant du bloc précédent

et on fait passer le tout par une fonction de hachage.

On obtient ainsi une suite de caractères qu'on va utiliser comme identifiant.

Et ce qui fait que la chaîne est une chaîne c'est que l'identifiant d'un bloc

est utilisé pour calculer l'identifiant du bloc suivant.

L'intérêt de ce système, c'est de protéger la base de données contre la moindre modification.

Si vous voulez changer une transaction ou même juste rajouter un 0,

ça va complètement changer le hachage et donc ça va changer l'identifiant du bloc.

Mais comme l'identifiant du bloc est utilisé dans le hachage du bloc suivant,

il faut aussi changer l'identifiant du bloc suivant

et ainsi de suite dans toute la chaîne.

Donc impossible d'aller changer une transaction dans le passé

sans avoir à recalculer tous les identifiants de tous les blocs qui sont arrivés depuis.

et je vous rappelle, des blocs il y en a un toutes les 10 minutes.

Bon il n'y a pas à dire, à mon avis, ils ont pensé à tout, ça a l'air béton comme protection cette blockchain.

Et bien, je n'en suis pas si sûr, d'après ce qui vient d'être expliqué,

trouver un identifiant ne repose que sur le hachage

or une fonction de hachage ce n'est pas si lourd que ça.

Il y a même des tas de site internet qui peuvent le faire.

Donc un éventuel pirate pourrait tout à fait rajouter ses blocs à toute vitesse dans la blockchain.

Non, alors ce qui protège de ça, c'est le fait qu'on a ajouté

des conditions supplémentaires sur l'identifiant

qui fait que le trouver, c'est compliqué.

L'idée c'est que, quand on fabrique le fichier qu'on veut hacher,

on prend donc l'identifiant du bloc précédent, la liste des transactions,

mais on ajoute aussi à la fin, un nombre qu'on appelle un Nonce

et la présence de ce nonce va évidemment modifier le résultat du hachage.

En fait, on impose des conditions sur le résultat

qui font qu'il faut essayer plein de nonces différents avant d'en trouver un qui colle which means you have to try out lots of different nonces before you find one that fits the bill.

et le seul moyen d'y arriver, c'est la manière bourrine. and the only way to do it is the hard way.

On essaye plein de nonces à toute vitesse jusqu'à en trouver un qui colle,

comme si on essayait de trouver un digicode d'immeuble en tapant plein de codes au hasard

et les conditions sont faites pour qu'une solution soit trouvée

en moyenne toutes les 10 minutes dans le réseau.

Evidemment au fur et à mesure que le réseau grandit

et que la puissance de calcul des ordinateurs augmente,

on rend les conditions de plus en plus difficiles pour rester sur cette moyenne de 10 minutes.

Donc si on résume, chaque nœud du réseau a sa liste de transactions en attente et il travaille comme un bourrin

pour faire en sorte que cette liste de transactions en attente devienne le prochain bloc.

Donc chacun essaie de trouver un identifiant à sa liste de transactions,

le premier qui y arrive, il est l'élu

et tout le monde s'aligne sur lui et prend sa liste de transactions comme étant le nouveau bloc

et on recommence.

Ce qui est intéressant avec ce système c'est qu'on protège la blockchain de la fraude

en demandant de manière un peu artificielle aux nœuds du réseau

de résoudre un problème compliqué pour avoir le droit de contribuer,

c'est ce qu'on appelle la preuve de travail.

Bah oui, pour contribuer il faut bosser.

La conséquence de ça, c'est que la capacité à frauder devient liée à la puissance de calcul dont on dispose

et pas au nombre de nœuds du réseau qu'on possède,

parce que créer plein d'adresses IP pour avoir plein de nœuds du réseau c'est facile,

par contre aligner un paquet de processeurs pour aller plus vite que tous les autres,

c'est une autre affaire.

Bon là, on est presque au bout de la technologie de la blockchain, il reste juste un problème à résoudre.

Il existe une petite probabilité que deux nœuds du réseau

arrivent à proposer tous les deux leur bloc de manière quasiment simultanée

et puis il existe aussi un tout petit risque que quelqu'un arrive, sur un des noeuds du réseau,

à pirater un bloc ou deux, s'il est suffisamment puissant et avec un peu de chance.

Heu, je ne suis pas sûr de comprendre là. Uh, I'm not sure I understand here.

Imagine que David accepte de nous payer 10 Bitcoins pour la lampe.

On attend une dizaine de minutes puis la transaction apparaît dans un bloc,

a priori ça veut dire que cette transaction a bien été validée.

Donc on envoie la lampe à David.

Sauf qu'à ce moment-là il existe quand même encore une chance

que la transaction soit piratée voire supprimée.

Quoi ? Comment ?

Eh oui, et en cas de piratage du dernier bloc ou bien si, pas de chance,

deux noeuds du réseau arrivent tous les deux à proposer leur bloc et bien il se passe un truc simple,

on se retrouve avec deux chaînes de blocs différentes.

Et là, la règle est simple,

tous les nœuds du réseau doivent conserver les deux chaînes

mais par contre on ne travaille que sur la plus longue des deux,

ce qui fait que, très rapidement, l'une des deux chaînes va prendre le pas sur l'autre.

Donc avant de m'envoyer ta lampe, le mieux c'est quand même d'attendre environ une 1 heure - 5/6 blocs

pour être sûr que la transaction qui va te payer

fait partie d'un bloc qui va bien être dans la chaîne qu'on va conserver.

On voit donc que dans le principe du fonctionnement de la blockchain, donc qui sécurise le Bitcoin,

on est protégé par le fait que chacun ne possède qu'une faible puissance de calcul comparée au total.

En fait, si quelqu'un voulait vraiment compromettre la blockchain,

il faudrait qu'il possède plus de 50% de la puissance de calcul de tout le réseau.

Mais du coup, on peut se demander pourquoi est-ce que tous les ordinateurs du réseau

accepteraient de mettre leur puissance de calcul au service de la protection du Bitcoin.

Et bien, il y a une réponse simple pour ça, c'est qu'on les paye, et on les paye en Bitcoin.

Il faut savoir que quand un bloc est validé,

c'est-à-dire qu'un nœud du réseau arrive à résoudre le problème mathématique compliqué,

il reçoit pour sa peine 25 Bitcoins.

Et au cours actuel du Bitcoin, ça fait pas loin de 10 000€.

Et ces Bitcoins, ils viennent de nulle part, ils sont créés artificiellement pour l'occasion,

c'est d'ailleurs le seul mécanisme de création de nouveaux Bitcoins.

Et c'est pour ça que les ordinateurs qui participent à la sécurisation du réseau,

on les appelle parfois des mineurs, en référence aux mineurs

qui allaient chercher de l'or pour augmenter la masse monétaire.

Alors 10 000 € pour résoudre un problème mathématique, ça à l'air vachement intéressant.

sauf que, maintenant, il faut mettre tellement de puissance de calcul pour y arriver le premier,

qu'il n'y a quasiment aucune chance d'y arriver tout seul, il faut se grouper.

et puis le mécanisme est tel, que la récompense en Bitcoin va décroître au cours du temps.

Donc au final, la masse monétaire des Bitcoins, on sait qu'elle va converger

vers 21 millions de Bitcoins. Pas plus.

On a ici tous les avantages du système Bitcoin.

On a un système qui est centralisé sans autorité de régulation

avec un mécanisme de création monétaire qui est connu d'avance et transparent

et des frais de transactions qui sont réduits.

C'est vrai qu'aujourd'hui, on entend surtout parler du Bitcoin pour des transactions illicites

ou bien pour des logiciels malveillants qui vous cryptent votre ordinateur

et vous demandent des rançons en échange.

enfin quand même, avant de vous lancer dans le grand banditisme avec le Bitcoin

gardez en tête que l'anonymat n'est que théorique.

C'est vrai que votre nom n'apparaît pas explicitement dans les transactions

et si vous êtes le seul à avoir votre clé privée,

en principe vous êtes le seul à savoir que c'est vous qui avez fait la transaction.

sauf qu'il a déjà été montré sur des exemples qu'on pouvait

assez facilement désanonymiser des données en se basant sur des motifs récurrents.

Et n'oubliez pas, tout ce qui est inscrit dans la blockchain

est quelque chose qui est éternel, impossible à modifier.

Donc pensez-y avant d'aller acheter de la drogue.

D'ailleurs au-delà du Bitcoin, on peut penser à tout un tas d'autres applications pour la blockchain,

notamment dans des situations où on souhaite afficher des informations publiquement

mais de manière infalsifiable.

Comme par exemple pour faire du vote en ligne ou bien du notariat.

Aujourd'hui il est évidemment difficile de prédire l'avenir du Bitcoin ou bien les applications de la blockchain

mais ce qui est sûr, c'est qu'à mon avis,

on risque d'en entendre encore beaucoup parler dans les prochaines années.

Merci d'avoir suivi cette vidéo. Merci à Gilles qui m'a aidé

et n'hésitez pas à aller voir sa vidéo qui donne pas mal de détails dont je n'ai pas parlé dans cette vidéo.

Merci beaucoup à Nota Bene qui m'a laissé gagner au bras de fer.

Si vous avez aimé cette vidéo, n'oubliez pas de la partager notamment sur les réseaux sociaux.

Vous pouvez suivre les actus de la chaîne sur Facebook, Tweeter. Vous pouvez me souvenir sur Tipeee.

Vous pouvez aller lire le billet qui accompagne cette vidéo sur mon blog Science Étonnante pour plus d'informations un peu plus techniques

et vous pouvez aussi aller jeter un œil à mon livre que j'ai sorti chez Flammarion.

Merci à bientôt!