Skip to content

Instantly share code, notes, and snippets.

@zelig
Created October 12, 2015 23:57
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save zelig/0d4e83b0d5c6591c66ad to your computer and use it in GitHub Desktop.
Save zelig/0d4e83b0d5c6591c66ad to your computer and use it in GitHub Desktop.
Swarm is a distributed storage platform and content distribution service, a native base layer service of the ethereum web 3 stack. The primary objective of Swarm is to provide a sufficiently decentralized and redundant store of Ethereum's public record, in particular to store and distribute Đapp code and data as well as block chain data. From an economic point of view, it allows participants to efficiently pool their storage and bandwidth resources in order to provide the aforementioned services to all participants.
From the end user's perspective, Swarm is not that different from WWW, except that uploads are not to a specific server. The objective is to peer-to-peer storage and serving solution that is DDOS-resistant, zero-downtime, fault-tolerant and censorship-resistant as well as self-sustaining due to a built-in incentive system which uses peer to peer accounting and allows trading resources for payment. Swarm is designed to deeply integrate with the devp2p multiprotocol network layer of Ethereum as well as with the Ethereum blockchain for domain name resolution, service payments and content availability insurance.
We demonstrate how Swarm is used for hosting and serving Đapps and off-chain contract metadata (for code verification and natspec confirmation), streaming video, browsing history. We walk through the architecture and design principles; elaborate on technicalities of routing and incentivisation, then discuss features on the roadmap, including using swarm to store the Ethereum blockchain and state as well as using encryption to allow private content.
@cobordism
Copy link

Another point to make that does not focus on the technicalities of Swarm, but rather on its place within the ecosystem is the following:
If it is possible to earn (small) amounts of ether by offering hard drive space and bandwidth, then this lowers the hurdle of entry for a lot of people (similar to mining and/or faucets in early bitcoin days). It allows you to join in without having to mess with fiat-crypto conversion right from the start.
This effect should not be underestimated and I think it would be beneficial to highlight it at some point in the presentation. It show why a good implementation of swarm is important for the entire project and isn't just a desirable add-on.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment