le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ?...

175
Le web décentralisé

Upload: others

Post on 03-Aug-2020

5 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

Le web décentralisé

Page 2: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

Qui suis-je ?

@AntoineCailly

acailly

https://acailly.github.io/

Page 3: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

Il était une fois le web en 2020...

Page 4: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

Censure

Page 5: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

https://wikimediafoundation.org/news/2020/01/15/access-to-wikipedia-restored-in-turkey-after-more-than-two-and-a-half-years/

Page 6: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

https://ipfs.io/ipfs/QmT5NvUtoM5nWFfrQdVrFtvGfKFmG7AHE8P34isapyhCxX/wiki/Anasayfa.html

Page 7: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

Suppression des données

Page 8: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding
Page 9: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

http://www.climatecentral.org/news/trump-delete-climate-change-webpage-21091

Page 10: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

https://www.datarefuge.org/

Page 11: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding
Page 12: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

https://datproject.org/explore

Page 13: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

Centralisation des services

Page 14: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding
Page 15: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding
Page 16: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

Centralisation du trafic

Page 17: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding
Page 18: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

Un point commun ?

Page 19: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding
Page 20: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

Single point of failure

Page 21: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

Single point of control

Page 22: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

Une solution ?

Page 23: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding
Page 24: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding
Page 25: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

https://joinmastodon.org/

Page 26: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding
Page 27: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding
Page 28: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding
Page 29: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding
Page 30: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding
Page 31: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

Comment ça marche ?

Page 32: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

?

Page 33: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

Bootstraping

Page 34: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

Node publique

Page 35: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

Multicast DNS (ZeroConf, Apple Bonjour)

Page 36: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

DémoTrouver une node publique Bitcoin

Page 37: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding
Page 38: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding
Page 39: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

foo.txt ?

Page 40: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

Discovery

Page 41: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

Retour dans les années 2000...

Page 42: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

foo.txt ?

foo.txt ?

foo.txt ?

foo.txt ?

foo.

txt ?

foo.txt ?

foo.txt ?

foo.txt ?

foo.txt ?

foo.

txt ? foo.txt ?

Query Flooding

Page 43: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

Distributed Hash Table

foo.txt ? foo.txt ?

foo.txt ?

Page 44: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

Distributed Hash TableDHT ?

Page 45: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

0

1

2

4

3

6

78

9

10

11

12

13

14

15

5

Kademlia

Page 46: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

0

1

2

4

3

6

78

9

10

11

12

13

14

15

5

GUID sur 4 bits0 → 15

16 pairs max.

Page 47: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

0

1

2

4

3

6

78

9

10

11

12

13

14

15

5

Chaque pair référence 4 autres pairs à une distance

2N, N: 0 → 4

Page 48: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

0

1

2

4

3

6

79

10

11

12

13

14

15

5

Si une node est absente du réseau, on prend le GUID

au dessus

Page 49: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

La fonction de distance utilisée est XOR

(simplicité, symétrie et unicité)

0

1

2

4

3

6

78

9

10

11

12

13

14

15

5

Page 50: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

qui possède foo.txt ?

0

1

2

4

3

6

78

9

10

11

12

13

14

15

5

Page 51: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

qui possède foo.txt ?

0

1

2

4

3

6

78

9

10

11

12

13

14

15

5

infohash(foo.txt) = 15

Page 52: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

qui possède foo.txt ?

il sait !0

1

2

4

3

6

78

9

10

11

12

13

14

15

5

infohash(foo.txt) = 15

Page 53: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

0

1

2

4

3

6

78

9

10

11

12

13

14

15

5

On prend le plus près

Page 54: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

0

1

2

4

3

6

78

9

10

11

12

13

14

15

5

Page 55: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

0

1

2

4

3

6

78

9

10

11

12

13

14

15

5

Page 56: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

0

1

2

4

3

6

78

9

10

11

12

13

14

5

15

Page 57: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

0

1

2

4

3

6

78

9

10

11

12

13

14

15

5

Trouvé en O(log N)

Page 58: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

DémoLes magnet links

sur Bittorrent

Page 59: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding
Page 60: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding
Page 61: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding
Page 62: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding
Page 63: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding
Page 64: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding
Page 65: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding
Page 66: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding
Page 67: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding
Page 68: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding
Page 69: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

Peer to Peer !=

Privé

Page 70: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

Et la blockchain dans tout ca ?

Page 71: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

tx

tx

txtx

tx

tx

tx

txtx

tx

Gossip protocol

Chaque node se connecte à un grand nombre de nodes

Page 72: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding
Page 73: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding
Page 74: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

??

???

?

??

??

? ??

Page 75: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

Transport

Page 76: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

WEB RTCBLUETOOTH

...

HTTPWEB SOCKET

...

UDPTCPµTP

QUIC ...

CLIENT

SERVEUR

Page 77: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding
Page 78: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

?

Page 79: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

A A’diff ?

Page 80: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

Data integrity

