Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Scuttlebutt - Construire un Facebook décentralisé (BreizhCamp 2019)

Scuttlebutt - Construire un Facebook décentralisé (BreizhCamp 2019)

Vidéo : https://www.youtube.com/watch?v=ymDi-gwWvrc

En 2016, le scandale Cambridge Analytica a prouvé que les géants du Net comme Facebook pouvaient avoir une influence sur les élections présidentielles d'une grande puissance comme les États-Unis. Pas étonnant que de plus en plus de personnes les regardent d'un air inquiet, ils sont aussi puissants financièrement que certains états et disposent de données à rendre jaloux les services de renseignement.

Seulement voilà, qu'avons-nous comme alternative ? Comment construire un réseau social gratuit comptant plusieurs millions d'utilisateurs sans monétiser les données pour payer son coût de fonctionnement ?

Un réseau social de ce type existe, il s'appelle Scuttlebutt et il s'appuie sur les mêmes bases techniques que la Blockchain sans pour autant consommer l'équivalent de l'Autriche en énergie pour fonctionner ;-)

Nous allons voir comment il fonctionne en repartant de l'essentiel, l'échange de messages, et en ajoutant progressivement les fonctionnalités que l'on retrouve dans les réseaux sociaux d'aujourd'hui. Vous serez peut être étonnés par sa simplicité et sa ressemblance avec nos interactions dans la vie réelle, ainsi que par les réponses apportées à certains problèmes comme la suppression des messages ou la liberté d'expression.

Je vous montrerai également comment rejoindre ce réseau et vous présenterai quelques applications disponibles.

Antoine CAILLY

March 20, 2019
Tweet

More Decks by Antoine CAILLY

Other Decks in Programming

