IPFS
The InterPlanetary File System (IPFS) is a peer-to-peer content-addressed file system in which files are addressed by the hash of their content rather than by server location. Designed by Juan Benet and released by Protocol Labs in 2015, it builds files as Merkle DAGs and locates them via a distributed hash table.
IPFS (the InterPlanetary File System) is a peer-to-peer, Content-Addressable Storage distributed file system. Files are not retrieved by URL pointing to a specific server but by a content identifier (CID) derived from the Cryptographic Hash Function of the file's contents, so any peer holding the data can serve it. IPFS was designed by Juan Benet, who published the IPFS whitepaper in July 2014 and founded Protocol Labs to develop it. The first public implementation was released in January 2015. Internally, files are chopped into blocks (typically 256 KiB to 1 MiB), each block is hashed, and the blocks are linked into a Merkle Tree whose root CID names the whole file or directory. CIDs use the multihash format, which prefixes the digest with codes identifying the hash algorithm (commonly SHA-256) and length, so the format can evolve without breaking existing addresses. CIDs may also encode a multicodec indicating how the bytes should be interpreted. Peers locate content by querying a distributed hash table (based on Kademlia) that maps CIDs to peers known to host them, then exchange blocks using the Bitswap protocol. Because every block is self-verifying — its hash is its name — data can be fetched from untrusted peers without loss of integrity. IPFS is used for decentralized websites, NFT metadata, scientific dataset distribution, and as the storage layer for related projects such as Filecoin, an incentivized storage network also from Protocol Labs.