The Blockchain:
Find Trust In
Your Peers
François Zaninotto
@francoisz
marmelab
BlendWebMix 2016
Bonjour à tous. Je suis t...
Une marque de jambon, tiens. Elle peut regrouper plein de producteurs différents,
mais comme vous avez confiance dans la mar...
Un intermédiaire de confiance concentre aussi les risques. Et s’il se fait pirater,
c’est tout de suite très grave. Souvene...
Notez que si, au lieu de chercher la solution du côté des développeurs, on s’était
intéressé à une autre espèce de primate...
Par la publication de la thèse d’un certain Satoshi Nakamoto, qui partageait avec
le monde entier son invention, le Bitcoi...
Peer-to-peer
Network
Alors, rentrons dans le vif du sujet. Les réseaux Pair à Pair, vous connaissez : des
réseaux d’échang...
Un registre comptable. C’est vous dire à quel point Satoshi Nakamoto est un
grand déconneur. Donc tout le monde partage le...
-----BEGIN RSA PRIVATE KEY-----
MGICAQACEQCpODRrPQ+wY9uWbxcnALCHAgM
BAAECEDrBJBoz+lWQ1YNLY60Jn3kC
CQDgh64DDCtqJQIJAMDv8Nj3...
Alice Bob
i
Je suis Alice
YBHKKLGGDFF
GJUIEHIEVUI
YBHKKLGGDF
FGJUIEHIEVUI
Je suis Alice
A l’inverse, Alice peux utiliser s...
Date From To Amount
22/08/16 Alice Bob 10 $
Signed by Alice:
7d3cd42819cc4ad30ca78f92601dc265ed624665aea1bae6f1bf
c76a8785...
Date From To Amount
Alice’s Balance : 10$
22/08/16 Alice Bob 10 $
22/08/16 Alice Charlie 10 $
Regardez, dans cet exemple, ...
Proof-of-work
Consensus
Ce qui nous amène à la preuve de travail. Je vous rappelle le besoin : mettre
d’accord tous les no...
Alors, comment on crée un bloc avec ces transactions en attente ? Eh bien les
noeuds du réseau essaient tous de créer un n...
Hash
00000000013e10b8dc7fb51fcad87e8c
Previous Block Id
000000000c264d660980cbc7ad787e0c
Transactions
06f416de4154b07f15ec...
Block Id
00000006e13e10b8dc7fb51fcad87e8c
Previous Block Id
000000000c264d660980cbc7ad787e0c
Transactions
06f416de4154b07f...
Parce que même si le réseau contient un mouton noir, un pirate ou un espion de la
NSA qui souhaite voler de l’argent, il n...
Part 2/4
Applications
Bien, vous avez compris comment ça marche maintenant ? C’est pas si
compliqué. La question qui vient...
Avec un smart contract, on peut par exemple certifier des documents. Parce que
de nos jours, un coup de Photoshop suffit à fa...
Si on pousse l’idée un peu plus loin, on peut même imaginer un service de
covoiturage sans autorité centrale - en clair, u...
Enfin, si vous cherchez un espace de stockage, plutôt que de mettre vos photos
de famille sur une clé USB que vous perdrez ...
Part 3/4
In Practice
Vous l’avez vu, la blockchain permet en théorie de faire des choses merveilleuses.
Mais et nous, est-...
Le principe est le suivant : lorsqu’un contributeur ouvre une pull request sur l’un de
nos repositories open-source sur Gi...
L’architecture choisie est la suivante : on a un bot qui reçoit les hooks de merge
GitHub et qui commente dessus. Ensuite,...
Rassurez-vous, vous n’aurez pas besoin de savoir faire un noeud pour déployer
un contrat dans un noeud. J’en vois au fond ...
Immutable
Code
Autre surprise: le code qu’on déploie sur une blockchain est immutable. Il est là
pour toujours. S’il conti...
Eh oui, parce que les noeuds du réseau n’exécutent pas une transaction à moins
qu’on l’accompagne d’un peu d’Ether pour dé...
Ce que vous voyez, c’est l’adresse de notre contrat, ainsi que toutes les
transactions qui y sont liées. Tout est public s...
Immature
Technology
D’abord, la technologie n’est pas prête. On en a fait les frais. Les exemples de
code qu’on trouve sur...
No Outside
Contact
D’autre part, les smart contracts sont en fait assez stupides. Vous l’avez vu dans
notre schéma d’archi...
It’s
complicated
Le résultat, c’est qu’à moins d’être un génie, vos dApps vont contenir des bugs.
Plein de bugs. On estime...
Not Secure
C’est bien embêtant, car le manque de sécurité est ce qui nous motive à faire
appel à des intermédiaires de con...
Waste
Je vous ai dit que les noeuds des mineurs se battent pour créer un bloc toutes les
10 minutes. En pratique, ces noeu...
Very
Expensive
Et qui paye pour toute cette énergie gâchée ? Les utilisateurs de la blockchain,
pardi. Chaque transaction ...
No Business
Model
Et puis quand on y réfléchit bien, il y a un vrai paradoxe : si la blockchain supprime
les intermédiaires...
Conclusion
Bien. C’est l’heure de conclure. Vous l’avez compris, se passer d’intermédiaires de
confiance en se basant sur u...
Eh bien croyez-le ou non, mais ça existe. BitNation est un gouvernement
décentralisé sur la blockchain. Il fournit des reg...
Prochain SlideShare
Chargement dans…5
×

La blockchain, quand l'individu sert au collectif... malgré lui

815 vues

Publié le

La blockchain, tout le monde en parle mais qu'est-ce que c'est, comment ça marche, et à quoi ça sert ? Et si la blockchain était le déclencheur d'un profond changement de société ?
Sans langue de bois, avec des exemples concrets et plein de dessins, cette conférence vous aidera à vous décider si vous avez intérêt à parier sur cette technologie dans les années à venir.

Publié dans : Technologie
0 commentaire
0 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

Aucun téléchargement
Vues
Nombre de vues
815
Sur SlideShare
0
Issues des intégrations
0
Intégrations
605
Actions
Partages
0
Téléchargements
4
Commentaires
0
J’aime
0
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

