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.

Want to hear more about the Arweave decentralised web? Come and join us in Berlin for Dezentral and Kiev for Blockchain UA this month, where Arweave CEO Sam Williams will be speaking!

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.

Querying

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).

A common pattern we anticipate with the Arweave’s decentralised web is that web applications (bundled HTML, CSS and Javascript) will be stored on the Arweave, and they will then make queries to ArQL nodes, retrieving application data that is stored on the weave, as necessary. Users will then be able to post data onto the weave, from their web apps, using their wallet and an Arweave node’s HTTP service. This pattern allows the developer to build an entirely decentralised application easily, with their normal programming languages and tools.

Accessibility

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.

Incentives

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.

A novel data storage blockchain protocol enabling a permanent serverless web and creating truly permanent data storage for the first time.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store