Page 81: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

Merkle “Tree”Merkle Directed Acyclic Graph

Page 82: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

Merkle “Tree”Merkle Directed Acyclic Graph

Page 83: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

DATA #1

Page 84: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

DATA #1

HASH #1

Page 85: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

DATA #1

HASH #1

ROOT HASH #1

Page 86: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

DATA #1

HASH #1

DATA #2

HASH #2

ROOT HASH #12

ça a changé !

Page 87: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

DATA #1

HASH #1

DATA #2

HASH #2

ROOT HASH #1234

DATA #3

HASH #3

DATA #4

HASH #4

HASH #12 HASH #34

ça a encore changé !

Page 88: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

#3 ?

Page 89: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

DATA #1

HASH #1

DATA #2

HASH #2

DATA #3

HASH #3

DATA #4

HASH #4

HASH #12 HASH #34

je connais le root hash de source sûre

ROOT HASH #1234

Page 90: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

DATA #1

HASH #1

DATA #2

HASH #2

ROOT HASH #3

DATA #3

HASH #3

DATA #4

HASH #4

HASH #12 HASH #34

voilà la donnée demandée

ROOT HASH #1234

Page 91: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

DATA #1

HASH #1

DATA #2

HASH #2

ROOT HASH #3

DATA #3

HASH #3

DATA #4

HASH #4

HASH #12 HASH #34

ROOT HASH #1234

je vérifie

Page 92: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

DATA #1

HASH #1

DATA #2

HASH #2

ROOT HASH #3

DATA #3

HASH #3

DATA #4

HASH #4

HASH #12 HASH #34

ROOT HASH #1234

je vérifie

Page 93: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

DATA #1

HASH #1

DATA #2

HASH #2

ROOT HASH #3

DATA #3

HASH #3

DATA #4

HASH #4

HASH #12 HASH #34

ROOT HASH #1234

je vérifie

Page 94: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

DATA #1

HASH #1

DATA #2

HASH #2

ROOT HASH #3

DATA #3

HASH #3

DATA #4

HASH #4

HASH #12 HASH #34

ROOT HASH #1234

ok !

Page 95: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

Utilisé ?

Page 96: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

DATA #1

BLOB HASH #1

DATA #2

BLOB HASH #2

COMMIT HASH

DATA #3

BLOB HASH #3

DATA #4

BLOB HASH #4

TREE HASH #12 TREE HASH #34

Page 97: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

TRANSACTION #1

HASH #1

TRANSACTION #2

HASH #2

ROOT HASH

TRANSACTION #3

HASH #3

TRANSACTION #4

HASH #4

HASH #12 HASH #34

PREVIOUS HASHNONCE

BLOCK HEADER

Page 98: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

TRANSACTION #1

HASH #1

TRANSACTION #2

HASH #2

ROOT HASH

TRANSACTION #3

HASH #3

TRANSACTION #4

HASH #4

HASH #12 HASH #34

PREVIOUS HASHNONCE

BLOCK HEADER

Page 99: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

PIECE #1

PIECE HASH #1

PIECE #2

PIECE HASH #2

TORRENT

PIECE #3

PIECE HASH #3

PIECE #4

PIECE HASH #4

Page 100: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

CAT.JPG

/FOO/CAT.JPG HASH

INDEX.HTML

/FOO/INDEX.HTML HASH

/ HASH

PACKAGE.JSON

/BAR/PACKAGE.JSON HASH

APP.JS

/BAR/APP.JS HASH

/FOO/ HASH /BAR/ HASH

Page 101: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

https://ipld.io

Page 102: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding
Page 103: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

00

Page 104: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

01

+1

Page 105: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

1

+2

2

Page 106: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

1

?2

Page 107: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

Conflict resolution

Page 108: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

Conflict-free Replicated Data Types

CRDT ?

Page 109: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding
Page 110: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

1

?2

Page 111: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

1 22 1

Page 112: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

1 22 1

ADD ADD

3 3

Page 113: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

1 22 1

ADD ADD

3 3

Page 114: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

1 22 1

ADD ADD

3 3

Grow-only Counter

Page 115: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

1 22 1

ADD ADD

3 3

-1

Page 116: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

1 22 1

ADD ADD

2 3

-1

1

- ADD

Page 117: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

1 22 1

ADD ADD

2 0

-1

1

-3

- ADD - ADD

3

Page 118: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

1 22 1

ADD ADD

2 0

1

- ADD - ADD

3

Page 119: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

1 22 1

ADD ADD

-1 -1

1

- ADD - ADD

33 1

Page 120: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

1 22 1

ADD ADD

-1 -1

1

- ADD - ADD

33 1

Page 121: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

1 22 1

ADD ADD

-1 -1

1

- ADD - ADD

33 1

Positive-Negative Counter

Page 122: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

1

2

APPEND

2

Grow-only Set

2

3

1 3

1

2

APPEND

2

2

3

1 3

Page 123: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

1

2

APPEND

2

2-Phase Set

2

3

1

2

APPEND

