The InterPlanetary File System (IPFS) is a
protocol
Protocol may refer to:
Sociology and politics
* Protocol (politics), a formal agreement between nation states
* Protocol (diplomacy), the etiquette of diplomacy and affairs of state
* Etiquette, a code of personal behavior
Science and technolog ...
,
hypermedia and
file sharing
File sharing is the practice of distributing or providing access to digital media, such as computer programs, multimedia (audio, images and video), documents or electronic books. Common methods of storage, transmission and dispersion include r ...
peer-to-peer
Peer-to-peer (P2P) computing or networking is a distributed application architecture that partitions tasks or workloads between peers. Peers are equally privileged, equipotent participants in the network. They are said to form a peer-to-peer ...
network for storing and sharing data in a
distributed file system
A clustered file system is a file system which is shared by being simultaneously mounted on multiple servers. There are several approaches to clustering, most of which do not employ a clustered file system (only direct attached storage fo ...
. IPFS uses
content-addressing to uniquely identify each file in a
global namespace A Global Namespace (GNS) is a heterogeneous, enterprise-wide abstraction of all file information, open to dynamic customization based on user-defined parameters. This becomes of particular importance as multiple network based file systems prolife ...
connecting IPFS
hosts
A host is a person responsible for guests at an event or for providing hospitality during it.
Host may also refer to:
Places
*Host, Pennsylvania, a village in Berks County
People
*Jim Host (born 1937), American businessman
*Michel Host ( ...
.
IPFS can among others replace the location based hypermedia server protocols
and
to distribute the
World Wide Web
The World Wide Web (WWW), commonly known as the Web, is an information system enabling documents and other web resources to be accessed over the Internet.
Documents and downloadable media are made available to the network through web ...
.
[Youtube]
Stanford Seminar - "IPFS and the Permanent Web"- Juan Benet of Protocol Labs
Quote: "...The InterPlanetary File System (IPFS) is a new hypermedia distribution protocol, to complement--and eventually replace--HTTP. It improves the security, performance, operation modes, and data friendliness of the Web. In particular, it yields a powerful new model, where websites and web applications are decoupled from origin servers, are distributed trustlessly through the network, and are encrypted, authenticated, and executed safely..."
Design
IPFS allows users to host and receive content in a manner similar to
BitTorrent. As opposed to a centrally located server, IPFS is built around a decentralized system of user-operators who hold a portion of the overall data, creating a resilient system of file storage and sharing. Any user in the network can serve a file by its content address, and other peers in the network can find and request that content from any node who has it using a
distributed hash table
A distributed hash table (DHT) is a distributed system that provides a lookup service similar to a hash table: key–value pairs are stored in a DHT, and any participating node can efficiently retrieve the value associated with a given key. The ...
(DHT).
In contrast to BitTorrent, IPFS aims to create a single global network. This means that if two users publish a block of data with the same
hash, the peers downloading the content from "user 1" will also exchange data with the ones downloading it from "user 2". IPFS aims to replace protocols used for static webpage delivery by using gateways which are accessible with
HTTP
The Hypertext Transfer Protocol (HTTP) is an application layer protocol in the Internet protocol suite model for distributed, collaborative, hypermedia information systems. HTTP is the foundation of data communication for the World Wide We ...
. Users may choose not to install an IPFS client on their device and instead use a public gateway. A list of these gateways is maintained on the IPFS GitHub page.
History
IPFS was created by
Juan Benet
Juan Benet (7 October 1927 – 5 January 1993) was a Spanish novelist, dramatist and essayist who also worked as a civil engineer.
Early life
Benet was born in Madrid. At the start of the Spanish Civil War, his father was killed, and he left for ...
, who later founded Protocol Labs in May 2014.
IPFS was launched in an alpha version in February 2015, and by October of the same year was described by
TechCrunch
TechCrunch is an American online newspaper focusing on high tech and startup companies. It was founded in June 2005 by Archimedes Ventures, led by partners Michael Arrington and Keith Teare.
In 2010, AOL acquired the company for approximately $ ...
as "quickly spreading by word of mouth."
Applications
*
Filecoin is an IPFS-based
cooperative storage cloud.
*
Cloudflare
Cloudflare, Inc. is an American content delivery network and DDoS mitigation company, founded in 2009. It primarily acts as a reverse proxy between a website's visitor and the Cloudflare customer's hosting provider. Its headquarters are in Sa ...
runs a distributed web gateway to simplify, speed up, and secure access to IPFS without needing a local node.
* Microsoft's
self-sovereign identity
Self-sovereign identity (SSI) is an approach to digital identity that gives individuals control over the information they use to prove who they are to websites, services, and applications across the web. Without SSI, individuals with persistent ...
system,
Microsoft ION
Microsoft ION is Microsoft's self-sovereign identity system. It builds on the Blockchain, Bitcoin blockchain and IPFS through a Sidetree-based Decentralized identifiers, DID network.
References
External links
* https://techcommunity.micr ...
, builds on the Bitcoin blockchain and IPFS through a Sidetree-based
DID network.
*
Brave uses Origin Protocol and IPFS to host its decentralized merchandise store and, in 2021, added support into their browser.
*
Opera
Opera is a form of theatre in which music is a fundamental component and dramatic roles are taken by singers. Such a "work" (the literal translation of the Italian word "opera") is typically a collaboration between a composer and a libr ...
for Android has default support for IPFS, allowing mobile users to browse links to access data on the IPFS network.
Superhighway84is an IPFS-based Usenet like discussion system
Anti censorship
* The
Catalan independence referendum, taking place in September–October 2017, was deemed illegal by the
Constitutional Court of Spain and many related websites were blocked. Subsequently, the
Catalan Pirate Party mirrored the website on IPFS to bypass the
High Court of Justice of Catalonia
The High Court of Justice of Catalonia ( ca, Tribunal Superior de Justícia de Catalunya, TSJC) is the highest body and last judicial instance of the Spanish judiciary in Catalonia. Unlike the Parliament of Catalonia (legislative branch) or the ...
order of blocking.
* During the
block of Wikipedia in Turkey
From 29 April 2017 to 15 January 2020, the online encyclopedia Wikipedia was blocked in Turkey. On 29 April 2017, Turkish authorities blocked online access to all its language editions throughout the country. The restrictions were imposed b ...
, IPFS was used to create a mirror of Wikipedia, which allowed access to archived static Wikipedia content despite the ban. The mirror has now been expanded to more languages, such as
English
English usually refers to:
* English language
* English people
English may also refer to:
Peoples, culture, and language
* ''English'', an adjective for something of, from, or related to England
** English national ide ...
,
Ukrainian
Ukrainian may refer to:
* Something of, from, or related to Ukraine
* Something relating to Ukrainians, an East Slavic people from Eastern Europe
* Something relating to demographics of Ukraine in terms of demography and population of Ukraine
* So ...
,
Russian
Russian(s) refers to anything related to Russia, including:
*Russians (, ''russkiye''), an ethnic group of the East Slavic peoples, primarily living in Russia and neighboring countries
*Rossiyane (), Russian language term for all citizens and peo ...
,
Arabic
Arabic (, ' ; , ' or ) is a Semitic language spoken primarily across the Arab world.Semitic languages: an international handbook / edited by Stefan Weninger; in collaboration with Geoffrey Khan, Michael P. Streck, Janet C. E.Watson; Walter ...
, and
Chinese
Chinese can refer to:
* Something related to China
* Chinese people, people of Chinese nationality, citizenship, and/or ethnicity
**''Zhonghua minzu'', the supra-ethnic concept of the Chinese nation
** List of ethnic groups in China, people of ...
. A collection of the mirrors can be viewed at https://ipfs.kiwix.org/ or by using its CID at a
IPFS Gateway
Malware
Phishing
Phishing is a type of social engineering where an attacker sends a fraudulent (e.g., spoofed, fake, or otherwise deceptive) message designed to trick a person into revealing sensitive information to the attacker or to deploy malicious softwa ...
attacks have also been distributed through
Cloudflare
Cloudflare, Inc. is an American content delivery network and DDoS mitigation company, founded in 2009. It primarily acts as a reverse proxy between a website's visitor and the Cloudflare customer's hosting provider. Its headquarters are in Sa ...
's IPFS gateway since July 2018. The phishing scam HTML is stored on IPFS, and displayed via Cloudflare's gateway. The connection shows as secure via a Cloudflare
SSL certificate.
The IPStorm
botnet
A botnet is a group of Internet-connected devices, each of which runs one or more bots. Botnets can be used to perform Distributed Denial-of-Service (DDoS) attacks, steal data, send spam, and allow the attacker to access the device and its conn ...
, first detected in June 2019, uses IPFS so it can hide its command-and-control amongst the flow of legitimate data on the IPFS network. Security researchers had worked out previously the theoretical possibility of using IPFS as a botnet command-and-control system.
See also
Design and Evaluation of IPFS: A Storage Layer for the Decentralized Web*
Content-addressable storage
Content-addressable storage (CAS), also referred to as content-addressed storage or fixed-content storage, is a way to store information so it can be retrieved based on its content, not its name or location. It has been used for high-speed storage ...
*
Dat (software)
Dat () is a data distribution tool with a version control feature for tracking changes and publishing data sets. It is primarily used for data-driven science, but it can be used to keep track of changes in any data set. As a distributed rev ...
*
Distributed file system
A clustered file system is a file system which is shared by being simultaneously mounted on multiple servers. There are several approaches to clustering, most of which do not employ a clustered file system (only direct attached storage fo ...
*
Freenet
Freenet is a peer-to-peer platform for censorship-resistant, anonymous communication. It uses a decentralized distributed data store to keep and deliver information, and has a suite of free software for publishing and communicating on the Web ...
*
GNUnet
GNUnet is a software framework for decentralized, peer-to-peer networking and an official GNU package. The framework offers link encryption, peer discovery, resource allocation, communication over many transports (such as TCP, UDP, HTTP ...
*
Mnet (peer-to-peer network) aka MojoNation
*
ZeroNet
ZeroNet is a decentralized web-like network of peer-to-peer users, created by Tamas Kocsis in 2015, programming for the network was based in Budapest, Hungary; is built in Python; and is fully open source. Instead of having an IP address, site ...
References
External links
*
Cloudflare public IPFS gateway
{{Authority control
Application layer protocols
Computer-related introductions in 2015
Distributed data storage
Distributed file systems
File transfer protocols
Free network-related software
Free software programmed in Python
Internet privacy software
Internet protocols
Network protocols
Peer-to-peer computing