Skip to content
Permalink
Branch: master
Find file Copy path
Find file Copy path
1 contributor

Users who have contributed to this file

62 lines (47 sloc) 2.7 KB

IPFS - The Permanent Web

The InterPlanetary File System (IPFS) is a new hypermedia distribution protocol, addressed by content and identities. IPFS enables the creation of completely distributed applications. It aims to make the web faster, safer, and more open.

IPFS is a peer-to-peer distributed file system that seeks to connect all computing devices with the same system of files. In some ways, IPFS is similar to the Web, but IPFS could be seen as a single BitTorrent swarm, exchanging objects within one Git repository. In other words, IPFS provides a high throughput content-addressed block storage model, with content-addressed hyperlinks. This forms a generalized Merkle DAG, a data structure upon which one can build versioned file systems, blockchains, and even a Permanent Web. IPFS combines a distributed hashtable, an incentivized block exchange, and a self-certifying namespace. IPFS has no single point of failure, and nodes do not need to trust each other.

For more knowledge on what IPFS is and how it works, see:

Summary

IPFS is a protocol:

  • defines a content-addressed file system
  • coordinates content delivery
  • combines Kademlia + BitTorrent + Git

IPFS is a filesystem:

  • has directories and files
  • mountable filesystem (via FUSE)

IPFS is a web:

  • can be used to view documents like the web
  • files accessible via HTTP at http://ipfs.io/<path>
  • browsers or extensions can learn to use ipfs:// directly
  • hash-addressed content guarantees authenticity

IPFS is modular:

  • connection layer over any network protocol
  • routing layer
  • uses a routing layer DHT (kademlia/coral)
  • uses a path-based naming service
  • uses bittorrent-inspired block exchange

IPFS uses crypto:

  • cryptographic-hash content addressing
  • block-level deduplication
  • file integrity + versioning
  • filesystem-level encryption + signing support

IPFS is p2p:

  • worldwide peer-to-peer file transfers
  • completely decentralized architecture
  • no central point of failure

IPFS is a cdn:

  • add a file to the filesystem locally, and it's now available to the world
  • caching-friendly (content-hash naming)
  • bittorrent-based bandwidth distribution

IPFS has a name service:

  • IPNS, an SFS inspired name system
  • global namespace based on PKI
  • serves to build trust chains
  • compatible with other NSes
  • can map DNS, .onion, .bit, etc to IPNS
You can’t perform that action at this time.