What is Swarm?
Jun 30, 2021 - 5 min read
Swarm is a decentralized storage, service, and communication platform designed to deliver permissionless, censorship resistant infrastructure for the deployment of dApp code. Built on the Ethereum web3 stack, Swarm aims to provide a range of Web 3.0 services, including messaging, music and video streaming, and database hosting. Swarm’s long-term vision is to become “the operating system of the re-decentralised internet” by returning control of data to its users.
Swarm was created by Ethereum co-founder Gavin Wood, who began work on the platform’s software architecture in 2015. Supported by fellow Ethereum founder, Vitalik Buterin, Wood sought to build a Web 3.0 storage and service solution that would be censorship resistant, DDOS resistant, and offer zero downtime. Built on Ethereum, Swarm makes use of the blockchain’s security and smart-contract capabilities, and its existing ecosystem of developers. The concepts and details of Swarm are documented in great depth by Viktor Trón in the so-called Book of Swarm.
The communication and storage network that Swarm represents aims to eventually provide the base layer infrastructure for a fully decentralized internet – with digital services distributed across a vast global network of nodes. While front-end use of Swarm resembles user-experiences on the World Wide Web, the network differs from the conventional internet in the back-end, with data hosted on a peer-to-peer infrastructure rather than on centralized servers. That decentralized infrastructure is designed to be self-sustaining thanks to its incentive system: users can trade resources for network services such as data storage and distribution with payments managed by Ethereum smart contracts and powered by the native BZZ token.
Swarm’s decentralized storage system is built on the following components:
- Chunks: Data stored on Swarm is split up into smaller blocks called chunks no larger than 4KB. Chunks are identifiable via a 32-byte hash of the content they contain.
- Reference: A unique file identifier that facilitates the retrieval of data stored in chunks for clients.
- Manifest: A data structure that allows for URL-based content retrieval.
When a client requests content on Swarm, the Manifest uses the unique reference to identify the relevant data chunks so that they can be retrieved from nodes that are hosting them. Similarly, when data is uploaded to Swarm, it is split up into chunks that are distributed across nodes and assigned an identifying timestamp. The built-in BZZ incentives are managed by smart contracts and paid to nodes that make their resources available for file storage.
Swarm has built-in redundancy to ensure persistent data availability and to protect against nodes withdrawing from the network and from DDOS attacks.
The BZZ token: Swarm’s native token is BZZ. It fuels transactions on the network and serves as a reward for nodes that contribute resources.Like other stake-based blockchain governance systems, greater amounts of BZZ will confer more influence in Swarm governance votes. In June 2021, Swarm airdropped 1 million BZZ to early testnet participants, called ‘The Rise of the Bee’.
Swarm allows dApp developers to store and distribute data and content to blockchain users securely and efficiently. The Swarm base-layer architecture is designed to provide media streaming services, database services, node-to-node messaging functionality, and scalable state-channel infrastructure.
In order to encourage uptake of the network and expand its ecosystem, Swarm began offering Swarm Grant Waves in 2020. The Grant Waves offer both financial support for projects on Swarm, and mentorship for developers. Supported by the distribution of grants, Swarm has been integrated into a number of dApps, including:
Etherna: An open source decentralized video platform that focuses on content permanence, creator rewards, and resistance to censorship.
Zetaseek: A blockchain based search engine for individual users, designed for the organization of “files, links, and references” in content that has been uploaded to the Swarm network.
Scaleout: A data storage platform dedicated to end-to-end privacy and the application of DevOps technology and advanced machine learning.
Boma: A privacy-focused communication and engagement tool designed to provide event organizers with a range of services including engagement statistics, CMS functionality, galleries, and audio and video streaming.
Giveth: A decentralized fundraising platform for non-profit organizations designed to facilitate communities of donors and charities while providing full accountability and transparency.
Swarm is researching the potential for the blockchain’s storage and communication applications to be purposed towards the base layer infrastructure of its decentralized internet objective – also referred to as a ”world computer”.
In working towards that objective, the Swarm roadmap sets out a number of short term goals, including features and functionalities such as node splitting, browser support, large scale network simulations, and lightnode support.