Building the Decentralised Web — Part Two: The Components
This blog post is the second in a series about Arweave’s plans to build a decentralised, immutable web. If you would like to read the first part, click here. In this second instalment of the series, we will be discussing the necessary components of the decentralised web, and how the Arweave project is attempting to build them.
Data Storage and Retrieval
The web as we understand it today is largely a system of data storage and retrieval. A publisher stores data onto a server that then feeds this information back to users that request it. The user’s web browser then formats and displays the data, where it is then viewed by the user before they move onto another page, repeating the cycle. As mentioned in our first blog post, the current web is increasingly centralised — controlled and governed by selected but unelected groups. The Arweave, through mechanisms outlined in our lightpaper, can already achieve the data storage and retrieval functions of a web in a completely decentralised manner: data is submitted to miners on the Arweave, who come to consensus about its contents and then the miners store said data in a block.
The fee submitted by the publisher is dispersed over time to miners in the network that maintain copies of the data and serve them to users’ browsers on request. Rather than just emulating the existing web in a decentralised way, the Arweave solves one of the major problems identified in part one of this series — mutability of information availability.
The Arweave uses cryptography and decentralised incentives to ensure that all of the data in the Arweave is available in an unmodified form, all of the time. In short: we replace the useless energy expenditure associated with Bitcoin with valuable storage and serving of data.
The vast majority of websites on the internet that are not simple data storage and retrieval mechanisms, under the hood, are dynamic database applications that query and return data to the user in a styled format. Facebook, Twitter, Medium, etc, all follow this basic principle. In order to support these kinds of applications in a totally decentralised manner, Arweave nodes optionally expose an ArQL service that user applications can query to find and return data from the blockweave (for example, tweets, blogs, and other user data).
In order for the decentralised web to be adopted by the mainstream, wide, simple accessibility will be key. In order to address this, we have engineered the Arweave using standard web protocols, accessible in any modern browser. When a link on the Arweave network is created, it will always be available, and will always serve the same data to you.
In order to allow users who have yet to install the Arweave web extension access to the data held on the weave, we will be providing a special domain that will forward users to an Arweave node serving the data. When users with our web extension visit one of these links, they will automatically be transferred by their browser straight to an Arweave node — avoiding the point of centralisation. This means that users can be introduced to the ecosystem of the decentralised web without having to install or change anything about their setups.
In order for data to remain freely accessible to everyone somebody, somewhere must have an incentive to serve it. In the case of the current web, Google, Facebook, etc, are incentivised to store, perform queries on, and return your data, because they can use your personal data to generate revenue. In the decentralised web on the Arweave, we have taken the ‘proof of work’ system at the core of Bitcoin and Ethereum, and modified it so that it has a positive utility: the serving of web pages. This system provides Arweave miners with a selfish incentive to store your data without compromising your privacy, solving one of the key issues described in part one of this series. Encrypted data stored on the Arweave is accessible to you and only you — and the people serving you the data are incentivised to give it to you.
While all of these components will be necessary for the decentralised web, they will likely not be sufficient alone. The Arweave project intends to be adaptive to the emergent needs and requirements of our new ecosystem as they arrive.
If you are interested in hearing more about the Arweave’s decentralised web make sure to subscribe to our Medium blog here for the next instalment in this series, and other updates and news.