Permissionless and private
Censorship resistant and private by design, Swarm nodes will provide leak proof messaging and private, unfiltered access to data via a distributed network.
Leak-proof messaging made real
The third element of the Ethereum trinity, Whisper, has also been incorporated into Swarm as PSS, bringing the possibility of truly leak proof messaging for full nodes.
Built for builders
With powerful primitives such as Single Owner Chunks and Postal Service over Swarm, the Swarm network provides a fertile basis for you to build never before seen completely decentralised applications.
Swarm exists so the internet can again be decentralised. Swarm’s vision is to become the operating system of the re-decentralised internet. It provides a scalable and self-sustaining infrastructure for a supply-chain economy of data.
Scalable with zero hosting costs
Cost of hosting stays same no matter if the content or dapp is accessed by one person or one million due to cryptoeconomic incentives of the network. No more VCs or monetisation needed in order to support popular dapps or content.
Since anyone can contribute, Swarm establishes a system for important data commons such as Open Street Maps data to be collectively funded by the public.
How it works
Swarm provides a native data storage capability that plays nice with the blockchain, enabling EVM based smart contracts to parse and verify data structures that are contained within its distributed DISC.
Nodes use Kademlia routing to arrange themselves in a regular network that gives each node responsibility for storing and forwarding chunks based on the addressing scheme. This means that all nodes can access all of the data in the swarm.
When data is uploaded to the swarm, it is split into 4kb chunks and distributed using the Kademlia routing protocol to their closest neighbourhood whose nodes are responsible for storing them. This distributes data evenly across the swarm network.
When each full node joins the swarm it becomes part of a global hard drive - chunks in its radius of responsibility are synced from nodes in each node’s radius. This ensures each node is able to serve up chunks that are close to its address when requested by the retrieval protocol.
The retrieval protocol routes each node’s request for chunks to the node closest to that chunk’s neighbourhood. In this way, every node in the swarm is able to access chunks from their neighbourhood of responsibility.