La blockchain, quand l'individu sert au collectif... malgré lui

  1. 1. The Blockchain: Find Trust In Your Peers François Zaninotto @francoisz marmelab BlendWebMix 2016 Bonjour à tous. Je suis très heureux d’être parmi vous aujourd’hui. Je m’appelle François Zaninotto et je dirige un atelier d’innovation digitale qui s’appelle marmelab. Et je suis ici pour vous parler de la blockchain. Qu’est-ce que c’est, à quoi ça sert, est-ce que c’est important ? Salim Ismail «The Blockchain is the most disruptive technology I have ever seen.» Julian Assange «The most interesting intellectual development
 on the Internet in the last five years.» Al Gore «I think the fact that within the Bitcoin universe
 an algorithm replaces the functions of [the government] … is actually pretty cool.» Donald Trump «Mexico will pay for it» A cette dernière question, certains visionnaires répondent que la blockchain est aussi révolutionnaire qu’Internet. Mais oui, rien que ça. Si c’est le cas, vu comme Internet a transformé notre vie quotidienne, en à peine 10 dix ans, alors la blockchain mérite bien une petite explication. Trust Pour comprendre la portée de la blockchain, il faut remonter à un de nos besoins fondamentaux : le besoin de confiance. Quand vous étiez petit, on vous disait de ne pas faire confiance aux inconnus. Mais en grandissant, vous avez bien du apprendre à faire confiance, par exemple pour acheter à manger à des gens que vous ne connaissez pas, ou pour choisir un employeur. La confiance, elle se bâtit d’abord sur la proximité, puis rapidement, sur des intermédiaires. Un intermédiaire de confiance, ça peut par exemple être une marque,
  2. 2. Une marque de jambon, tiens. Elle peut regrouper plein de producteurs différents, mais comme vous avez confiance dans la marque, vous mangez les yeux fermés. On fait beaucoup confiance grâce à ces intermédiaires que sont les marques, mais aussi les notaires et les banquiers. Tous ces intermédiaires dépensent énormément pour se construire une réputation, qui ensuite leur permet de gagner votre confiance. Cette question de la confiance, elle est encore plus sensible sur Internet, vous savez, le royaume du spam, du piratage et du rançonnage. Internet c’est encore un Far West, où on ne confie pas son adresse email au premier site venu. Comme moi, vous cherchez probablement le logo Visa quand vous faites un paiement CB. Trouver des intermédiaires de confiance est donc indispensable sur Internet. Le problème, c’est qu’une fois qu’il a votre confiance, un intermédiaire peut en abuser. Quand vous avalez ce bon produit bien rose, vous ne vous doutez pas que sa couleur vient du nitrite de sodium, qui est un cancérigène probable. Et vous avalez en fait surtout de l’eau, du sel et un peu de viande de porc industrielle, gavé d’OGM, d’hormones et d’antibiotiques, et élevé dans des conditions déplorables.
  3. 3. Un intermédiaire de confiance concentre aussi les risques. Et s’il se fait pirater, c’est tout de suite très grave. Souvenez-vous par exemple du PlayStation Network. C’est un intermédiaire créé par Sony pour permettre à des joueurs d’acheter des jeux à des éditeurs pour sa console Playstation. Eh bien cet intermédiaire a été hacké en avril 2011, et plus de 2 millions de numéros de CB ont été volés puis vendus au marché noir. Ce n’est qu’une histoire parmi des centaines. En fait, plus l’intermédiaire est gros, plus il est rentable de le pirater, et donc plus il subit d’attaques. Remove Trust Intermediaries Les intermédiaires de confiance on les appelle aussi les autorités centrales. Elles dictent leur loi, leurs prix, elles choisissent leurs clients, elles abusent parfois de leur autorité, et elles concentrent les risques. Vous voyez où je veux en venir : si on se passait d’intermédiaires, on pourrait probablement échanger des biens et des services de façon plus libre, à moindre coût. Mais dans ce cas, qui va sécuriser les transactions ? Qui va jouer le rôle que jouait l’intermédiaire de confiance ? Et si… Code Et si on programmait les conditions de l’échange et qu’on exécutait ce programme sur une plateforme collaborative et publique ? Et si cette plateforme d’échange sécurisée était entièrement automatisée et décentralisée ? De fait on n’aurait plus besoin d’intermédiaire. C’est le pari de la blockchain, et c’est ce que je vais tenter de vous expliquer pendant les prochaines 35 minutes.
  4. 4. Notez que si, au lieu de chercher la solution du côté des développeurs, on s’était intéressé à une autre espèce de primates, que sont les bonobos, on serait parti dans une direction sans doute plus intéressante. Vous savez que les bonobos résolvent tous leurs problèmes de confiance par des relations sexuelles ? Tu m’as volé ma banane ? Allez, montre-moi tes fesses et on n’en parle plus. Avouez que cette conférence aurait pris une tournure plus singulière si on avait suivi leur exemple. Mais non. C’est bien par le code et pas par le cul qu’on va essayer de résoudre nos problèmes de conscience / de confiance. Part 1/4 In Theory Alors comment faire, quels mécanismes utiliser ? La solution ne vient pas de la physique fondamentale, elle ne vient pas de la recherche aéronautique. Non non. Une fois n’est pas coutume, elle vient d’un autre champ d’innovation qui est : La Finance. Eh oui. Tout a débuté en 2008,
  5. 5. Par la publication de la thèse d’un certain Satoshi Nakamoto, qui partageait avec le monde entier son invention, le Bitcoin. Il décrivait un système monétaire qui s’affranchit de la nécessité des intermédiaires de confiance de la finance (que sont les banques). Ce qui est intéressant dans cette publication, ce n’est pas tant le bitcoin que la technologie qu’il utilise, la blockchain. Peer-to-Peer
 Network Asymmetric
 Cryptography Proof-of-work Consensus + + = Blockchain La blockchain, c’est le nom que Satoshi Nakamoto a donné à la combinaison de trois innovations majeures : les réseaux peer-to-peer, la cryptographie asymétrique, et un consensus par la preuve de travail. Je vais vous expliquer ça en détail. Au passage, ces trois innovations existaient bien avant la blockchain. L’invention de Satoshi Nakamoto a été de les combiner. D’ailleurs, Satoshi Nakamoto, c’est qui ? Eh bien, personne ne le connait - son identité est un mystère. Si ça se trouve, il n’est pas japonais du tout. Mais il est considéré, au même titre qu’Einstein, Max Planck ou Emmet Brown, comme un des grands savants de ces 100 dernières années.
  6. 6. Peer-to-peer Network Alors, rentrons dans le vif du sujet. Les réseaux Pair à Pair, vous connaissez : des réseaux d’échange sans serveur central. Vous en utilisez tous les jours, tenez par exemple : qui a utilisé Bittorrent au cours de la dernière semaine ? [Kenny, tu veux prendre une photo pour M6?] Attendez, gardez les mains levées, je prends une photo, j’ai encore quelques amis dans l’audiovisuel. Dans un réseau pair à pair, un noeud - c’est-à-dire un ordinateur du réseau - met à la disposition des autres un fichier, par exemple le rip du dernier X-Men : Apocalypse. Une grosse bouse, soit dit en passant. De proche en proche, tous les noeuds copient ce fichier jusqu’à ce que tout le réseau en possède une copie fidèle. Ca me fait bien évidemment penser à la multiplication miraculeuse des pains par Jésus Christ. Sauf que là, c’est en quelque sorte une multiplication des bouses. L’idée géniale de la blockchain, c’est d’utiliser la technologie Peer to Peer non pas pour partager des films, ou de la musique, ou des jeux piratés, mais pour partager… vous allez voir, c’est vraiment génial…
  7. 7. Un registre comptable. C’est vous dire à quel point Satoshi Nakamoto est un grand déconneur. Donc tout le monde partage le même registre. Et chaque fois qu’un noeud ajoute une ligne dans ce registre, cette modification est automatiquement répliquée, de proche en proche, sur toutes les copies. Date From To Amount 22/08/16 Alice Bob 10 $ 23/08/16 Bob Charlie 250 $ 27/08/16 Alice Charlie 10 $ 08/09/16 Charlie Alice 1 003 $ Pour mémoire, un registre comptable, ça ressemble à ça : une liste ordonnée de transactions entre deux identifiants de comptes. Au passage, je vous présente Alice, Bob et Charlie, qui sont souvent utilisés pour incarner les parties d’un échange électronique. Bon, je vous ai dit que n’importe quel noeud peut ajouter une ligne dans ce registre. Mais alors, comment éviter que Bob émette une transition au nom d’Alice, ce qui serait une fraude ? Autrement dit, comment faire pour que seule Alice puisse ajouter une ligne où elle est notée comme expéditeur ? Asymmetric Cryptography C’est là qu’intervient la cryptographie asymétrique. Vous savez, ce truc compliqué que vous n’avez jamais compris, qui repose sur des nombres premiers, et qui est à la base de SSH et de HTTPS. En fait, c’est assez simple. On prend deux grands nombres premiers (de 100 chiffres chacun au moins). On les combine grâce à une formule mathématique, et on obtient deux nouveaux nombres. L’un qu’on garde pour soi, qu’on appelle clé privée, et l’autre qu’on diffuse - c’est la clé publique.
  8. 8. -----BEGIN RSA PRIVATE KEY----- MGICAQACEQCpODRrPQ+wY9uWbxcnALCHAgM BAAECEDrBJBoz+lWQ1YNLY60Jn3kC CQDgh64DDCtqJQIJAMDv8Nj39DI7AghzgRj hdHc5CQIJAIXkvgdEpEJLAghotXXN YcdGxw== -----END RSA PRIVATE KEY—— -----BEGIN PUBLIC KEY----- MCwwDQYJKoZIhvcNAQEBBQADGwAwGAIRAKk 4NGs9D7Bj25ZvFycAsIcCAwEAAQ== -----END PUBLIC KEY----- Voilà à quoi ressemble une paire clé privée / clé publique. C’est illisible, mais ce n’est pas grave : on ne vous demande jamais de la lire, c’est votre ordinateur qui la conserve. Et c’est un gros progrès par rapport aux mots de passe dont on doit se souvenir et qu’on oublie toujours. Mon petit cousin Kevin par exemple, il oublie tout le temps son mot de passe Facebook. Eh bien un jour, il en a eu assez de répondre à des questions de sécurité toutes les semaines, alors il a pris une mesure radicale: Il s’est tatoué son mot de passe sur le bras. S’il avait pensé à la cryptographie asymétrique, il aurait évité une attaque à son père. Alice Bob i Alice, je t'aime SRJOGVZGFSZ THKLGHJYUKR Alice, je t'aime SRJOGVZGFSZ THKLGHJYUKR Alors comment on utilise ces deux clés ? L’usage le plus courant, c’est de crypter des messages. Si Alice a créé une paire de clés, elle peut diffuser la clé publique (c’est la verte) à tout le monde. Bob peut alors utiliser cette clé pour chiffrer un message et l’envoyer à Alice. Il n’y a que la clé privée d’Alice qui peut déchiffrer ce message. Donc le message est secret pour tout le monde sauf son destinataire. C’est ce qui est utilisé pour la communication sécurisée sur Internet - le fameux protocole TLS.
  9. 9. Alice Bob i Je suis Alice YBHKKLGGDFF GJUIEHIEVUI YBHKKLGGDF FGJUIEHIEVUI Je suis Alice A l’inverse, Alice peux utiliser sa clé privée pour chiffrer un message, et diffuser sa clé publique pour que tout le monde puisse la déchiffrer. Alors vous allez me dire : mettre un message dans un coffre-fort en donnant la clé à tout le monde, ça ne serait pas un tout petit peu crétin ? Eh bien non. Ce qui est intéressant ici, ce n’est pas le cryptage, c’est que comme Alice est la seule à disposer de la clé privée, il n’y a aucun doute sur l’identité de l’expéditeur. C’est comme si Alice avait signé son message de manière infalsifiable. Date From To Amount 22/08/16 Alice Bob 10 $ Signed by Alice: 7d3cd42819cc4ad30ca78f92601dc265ed624665aea1bae6f1bf c76a8785310702abe99df99e5ecf4fe991c20253f8a8490337f7ed 838af4c0d5e3c67cb3525e C’est cette signature électronique qui est utilisée dans la blockchain. L’expéditeur signe chacune de ses transactions avec sa clé privée. Il est donc le seul à pouvoir transférer de l’argent depuis son propre compte. En plus d’authentifier l’auteur d’une transaction, la signature empêche la répudiation d’une transaction. Alice ne peut pas prétendre qu’un autre utilisateur a déclenché la transaction à sa place, donc elle ne peut pas l’annuler. Tom Signed: My Daddy One Handred Milllion 1o0,O0O,oo0 My birthday C’est un énorme gain de sécurité par rapport à la signature manuscrite, qui ne protège pas assez des fraudes. Aujourd’hui, contrefaire une signature, c’est à la portée d’un gamin de six ans. Enfin, disons plutôt sept.
  10. 10. Date From To Amount 22/08/16 Alice Bob 10 $ Signed by Alice: 7d3cd42819cc4ad30ca78f92601dc265ed624665aea1bae6f1bf c76a8785310702abe99df99e5ecf4fe991c20253f8a8490337f7ed 838af4c0d5e3c67cb3525e 27/08/16 Alice Charlie 10 $ Signed by Alice: d30ca78f92601dc265ed624665aea1bae6f1bfc76a8785310702a be99df99e5ecf4fe991c20253f8a8490337f7ed838af4c0d5e3c67 cb3525e Bien, maintenant les transactions sont authentifiées, mais on n’est pas encore sûrs qu’elles soient légitimes. Si Alice ajoute une transaction au registre, qui dit qu’elle dispose de l’argent qu’elle transmet ? Qu’est-ce qui l’empêche d’envoyer de l’argent imaginaire ? Date From To Amount Alice’s Balance : 20$ 22/08/16 Alice Bob 10 $ 27/08/16 Alice Charlie 10 $ Alice’s Balance : 0$ Si vous avez fait un tout petit peu de compta, vous savez comment ça marche : en rejouant les transactions dans l’ordre, on peut calculer le solde d’un compte. Si Alice avait 20$ au début, après deux transactions de 10$, elle n’a plus rien. Si elle envoie une nouvelle transaction, elle sera refusée. En pratique, chaque noeud du réseau doit faire ce calcul pour être en mesure de valider une transaction. Date From To Amount Alice’s Balance : 20$ 22/08/16 Alice Bob 10 $ 27/08/16 Alice Charlie 10 $ Alice’s Balance : 0$ Je vous ai dit : il faut rejouer les transactions dans l’ordre. Eh oui, mais dans quel ordre ? On ne peut pas faire confiance à la date indiquée par l’expéditeur, parce que rien ne l’empêcherait d’envoyer une transaction antidatée ou post-datée. Donc cette date, elle ne sert à rien. Et on ne peut pas non plus se fier à la date à laquelle une transaction a été reçue dans un noeud, parce que cette date varie significativement dans un réseau peer-to-peer. Deux transactions envoyées au même moment peuvent arriver dans un ordre différent dans deux noeuds du réseau.
  11. 11. Date From To Amount Alice’s Balance : 10$ 22/08/16 Alice Bob 10 $ 22/08/16 Alice Charlie 10 $ Regardez, dans cet exemple, Alice n’a que 10$ en banque. Elle a dépensé tout le reste pour s’acheter des bonbecs. Elle va pourtant réussir à dépenser 20$. Comment ? Il lui suffit d’envoyer deux fois ces mêmes 10$ à deux personnes différentes, Bob et Charlie, au même moment. Alice Bob Charlie 10$ 10$ On appelle cette arnaque la « double dépense ». En fonction de la propagation dans le réseau peer-to-peer, chaque noeud accepte une transaction (la première qu’il a reçue) et refuse l’autre. Il est donc tout-à-fait possible que Bob et Charlie soient tous les deux convaincus d’avoir reçu une transaction légitime.
 
 Il va donc falloir trouver une astuce pour mettre tout le monde d’accord sur l’ordre des transactions. Et pour mettre tout le monde d’accord, il existe une technique imparable : C’est de montrer une photo de chaton. Là, normalement, tout le monde dit: « qu’il est mignon » en oubliant ses désaccords. Sauf que, désolé de vous décevoir, mais les noeuds d’un réseau Peer-to-peer n’aiment pas les chats. On va donc devoir trouver un autre moyen.
  12. 12. Proof-of-work Consensus Ce qui nous amène à la preuve de travail. Je vous rappelle le besoin : mettre d’accord tous les noeuds d’un réseau sur un ordonnancement de transactions. Mettre d’accord, ou trouver un consensus, c’est un problème courant dans les systèmes distribués. Il y a plusieurs algorithmes pour y parvenir, dont la preuve de travail. 13:20 A Là, je vais avoir besoin de 5 minutes de votre attention. L’idée de la preuve de travail est simple : on groupe les transactions dans des blocs. Chaque bloc référence le précédent. Il n’y a donc qu’une seule suite de blocs, une seule chaine de blocs. Cette chaine est répliquée dans tous les noeuds du réseau. Donc si la transaction F est dans le block 21 (celui du milieu), et que la transaction E est dans le block 22 (le dernier), alors tout le réseau, qui partage la même chaine, s’accorde sur le fait que la transaction E est postérieure à la transaction F. Donc on a ordonné les transactions. Avant de finir dans un bloc, les transactions sont Petite précision de vocabulaire : les transactions finissent bien dans un bloc, et non pas au bloc, ce qu’on ne souhaite à personne, pas même une transaction financière.
  13. 13. Alors, comment on crée un bloc avec ces transactions en attente ? Eh bien les noeuds du réseau essaient tous de créer un nouveau bloc en même temps. Pour savoir lequel de ces blocs sera considéré comme légitime (parce qu’il ne peut y en avoir qu’un), chaque noeud lance deux dés. Le premier noeud qui fait un double 6 gagne le droit de publier son bloc local sur le réseau. Eh oui, la blockchain, c’est un peu des ordinateurs qui jouent au Yams. Le bloc gagnant sera répliqué dans tous les autres noeuds, et toutes ses transactions seront considérées comme légitimes. Et la chaine publique s’allonge Mais pour être exact, les noeuds d’une blockchain ne jettent pas deux dés, ils en jettent une tétrachiée. 0.000000000000000000000918 Sur la blockchain Bitcoin, la probabilité actuelle de créer block gagnant est de 9,18 fois 10 puissance moins 22. C’est bien un nombre tout petit, avec 21 zéros après la virgule. D’où vient cette probabilité ? Je vous explique.
  14. 14. Hash 00000000013e10b8dc7fb51fcad87e8c Previous Block Id 000000000c264d660980cbc7ad787e0c Transactions 06f416de4154b07f15ec01e3b1059069 4451f28b863eaf98338843e04f5930b1 cc4a86a07c1db76025ffcf023db27493 ee45412f9fbcbd034da8c4fa5f58f507 Random number ece85ed8e22c264ce2746538a66e2352 sha256 sha256 Au lieu de jeter des dés, un noeud utilise une fonction de hachage. Fonction de hashage, vous connaissez ? checksum, md5, sha-1 ? Une fonction non réversible qui calcule une signature courte pour une chaine de caractères. Dans la blockchain, on hashe l’identifiant du bloc précédent, les identifiants de transaction du bloc qu’on essaient de former, et une chaine aléatoire. Et ça forme une chaine de chiffres et de lettres. Bref : Un noeud gagne le droit de diffuser son bloc si le hash qu’il forme (un double sha-256) comporte un grand nombre de zéros dans ses premiers chiffres. Gagner Block 20 Fact B Fact D Fact E Block 21 Fact C Fact F Fact H Block 22 Fact E Fact G Fact I Block 23 Fact H Fact J Fact K 10 min 10 min 10 min Dans toute la blockchain, il se forme un seul bloc toutes les 10 minutes environ. D’ailleurs, le nombre de zéros nécessaires pour avoir un hash gagnant s’ajuste pour que le temps de formation d’un nouveau bloc reste constant même quand le nombre de noeuds varie. Pour récompenser les noeuds qui participent à cette grande loterie, le système leur attribue une somme fixe à chaque fois qu’ils forment un bloc. C’est d’ailleurs comme ça que la cryptomonnaie se crée. Avant le premier bloc, il n’y en avait pas, et le montant total augmente toutes les 10 minutes. Mine Comme chercher des blocs rapporte de l’argent si on a de la chance, on a appelé ça miner. Mais à l’inverse des vraies mines, où ce sont de jeunes enfants réduits en esclavage qui creusent, le minage sur la blockchain est effectué par des machines, en général majeures. La monnaie virtuelle se crée donc en respectant des droits de l’homme virtuel.
  15. 15. Block Id 00000006e13e10b8dc7fb51fcad87e8c Previous Block Id 000000000c264d660980cbc7ad787e0c Transactions 06f416de4154b07f15ec01e3b1059069 4451f28b863eaf98338843e04f5930b1 cc4a86a07c1db76025ffcf023db27493 ee45412f9fbcbd034da8c4fa5f58f507 Block Id 000000001cc6bfb0722a7cf823b7edfd Previous Block Id 00000006e13e10b8dc7fb51fcad87e8c Transactions a7416c3c7850993841175eca72738805 9d1bbdc2e54904d2e4b5afc858c39c59 Au passage, le hash d’un bloc est utilisé comme identifiant de ce bloc. Et je vous l’ai dit, chaque bloc connait l’identifiant du bloc précédent. Grâce à ce système, si Alice veut remplacer une transaction existante dans la chaine, ça ne va pas être pas de la tarte. Block Id 000000017a071086c758925826cbead0 Previous Block Id 000000000c264d660980cbc7ad787e0c Transactions 06f416de4154b07f15ec01e3b1059069 ce38d4d9021bd4887faa9b36c35f0444 cc4a86a07c1db76025ffcf023db27493 ee45412f9fbcbd034da8c4fa5f58f507 Block Id 00000000595e794e916b90f6a7589029 Previous Block Id 000000017a071086c758925826cbead0 Transactions a7416c3c7850993841175eca72738805 9d1bbdc2e54904d2e4b5afc858c39c59 Non seulement elle devra réussir à trouver un identifiant de bloc valide avec sa nouvelle transaction, mais comme les blocs suivants référencent l’ancien identifiant du bloc, elle devra aussi remplacer tous les blocs suivants, et donc trouver des identifiants gagnants pour chacun. Et si former un bloc est déjà très coûteux, former plusieurs blocs à la suite est tout simplement hors de prix. Peer-to-Peer
 Network Asymmetric
 Cryptography Proof-of-work Consensus + + = Blockchain Et voilà, c’est tout. En assemblant ces trois technologies, Satoshi Nakamoto a effectivement créé un réseau transactionnel distribué et sûr, sans qu’il soit nécessaire de faire confiance à qui que ce soit dans le réseau. Et ça, c’est formidable.
  16. 16. Parce que même si le réseau contient un mouton noir, un pirate ou un espion de la NSA qui souhaite voler de l’argent, il n’a aucune chance. Tenez, disons que ce mouton noir, c’est Alice. Vous allez me dire, cette Alice qui avait l’air toute mignonne au début, elle prend l’envergure d’un criminel international, un Kim Jong Un du piratage. Ca m’a intrigué aussi, et j’ai mené mon enquête. Qui est vraiment Alice, et pourquoi est-elle si méchante ? Eh bien, j’ai le plaisir de vous dire qu’au terme d’une recherche portant sur des milliers de comptes Facebook à travers 5 continents, j’ai retrouvé Alice. Et pour la première fois, en exclusivité mondiale, Alice s’appelle en réalité Sébastien, et il vit chez sa mère à Chemiré-le-Gaudin dans la Sarthe. Et sa vie n’est pas rose. Chaque fois que Sébastien arrive à former un bloc qui contient une transaction frauduleuse, 10 minutes plus tard, ce bloc est remplacé par un autre bloc, un vrai, et la transaction frauduleuse est effacée. Satoshi Nakamoto, le vrai, a calculé que le réseau reste sûr tant que la moitié des mineurs jouent franc jeu. C’est donc extrêmement coûteux, et en pratique infaisable, de casser une blockchain. C’est le nombre qui crée la sécurité, un peu comme dans une assurance : vous ne connaissez pas les autres membres, mais c’est pourtant grâce à eux que votre voiture est réparée. 19:30
  17. 17. Part 2/4 Applications Bien, vous avez compris comment ça marche maintenant ? C’est pas si compliqué. La question qui vient tout de suite après, c’est : à quoi ça sert ? Eh bien, sur la base de la blockchain, on peut imaginer plein de services. Des services qui suppriment les intermédiaires de confiance, on dit de services qui font de la désintermédiaiton. La plus célèbre de ces applications, c’est bien évidemment Bitcoin : un système financier entièrement décentralisé, sans banques ni terminal de paiement. Ca marche tellement bien qu’on peut payer des vrais objets avec des bitcoins : son café, des ordinateurs, de la drogue. Les transactions sont bon marché, et intraçables - c’est donc un moyen idéal pour frauder le fisc. Smart Contract Mais il y a plus. La blockchain permet aussi de distribuer des petits programmes avec une mini base de données qui sont répliqués dans chaque noeud. On appelle ça des contrats malins. Je vous donne un exemple : Alice - vous vous souvenez d’Alice ? - choisit donner 10$ à Bob que Bob ne pourra utiliser que le jour de son anniversaire. Elle codifie cette condition dans un programme qu’elle accole à sa transaction à Bob. L’exécution de ce programme est garantie par la blockchain, il est donc aussi sûr qu’un contrat en bonne et due forme - même pas besoin de tribunal pour le faire appliquer puisqu’il ne peut pas y avoir de litige. Le code, c’est la loi.
  18. 18. Avec un smart contract, on peut par exemple certifier des documents. Parce que de nos jours, un coup de Photoshop suffit à falsifier un bulletin de paye, donc il faut bien trouver mieux. Une startup nommée BitProof offre un service équivalent à celui d’un acte notarié : envoyez-leur n’importe quel document et quelques bitcoins en paiement, et ils vous renverront le document signé, tamponné, certifié conforme. En prime, ce document sera embarqué dans un block, donc daté, et recopié sur tous les noeuds de la blockchain - donc ultra redondé. Votre notaire de famille, qui avait déjà pris un coup dans l’aile à cause de Montebourg et Macron, ne va plus s’en relever. Un smart contract permet d’enregistrer la propriété d’un bien, et aussi éventuellement de la programmer. On appelle ça la smart property. Imaginez que la serrure de votre appartement soit branchée sur la blockchain. Si vous voulez louer votre appartement pour un week-end, plutôt que de faire appel à airbnb, publiez un smart contract avec un système d’enchères. Le gagnant gagnera une clé unique, non répudiable, qu’il pourra par exemple télécharger sur son mobile, et qui lui garantira l’ouverture de la porte pendant la durée de la location - pas avant, pas après - et qui vous garantira le paiement de la location. C’est le chemin qu’explore slock.it, une startup allemande. Eh bien, vous n’avez plus qu’à casser un carreau, rameuter les voisins, et finir arrêté comme le seule homme sur terre qui s’est cambriolé lui-même.
  19. 19. Si on pousse l’idée un peu plus loin, on peut même imaginer un service de covoiturage sans autorité centrale - en clair, un Blablacar sans Blablacar. C’est l’idée qu’a suivi La Zooz, une startup israélienne. Leur levée de fonds n’a pas abouti, mais ils ont quand même gardé le nom La Zooz, parce que c’est une des meilleurs noms de produits depuis bien longtemps. Les transactions d’une blockchain, ça peut aussi être des paris. Le site Augur propose une plate-forme de prédiction collaborative et décentralisée - en fait, une plate-forme de paris en ligne où n’importe qui peut être bookmaker. Vous voulez miser sur le prochain président des Etats-Unis ? C’est possible. Pour l’instant, Augur utilise de la monnaie de singe - le site est en bêta. Et au vu des cotes qui ressortent, espérons que les parieurs sont aussi des bêtas, sinon on va pas rigoler longtemps avec nos blockchains. La blockchain permet aussi la création de sociétés sans dirigeants. Eh bien oui, qu’est-ce que c’est qu’un manager, sinon un intermédiaire entre un actionnaire et un grouillot ? La DAO, c’est ça : une Decentralized Autonomous Organization, un groupement de capital risqueurs, une plate-forme de crowdfunding un peu comme Kickstarter. Ses membres ont versé pour 150 millions de dollars dans ce fonds, et les règles d’investissement sont régies par un smart contract. Mais on va en reparler.
  20. 20. Enfin, si vous cherchez un espace de stockage, plutôt que de mettre vos photos de famille sur une clé USB que vous perdrez de toutes façons, pourquoi ne pas profiter d’un cloud décentralisé et crypté, un cloud formé par des individus comme vous et moi, qui louent la partie inutilisée de leur disque dur ? C’est le pari de storj.io, et ça marche sur la blockchain. En fait, je pourrais en lister encore des tonnes, des idées de services basés sur la blockchain. Il en sort un nouveau chaque jour. On les appelle des Decentralized Apps, ou dApps. Ces applis ne s’exécutent pas sur votre smartphone, mais dans la blockchain, qui est du coup une espèce de super-ordinateur distribué. StudBook Et je ne résiste d’ailleurs pas à la tentation de vous parler de cette dApp fabuleuse qui s’appelle Studbook, et qui se définit comme un Tinder pour les chevaux sur la blockchain. Que vous cherchiez un Mustang ou une jument Ardennaise, Studbook est là pour vous, et les mensurations sont garanties par smart contract. Je me demande juste comment les chevaux arrivent à faire un glisser vers la gauche avec leurs sabots quand ils likent…
  21. 21. Part 3/4 In Practice Vous l’avez vu, la blockchain permet en théorie de faire des choses merveilleuses. Mais et nous, est-ce qu’on peut changer le monde avec ? Est-ce que au-delà du buzz, vous et moi, on peut effectivement développer des applications sur la blockchain ? Eh bien on a voulu vérifier. 25:45 Alors, pour développer des dApps, on n’utilise en général pas la technologie BitCoin, qui a un langage de programmation trop rudimentaire. La plupart des dApps que je vous ai présentées utilisent plutôt une autre implémentation de la blockchain qui s’appelle Ethereum, et qui est aussi open-source. Dans Ethereum, les smart contracts se programment grâce à un langage proche du JavaScript, qui s’appelle Solidity. Les blocs, sur Ethereum, sont minés toutes les 10 secondes, et non pas toutes les 10 minutes, et la monnaie s’appelle l’Ether, ou ETH. Zero Dollar Homepage Alors comme on voulait mettre les mains dans le cambouis, on s’est lancés dans le développement d’une dApp. On a choisi de construire un serveur de publicité pour une de nos pages web, qui rémunère des contributions open-source par de la publicité gratuite. En référence à un phénomène des années 2000, on a appelé ça Zero Dollar Homepage.
  22. 22. Le principe est le suivant : lorsqu’un contributeur ouvre une pull request sur l’un de nos repositories open-source sur Github, un bot commente sa pull request pour le remercier et l’inciter à publier son annonce sur ZeroDollarHomepage. En suivant le lien du commentaire, le contributeur arrive sur une page sur laquelle il doit s’identifier avec son compte GitHub, et sur laquelle il peut uploader une image de son choix. Cette image se retrouve sur marmelab.com/zerodollarhomepage pendant 24h. Ca offre une publicité gratuite aux contributeurs de projets open-source. C’est un bon cas d’étude pour la blockchain : comment implémenter cet ad server sans ad server, c’est-à-dire sans autorité centrale ?
  23. 23. L’architecture choisie est la suivante : on a un bot qui reçoit les hooks de merge GitHub et qui commente dessus. Ensuite, une seconde application, l’appli sur laquelle se connecte l’auteur de la PR, vérifie son compte Github et transfère l’image uploadée sur un CDN. Elle inscrit aussi l’identifiant de l’image dans le smart contract, que vous voyez au milieu. Une troisième application regarde toutes les 24h dans le smart contract pour savoir quelle est la prochaine publicité à afficher. Elle l’utilise pour remplacer l’image en cours, et tous les visiteurs la verront ainsi pendant 24h. La dernière fois que j’ai donné cette conférence, j’ai perdu deux trois personnes dans le public, notamment une jeune fille qui se fait appeler Sophie Fonfec (véridique). Si vous venez de décrocher, pas de panique, c’était le seul slide pour les geeks. Enfin non, j’en ai encore un. https://github.com/marmelab/ZeroDollarHomePage Ca, c’est le code de notre smart contract : c’est un peu comme une classe qui peut contenir des données (dans notre cas, la liste des pulls requests réclamées) et des méthodes (par exemple, une méthode pour vérifier et ajouter une pull request). Tout ce code est open-source, donc vous pourrez le regarder en détail après la conférence si vous le souhaitez, ne vous abimez pas les yeux maintenant. On peut voir un smart contract comme une mini-API avec sa propre base de données. C’est écrit dans ce langage, Solidity. L’étape d’après, c’est de déployer le contrat dans un noeud.
  24. 24. Rassurez-vous, vous n’aurez pas besoin de savoir faire un noeud pour déployer un contrat dans un noeud. J’en vois au fond de la salle qui sont soulagés. Tout va bien. Ethereum procure une ligne de commande qui permet de faire ça très bien. Pour tester notre contrat d’ad server, on l’a chargé sur une blockchain privée, montée sur nos propres serveurs, et pas connectée à l’extérieur. Le contrat s’est répliqué automatiquement sur tous les noeuds, et on a pu appeler ses méthodes depuis un serveur en node.js. On a eu pas mal de difficultés et de mauvaise surprises - je vous en donne deux exemples. Asynchronous
 Responses Quand on appelle une méthode d’un contrat qui modifie les données, la réponse ne vient pas tout de suite. Il faut d’abord que la transaction soit « minée » par un bloc du réseau. En pratique, la réponse à un appel en écriture, c’est un numéro de transaction, comme un récépissé de la préfecture quand vous faites une demande de passeport. Pour avoir la réponse, il faut appeler la préfecture toutes les semaines, et se fader la petite musique d’attente. Bienvenue à la préfecture du 93. Toutes nos lignes sont actuellement occupées. Veuillez renouveler votre appel dans six mois. Avec la blockchain, c’est pareil : il faut interroger le réseau (toutes les 10 secondes à peu près) jusqu’à obtenir confirmation de l’enregistrement de la
  25. 25. Immutable Code Autre surprise: le code qu’on déploie sur une blockchain est immutable. Il est là pour toujours. S’il contient un bug, on ne peut pas le corriger - il faut déployer un autre contrat, en n’oubliant d’ailleurs pas d’y inclure un moyen pour récupérer les données du contrat original - dans notre cas, la file des pull requests. L’ancien contrat restera à jamais dans la blockchain, avec ses bugs, et les transactions passées aussi. Je peux vous dire que ça ne facilite pas le debug. L’étape d’après, c’est le passage d’une blockchain privée, qui est comme un serveur de test, à la blockchain publique, la vraie blockchain Ethereum, qui contient près de 6 500 noeuds. Et pour ça, il faut de l’Ether Alors pas de l’éther pour le sniffer, on est des bad boys mais pas à ce point-là quand même. Il faut de l’ether, la cryptomonnaie d’Ethereum.
  26. 26. Eh oui, parce que les noeuds du réseau n’exécutent pas une transaction à moins qu’on l’accompagne d’un peu d’Ether pour dédommager du temps de calcul. Pour obtenir de l’Ether, vous pouvez soit l’acheter sur une place de marché, où son cours varie selon l’offre et la demande, soit la miner. Nous, on a testé le minage : on a fait tourner une grosse instance EC2 sur Amazon, et au bout de 3 jours elle a réussi à former un block - le bloc que vous voyez affiché ici. On a obtenu 5 Ether en récompense. Ca nous a coûté un peu plus de 50$, sachant que le prix de revente de ces 5 Ether était d’environ 55$ à l’époque. D’après nos calculs, ces 5 Ethers étaient suffisants pour faire tourner notre ad server ZeroDollarHomepage pendant 7 ans. Et après pas mal de déconvenues, on a réussi à déployer notre contrat sur Ethereum et à l’appeler depuis nos serveurs en Node.js. Et ça n’a l’air de rien, mais je peux vous dire qu’on était content d’y arriver.
  27. 27. Ce que vous voyez, c’est l’adresse de notre contrat, ainsi que toutes les transactions qui y sont liées. Tout est public sur Ethereum : tout le monde peut voir toutes les transactions, même si elles sont anonymes - d’une clé publique à une autre. Il aura fallu 4 semaines à 2 développeurs chevronnés pour arriver tant bien que mal à faire marcher notre contrat. Les développeurs ont lutté avec une doc pas à jour, ils ont fait face à des bugs impossibles à localiser et à qualifier, ils se sont arrachés les cheveux à cause de mises à jour intempestives qui faisaient qu’un code qui marchait la veille ne marchait plus le lendemain. 33:10 Part 4/4 The Truth Ce qui m’amène à la quatrième et dernière partie de mon exposé : la vérité sur la blockchain. Parce qu’en développant notre propre dApp, on a compris tout un tas de choses qu’on ne lit pas sur Internet. Tout un tas de trucs pas vraiment à l’avantage de la blockchain.
  28. 28. Immature Technology D’abord, la technologie n’est pas prête. On en a fait les frais. Les exemples de code qu’on trouve sur Internet ne marchent pas. Les développeurs en bavent tellement qu’il demandent à changer de projet. Imaginez que je vous demande de construire une tour de 30m de haut, en vous donnant seulement des legos comme matériau de construction. Ca a l’air rigolo au début, et puis vous vous dites que de bonnes vielles briques auraient quand même mieux fait l’affaire. Eh bien, la blockchain, c’est pire. Immature Technology En plus, on n’est pas capable d’estimer le temps d’implémentation d’une fonctionnalité simple. La techno progresse vite, mais pour l’instant, difficile de parier sur une technologie aussi immature.
  29. 29. No Outside Contact D’autre part, les smart contracts sont en fait assez stupides. Vous l’avez vu dans notre schéma d’architecture, on ne peut pas leur demander grand chose. C’est qu’ils ne peuvent pas communiquer avec le monde extérieur - ils sont contraints à la blockchain pour des raisons de sécurité. Ca veut dire pas d’appels à des APIs externes. Par exemple, pas d’appel à un service d’authentification, comme l’OAuth de GitHub. Donc pour faire marcher une dApp, il faut pousser toutes les données extérieures dans le smart contract. Vous imaginez la complexité ? Ca explique pourquoi les dApps se restreignent à des cas d’utilisation très simples, ou à des petites parties d’applications. It’s complicated Les concepts de la blockchain sont très complexes. J’ai gratté la surface pour essayer de vous donner l’impression de comprendre, mais en vérité vous n’y comprenez toujours que pouic, croyez-moi. Essayez donc de lire un article technique sur la blockchain pour voir. C’est un peu comme essayer de résoudre un Rubik’s cube à 4 dimensions. 80 pièces, 216 faces, 10 puissance 120 combinaisons. [gros yeux]
  30. 30. It’s complicated Le résultat, c’est qu’à moins d’être un génie, vos dApps vont contenir des bugs. Plein de bugs. On estime que le taux de bugs dans les smart contracts est environ d’un bug toutes les 10 lignes. Des smart contracts qui tournent en production. Je peux vous dire que les hackers se frottent les mains. Not Secure Ca veut dire que la blockchain ne résout pas encore le problème de la sécurité. Le nombre de vols et de scandales sur des blockchains grimpe chaque jour. Tenez, le dernier en date : Je vous ai parlé un peu plus tôt de la DAO, vous vous souvenez ? BUGGY Le kickstarter décentralisé. Eh bien un hacker a dérobé pour 50 millions de dollars d’Ether sur ce smart contract. Et le pire, c’est que le hacker ne peut pas être inquiété. En toute bonne foi, il s’est révélé au public, et il a déclaré qu’il a respecté le mantra de la blockchain : le code c’est la loi. Si le contrat contenait un bug, c’est la faute de son auteur. Donc le hacker n’était pas responsable.
  31. 31. Not Secure C’est bien embêtant, car le manque de sécurité est ce qui nous motive à faire appel à des intermédiaires de confiance. Si en supprimant les intermédiaires, on ne garde pas la sécurité, eh bien la blockchain ne sert à rien. Developer Power Et même si on écarte les hackers, mettre la loi dans les mains des développeurs, je ne suis pas sur que ce soit une si bonne idée. Dans notre imaginaire collectif, un monde gouverné par des machines, ce n’est pas nécessairement le paradis. C’est que les développeurs sont des gens irresponsables - je dis ça sans méchanceté, c’est juste qu’on ne les forme pas à prendre des décisions politiques ou sociales pour le bien commun. N’en jetez plus, la blockchain est une techno mal gaulée, vous avez compris. A ce stade, vous vous dites que vous auriez probablement dû aller voir l’autre Eh bien détrompez-vous : voilà le flux de la caméra de surveillance de la salle d’â côté. Ils ronquent tous comme des loirs. Non croyez-moi, vous êtes bien mieux ici, et en plus je n’en ai pas tout-à-fait fini avec la blockchain.
  32. 32. Waste Je vous ai dit que les noeuds des mineurs se battent pour créer un bloc toutes les 10 minutes. En pratique, ces noeuds sont des fermes de serveurs surboostés, qui tournent à plein régime… pour mettre à la poubelle le résultat de leurs calculs dans 99,9% des cas - Eh bien oui, puisqu’il n’y a qu’un noeud qui gagne toutes les 10 minutes. Ah et cette stratégie de réplication du registre, vous vous souvenez ? Chaque noeud contient la copie intégrale de toutes les transactions opérées sur le réseau depuis le jour 1, celui qu’on retient, Celui qui s'efface quand tu me remplaces. Eh oui, j’ai une fille de 9 ans. Waste Donc quand je démarre un noeud, je dois d’abord télécharger et vérifier l’intégralité des transactions depuis le premier jour - ça représente des dizaines de Giga-octets. Vous voyez le gâchis de stockage, de cpu, et donc d’électricité. A l’heure où on s’inquiète du réchauffement climatique, les fermes de mineurs sont en fait des radiateurs géants.
  33. 33. Very Expensive Et qui paye pour toute cette énergie gâchée ? Les utilisateurs de la blockchain, pardi. Chaque transaction doit s’accompagner d’une petite commission qui va au mineur qui arrive à former un bloc avec. Pour les transferts d’argent avec Bitcoin, comptez environ 11 centimes par transaction - c’est loin d’être négligeable. Et si Ethereum était une boulangerie, la baguette y couterait 50 000 euros pièce. Elle est bonne cette baguette, je ne dis pas le contraire, mais je me demande seulement si ça valait le coup d’étouffer ta grand-mère avec un oreiller pour hériter tu vois. Extremely volatile Par ailleurs, la valeur d’une cryptomonnaie dépend du montant en vraie monnaie que des acheteurs sont prêts à dépenser pour en acquérir - c’est la loi de l’offre et de la demande. Aujourd’hui, un bitcoin, c’est environ 600$. Mais on voit des écarts de valeur de 100% en quelque mois. Si vous devez monter un business sur la blockchain, il faudra bien planifier vos dépenses sur plusieurs années… mais comment faire sur un marché si volatile ?
  34. 34. No Business Model Et puis quand on y réfléchit bien, il y a un vrai paradoxe : si la blockchain supprime les intermédiaires, qui peut gagner de l’argent avec ? Les business model les plus performants, les plus novateurs, sont ceux qui créent une position d’intermédiaire - pensez à Google, qui est devenu notre intermédiaire avec le web. Tous les exemples de services dont je vous ai parlé peuvent très bien exister sans éditeur, puisqu’il s’agit uniquement de faire tourner des programmes sur une blockchain. Donc c’est bien pour les individus, mais si les sociétés n’y trouvent pas de vrai intérêt, il n’y aura pas d’investissement significatif sur la blockchain. Slow Ah, et j’ai gardé le meilleur pour la fin, si on la compare au technos web habituelles, la blockchain, c’est affreusement lent. Il faut attendre au moins un bloc avant d’avoir la confirmation d’une transaction - soit 10 secondes sur Ethereum ou 10 minutes sur Bitcoin. En pratique, les spécialistes conseillent plutôt d’attendre 6 blocs (soit 1 minute sur Ethereum, 1 heure sur Bitcoin) pour des raisons de sécurité. Alors comparés aux délais financiers (où les compensations se font en général à J+1), c’est un progrès, mais par rapport au reste du monde du web, 10 minutes pour valider un formulaire de commande, c’est une grosse régression. Préparez-vous à regarder des spinners toute la journée, c’est le genre d’expérience utilisateur qu’offrent toutes les dApps. 40:45
  35. 35. Conclusion Bien. C’est l’heure de conclure. Vous l’avez compris, se passer d’intermédiaires de confiance en se basant sur une communauté d’anonymes, c’est une idée révolutionnaire. Et si ça peut faire avancer le schimilblick, on se dit : pourquoi pas ? Mais mon opinion - et elle va à l’encontre de beaucoup de ce que vous pourrez lire par ailleurs - mon opinion, c’est que les coûts l’emportent encore, et de loin, sur les bénéfices. La blockchain, c’est une grosse usine à gaz. Et puis c’est aussi un passe-droit impossible à réguler et à sécuriser. En ce sens, la blockchain nous pousse vers une société ultra libérale. C’est un outil déshumanisé, qui considère l’empathie et Et comme on a une certaine expertise sur la blockchain, on nous a consultés pour plusieurs projets d’innovation qui se basaient sur cette technologie. En y regardant de plus près, 80% de ces projets devaient s’exécuter sur une blockchain privée, accessible uniquement à des tiers de confiance - vous voyez le paradoxe. Alors la blockchain, une fausse bonne idée ? Open Government Il y a un intermédiaire de confiance dont je n’ai pas parlé, et qui lui a vraiment besoin d’un coup d’innovation. C’est l’élu. Nos démocraties sont malades du clientélisme et de la professionnalisation de la vie politique. Le résultat, ce sont des gouvernants qui se disent incapables de changer la société, qui font des promesses sans les tenir, et des extrêmes qui montent. Et si on inventait un gouvernement décentralisé, où les engagements des élus seraient garantis par un contrat impossible à répudier ? Et si on rétablissait la confiance là où on en a le plus besoin, dans notre avenir ?
  36. 36. Eh bien croyez-le ou non, mais ça existe. BitNation est un gouvernement décentralisé sur la blockchain. Il fournit des registres de naissance, des cartes d’identités, des cartes de paiement, ils financent même une agence spatiale. L’initiative est encore balbutiante, mais elle est là. Elle annonce la reprise de contrôle de notre futur collectif, sans nous défausser de notre responsabilité citoyenne sur des intermédiaires. La blockchain, c’est peut-être la relève de la démocratie déclinante, et rien que pour ça, je suis prêt à parier dessus. 43:20 Questions? François Zaninotto @francoisz marmelab Interested by 
 a developer position
 in Paris, Nancy or Dijon? 
 Apply at marmelab.com/jobs.

×