master
text 53 lines 1.64 KB
Raw
1
2 IPFS -- Inter-Planetary File system
3
4 IPFS is a global, versioned, peer-to-peer filesystem. It combines good ideas
5 from Git, BitTorrent, Kademlia, SFS, and the Web. It is like a single bit-
6 torrent swarm, exchanging git objects. IPFS provides an interface as simple
7 as the HTTP web, but with permanence built-in. You can also mount the world
8 at /ipfs.
9
10 IPFS is a protocol:
11 - defines a content-addressed file system
12 - coordinates content delivery
13 - combines Kademlia + BitTorrent + Git
14
15 IPFS is a filesystem:
16 - has directories and files
17 - mountable filesystem (via FUSE)
18
19 IPFS is a web:
20 - can be used to view documents like the web
21 - files accessible via HTTP at `http://ipfs.io/<path>`
22 - browsers or extensions can learn to use `ipfs://` directly
23 - hash-addressed content guarantees the authenticity
24
25 IPFS is modular:
26 - connection layer over any network protocol
27 - routing layer
28 - uses a routing layer DHT (kademlia/coral)
29 - uses a path-based naming service
30 - uses BitTorrent-inspired block exchange
31
32 IPFS uses crypto:
33 - cryptographic-hash content addressing
34 - block-level deduplication
35 - file integrity + versioning
36 - filesystem-level encryption + signing support
37
38 IPFS is p2p:
39 - worldwide peer-to-peer file transfers
40 - completely decentralized architecture
41 - **no** central point of failure
42
43 IPFS is a CDN:
44 - add a file to the filesystem locally, and it's now available to the world
45 - caching-friendly (content-hash naming)
46 - BitTorrent-based bandwidth distribution
47
48 IPFS has a name service:
49 - IPNS, an SFS inspired name system
50 - global namespace based on PKI
51 - serves to build trust chains
52 - compatible with other NSes
53 - can map DNS, .onion, .bit, etc to IPNS