Transcript

  1. Construire un
    Facebook
    décentralisé

    View Slide

  2. Qui
    suis-je ?
    @AntoineCailly
    acailly
    @Antoine Cailly

    View Slide

  3. Pourquoi ?

    View Slide

  4. https://www.theguardian.com/news/2018/mar/17/cambridge-analytica-facebook-influence-us-election

    View Slide

  5. https://twitter.com/gzeromedia/status/986336209583603713

    View Slide

  6. Construire un
    Facebook
    décentralisé

    View Slide

  7. Scuttlebutt

    View Slide

  8. L’essentiel

    View Slide

  9. VS

    View Slide

  10. VS

    View Slide

  11. VS

    View Slide

  12. VS

    View Slide

  13. VS

    View Slide

  14. VS

    View Slide

  15. VS

    View Slide

  16. Friends are
    our data center

    View Slide

  17. View Slide

  18. Rencontrer des
    amis au pub

    View Slide


  19. VS

    View Slide


  20. VS


    View Slide

  21. VS


    View Slide

  22. VS

    View Slide

  23. View Slide

  24. https://twitter.com/andrestaltz/status/971143972499460096?lang=fr

    View Slide

  25. Parlons sécurité

    View Slide

  26. Personne ne
    déforme mes propos

    View Slide

  27. TRUST
    VS

    View Slide

  28. HASHAGE
    %f89...KW5rio=.sha256
    %ad3...yHt6uw=.sha256
    =
    =


    View Slide

  29. %f89...KW5rio=.sha256
    %f89...KW5rio=.sha256
    %f89...KW5rio=.sha256
    TRUST
    NO TRUST
    VS

    View Slide

  30. Personne ne peut
    usurper mon identité

    View Slide

  31. https://haveibeenpwned.com/

    View Slide

  32. TRUST
    VS

    View Slide

  33. TRUST
    NO TRUST
    VS

    View Slide

  34. CRYPTOGRAPHIE
    ASYMÉTRIQUE

    View Slide

  35. CHIFFREMENT
    Personne d’autre ne lit le message

    View Slide

  36. TRUST
    NO TRUST
    VS

    View Slide

  37. TRUST
    NO TRUST
    VS
    @UP7z...0P8=.ed25519
    @iPP1...+74=.ed25519

    View Slide

  38. Mes
    messages privés
    restent privés

    View Slide

  39. https://www.bloomberg.com/news/articles/2018-04-04/facebook-scans-what-you-send-to-other-people-on-messenger-app

    View Slide

  40. https://commons.wikimedia.org/wiki/File:PRISM_Collection_Details.jpg

    View Slide

  41. TRUST
    VS

    View Slide

  42. TRUST
    NO TRUST
    VS

    View Slide

  43. Éviter les
    oreilles indiscrètes

    View Slide

  44. View Slide

  45. View Slide

  46. View Slide

  47. CLÉS ÉPHÉMÈRES

    View Slide

  48. CLÉS ÉPHÉMÈRES

    View Slide

  49. CLÉS ÉPHÉMÈRES

    View Slide

  50. CLÉS ÉPHÉMÈRES
    FORWARD SECRECY

    View Slide

  51. DIFFIE-HELLMAN
    https://upload.wikimedia.org/wikipedia/commons/
    a/a8/Diffie-Hellman_Key_Exchange_%28fr%29.svg

    View Slide

  52. DIFFIE-HELLMAN
    https://upload.wikimedia.org/wikipedia/commons/
    a/a8/Diffie-Hellman_Key_Exchange_%28fr%29.svg

    View Slide

  53. DIFFIE-HELLMAN
    https://upload.wikimedia.org/wikipedia/commons/
    a/a8/Diffie-Hellman_Key_Exchange_%28fr%29.svg

    View Slide

  54. DIFFIE-HELLMAN
    https://upload.wikimedia.org/wikipedia/commons/
    a/a8/Diffie-Hellman_Key_Exchange_%28fr%29.svg

    View Slide

  55. DIFFIE-HELLMAN
    https://upload.wikimedia.org/wikipedia/commons/
    a/a8/Diffie-Hellman_Key_Exchange_%28fr%29.svg

    View Slide

  56. DIFFIE-HELLMAN
    https://upload.wikimedia.org/wikipedia/commons/
    a/a8/Diffie-Hellman_Key_Exchange_%28fr%29.svg

    View Slide

  57. VS

    View Slide

  58. VS

    View Slide

  59. TRUST
    VS

    View Slide

  60. https://security.googleblog.com/2017/09/chromes-plan-to-distrust-symantec.html
    https://blog.mozilla.org/security/2018/07/30/update-on-the-distrust-of-symantec-tls-certificates/

    View Slide

  61. TRUST
    VS
    NO TRUST
    @UP7z...0P8=.ed25519
    @iPP1...+74=.ed25519

    View Slide

  62. Autres
    fonctionnalités

    View Slide

  63. Suggestion de
    contenu

    View Slide

  64. Fake news

    View Slide

  65. https://www.francetvinfo.fr/replay-radio/le-vrai-du-faux/le-vrai-du-faux-non-emmanuel-macron-n-a-pas-mis-la-main-aux-fesses-de-la-presidente-cr
    oate_2828953.html

    View Slide

  66. https://www.buzzfeednews.com/article/craigsilverman/viral-fake-election-news-outperformed-real-news-on-facebook#.emA15rzd0

    View Slide

  67. https://twitter.com/gbrockell/status/1072589687489998848

    View Slide

  68. Suggestion de
    contenu

    View Slide

  69. View Slide

  70. View Slide

  71. Comportement
    inacceptable

    View Slide

  72. https://www.japantimes.co.jp/opinion/2016/09/13/commentary/world-commentary/burkini-bans-unwise/#.W8uQhWgzY2w

    View Slide

  73. https://upload.wikimedia.org/wikipedia/commons/d/d1/World_laws_pertaining_to_homosexual_relationships_and_expression.svg

    View Slide

  74. https://unsplash.com/photos/ybHtKz5He9Y

    View Slide

  75. https://www.thedailybeast.com/japans-kiddie-porn-empire-bye-bye

    View Slide

  76. Personne n’a trouvé
    la morale universelle

    View Slide

  77. Relativisme culturel :
    la notion de ‘Bien’ ou ‘Mal’
    est propre à la culture

    View Slide

  78. Liberté
    d’expression ?

    View Slide

  79. Liberté
    d’écouter !

    View Slide

  80. View Slide

  81. View Slide

  82. View Slide

  83. View Slide

  84. Suppression des
    messages covfefe

    View Slide

  85. 31/05/2017

    View Slide

  86. 19/03/2019

    View Slide

  87. 31/01/2008
    http://web.archive.org/web/20080131093335/http://www.zenika.com:80/whitepaper_ria.php#telechargement

    View Slide

  88. Une donnée partagée
    est incontrôlable

    View Slide

  89. https://fr.wikipedia.org/wiki/Parlement_europ%C3%A9en#/media/File:European_Parliament_Strasbourg_Hemicycle_-_Diliff.jpg

    View Slide

  90. RGPD
    Copyright Law
    La plateforme doit...

    View Slide

  91. View Slide

  92. Mot de passe
    oublié

    View Slide

  93. https://www.independent.co.uk/life-style/gadgets-and-tech/news/bitcoin-value-james-howells-newport-landfill-hard-drive-campbell-simpson-laszlo
    -hanyecz-a8091371.html

    View Slide

  94. View Slide

  95. Shamir's Secret Sharing
    SECRET

    View Slide

  96. https://github.com/freedomofpress/sunder

    View Slide

  97. https://darkcrystal.pw/

    View Slide

  98. View Slide

  99. Mode hors ligne

    View Slide

  100. https://twitter.com/edonline/status/928560622488473600

    View Slide

  101. https://www.internetworldstats.com/stats.htm

    View Slide

  102. https://staltz.com/an-off-grid-social-network.html

    View Slide

  103. %hFnMpqI1w3iKdQ0XxYD/s1FU7t8D+fDxgyPkWssSmKk=.sha256

    View Slide

  104. https://www.20minutes.fr/monde/2433783-20190123-tonga-royaume-coupe-monde-cause-gigantesque-panne-internet

    View Slide

  105. https://twitter.com/netblocks/status/1088117680027168769?s=20

    View Slide

  106. View Slide

  107. View Slide

  108. View Slide

  109. View Slide

  110. https://www.manyver.se/blog/bluetooth-sync

    View Slide

  111. View Slide

  112. https://www.digital-democracy.org/mapeo/

    View Slide

  113. https://www.digital-democracy.org/ourwork/guyana/

    View Slide

  114. View Slide

  115. Une application

    View Slide

  116. Une application
    Des applications

    View Slide

  117. Patchwork
    Patchbay
    Patchfoo
    Manyverse
    Patchless
    mvd
    Patchfox

    View Slide

  118. git-ssb
    ssb-npm
    scat / gester
    Ticktack
    ssb-chess
    patch-book
    recipes
    SSB drive
    Ferment
    Patchwork
    Patchbay
    Patchfoo
    Manyverse
    Patchless
    mvd
    Patchfox

    View Slide

  119. View Slide

  120. View Slide

  121. View Slide

  122. View Slide

  123. View Slide

  124. View Slide

  125. View Slide

  126. View Slide

  127. View Slide

  128. View Slide

  129. View Slide

  130. Bilan ?

    View Slide

  131. Coût financier

    View Slide

  132. Coût financier

    View Slide

  133. Coût énergétique

    View Slide

  134. https://digiconomist.net/bitcoin-energy-consumption

    View Slide

  135. Coût de stockage

    View Slide

  136. https://charts.bitcoin.com/btc/chart/blockchain-size

    View Slide

  137. https://twitter.com/andrestaltz/status/1022455866493206528

    View Slide

  138. La différence ?

    View Slide

  139. Personne n’a
    toutes les données

    View Slide

  140. Est ce que vous
    connaissez toutes
    les personnes de la
    terre ?

    View Slide

  141. View Slide

  142. View Slide

  143. View Slide

  144. https://twitter.com/andrestaltz/status/960801327495475200

    View Slide

  145. View Slide

  146. https://ahdinosaur.github.io/patchwork-downloader/

    View Slide

  147. https://www.scuttlebutt.nz/getting-started

    View Slide

  148. https://github.com/ssbc/scuttlebot/wiki/Pub-Servers

    View Slide

  149. http://ssb.learningsocieties.org/

    View Slide

  150. http://ssb.learningsocieties.org/

    View Slide

  151. View Slide

  152. View Slide

  153. View Slide

  154. DEMO

    View Slide

  155. Merci
    @Antoine Cailly
    @UP7zpmox0RbLL1wMZO0xtYbpwmc/AQtmiX5zbDLh0P8=.ed25519
    AntoineCailly acailly

    View Slide