2

2

3

1

3

- APPEND

1

3

- APPEND

11

Page 124: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

2-Phase Set+

Timestamp=

Last-Write-Wins-Element-Set

Page 125: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

OR-SetMC-Sets

U-SetLWW-RegisterMV-Register

Add-only monotonic DAGAdd-Remove Partial Order

...

Page 126: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

Compromis sur la performance (bande passante, perte de paquet, mémoire...)

Compromis sur les fonctionnalités (Ajout, Suppression, Modification…)

?

Page 127: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

Utilisé ?

Page 128: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

Bases de données distribuées

Page 129: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

Mais aussi...

Chat (70M utilisateurs)Distributed Data

News feedSync. des localisations

favorites

Page 130: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

Mais aussi...

Page 131: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

Mais aussi...

https://www.figma.com/blog/how-figmas-multiplayer-technology-works/

Page 132: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

Démoà la fin...

https://acailly.github.io/roti/

Page 133: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

Et si on quittait le monde des bisounours ?

Page 134: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

http://slideplayer.com/slide/9719156/Sybil attack

Page 135: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding
Page 136: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding
Page 137: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

Réseau privé Réseau privéRéseau public

Page 138: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

NAT Traversal

Page 139: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

Session Traversal Utilities for NAT(STUN)

Page 140: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

Adresse IP privée

Adresse IP privée

Page 141: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

Adresse IP privée

Adresse IP privée

Serveur STUN

Quelle est mon adresse IP publique ?Suis-je accessible de l’extérieur ?

Page 142: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

Adresse IP privée

Adresse IP privée

Serveur STUNVous êtes 208.141.55.130:3255 Vous êtes 208.124.56.102:4562

Page 143: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

208.141.55.130:3255

Adresse publique du routeur

Port unique pour chaque device derrière le routeur

Page 144: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

Adresse IP privée

Adresse IP privée

Serveur STUNVous êtes 208.141.55.130:3255Derrière un NAT symétrique

Vous êtes 208.124.56.102:4562Derrière un NAT symétrique

Qui n’accepte que les connexions entrante s’il y a une connexion sortante sur ce pair

Page 145: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

Traversal Using Relays around NAT(TURN)

Page 146: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

Adresse IP privée

Adresse IP privée

Serveur STUNVous êtes 208.141.55.130:3255Derrière un NAT symétrique

Vous êtes 208.124.56.102:4562Derrière un NAT symétrique

Serveur TURN

Page 147: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding
Page 148: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

Que nous réserve le futur ?

Page 149: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding
Page 150: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

Impact écologique ?

Arnaques ?

Centralisation ?

Scalabilité ?

Page 151: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

https://solid.mit.edu/

Page 152: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

https://unhosted.org/https://remotestorage.io/

Page 153: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

https://ipfs.io/ https://libp2p.io/

Page 154: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

https://ipfs.io/ https://libp2p.io/

Page 155: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

https://js.ipfs.io/

Page 156: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

https://www.coindesk.com/257-million-filecoin-breaks-time-record-ico-funding/

Page 157: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

https://www.cloudflare.com/distributed-web-gateway/

Page 158: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

https://blog.ipfs.io/2020-03-30-ipfs-in-opera-for-android/

Page 159: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

https://blog.ipfs.io/2020-02-14-improved-bitswap-for-container-distribution/

Page 160: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

https://datproject.org/

Page 161: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

https://hypercore-protocol.org/

Page 162: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

https://beakerbrowser.com/

Page 163: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

https://www.scuttlebutt.nz/ https://www.youtube.com/watch?v=ymDi-gwWvrc

@Antoine Cailly@UP7zpmox0RbLL1wMZO0xtYbpwmc/AQtmiX5zbDLh0P8=.ed25519

Page 164: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

https://matrix.org

Page 165: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

https://matrix.org

Page 166: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

https://matrix.org/faq#what-is-the-current-project-status

Page 167: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

https://matrix.org/blog/2018/04/26/matrix-and-riot-confirmed-as-the-basis-for-frances-secure-instant-messenger-app/

Page 168: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

https://twitter.com/_DINUM/status/1242111814168698880https://twitter.com/_DINUM/status/1243595481449717761https://twitter.com/_DINUM/status/1265272132935856133

Page 169: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

https://matrix.org/blog/2019/12/19/welcoming-mozilla-to-matrix

Page 170: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

https://matrix.org/blog/2020/05/21/welcoming-automattic-to-matrix

Page 171: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

https://matrix.org/blog/2020/05/21/welcoming-automattic-to-matrix

Page 172: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

https://matrix.org/blog/2020/05/21/welcoming-automattic-to-matrix

Page 173: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

DémoBeaker Browser,

un navigateur P2P

https://beakerbrowser.com/

Page 174: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

DémoROTI en peer to peer

https://acailly.github.io/roti/

Page 175: Le web décentralisé - acailly.github.io · foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? foo.txt ? Query Flooding

Merci

https://acailly.github.io/roti/

@AntoineCailly