Arweave: Low Cost Permanent On-Chain Storage On A Scalable Blockchain
Blockchain, since when Bitcoin was born has been proposed as the solution to ever more problems. One of those has been decentralized and censorship resistant file storage. Until now, on chain storage has been quite unpractical.
That was mostly because of how costly such a thing would be too high for it to be worth it if not for only some exceptional cases.
A workaround is to store a hash of the file instead, in order to be able to verify the file integrity but the file itself is still vulnerable to being lost. But that’s about to change.
Arweave is a pretty new project which is launching its mainnet in a couple days.
A surprising thing about this blockchain (which is actually a blockweave, but more about that later) is how simple (at least conceptually) the innovations that this project implements are. That is probably part of why they appear so effective.
Let’s start talking about the project and its innovations in more detail.
Arweave innovations
The traditional blockchain architecture is not suitable for what arweave is meant to do. That meant that some things needed to change. This leads us to the four main innovations of this project: Blockweave, PoA (Proof Of Access), Wildfire and Blockshadowing.
Lets explain what they are and why they are so much needed for a blockchain which is suitable for cost effective permanent file storage.
Blockweave
Blockchains require every node to store the entire chain in order to validate transactions.
A blockweave, which is the name given to the Arweave chain architecture, doesn’t require that.
That’s possible thanks to two simple but quite effective innovations: the block hash list and the wallet list. As the name suggests, the first one contains a list of all the hashes of all previous blocks, while the second one contains a list of all active wallets in the system.
This lets new nodes just download the current block, the lists and start immediately verifying transactions.
That also makes it possible to confirm a new transaction associated with a wallet without having to find the previous transaction associated with the same address.
It only needs to be verified that the transaction has been signed by the owners private key.
In order to prevent recall block forging attacks, the hash of the blockhash list is distributed with every new block.
Proof Of Access
PoA is a new consensus algorithm.
Arweave is actually a hybrid PoA PoW chain. PoA needs nodes to prove that they have access to a particular past block, which is randomly chosen. This is how it works in more detail:
The transactions in the recall block are hashed alongside those found in the current block in order to generate the next one. When a miner finds an appropriate hash, they distribute the new block along with the recall block to other members of the network.
This allows the nodes without a copy of the recall block to verify the block, and it also spreads the data across nodes.
This is a well needed incentive to store all blocks in a system in which you are not required to. Having access to rare blocks would lead to a higher reward, so the less copies of a block there are, the more the incentive.
Wildfire
A big part of Arweave is about ensuring that all the data is also free to access. That is one of the things that wildfire ensures, but not the only one.
Wildfire creates a ranking system local to each node that determines how quickly new blocks and transactions are distributed to peers.
This ranking is bases on how quickly those peers respond to requests and accept data from others. The poorly performing peers are blacklisted from the network altogether.
This leads to a financial incentive for peers to stay well positioned in each other’s rankings so they can spend the largest amount of time efficiently mining.
An even more interesting consequence is, to cite the lightpaper:
“It creates a network topology that adapts to the most efficient routes for global distribution, as connections that allow fast transfer of new data around the system are preferred. In practice, the wildfire mechanism builds a network topology that maps the underlying physical connection substrate of the internet, adapting to the changes in its architecture over time.”
Blockshadowing
One of the main problems with blockchains is how inefficient and difficult to scale they are.
One reason why such problems arise is that when a block is mined each entire block is distributed to every node, no matter how much of the block data a node already possesses. This leads to enormous data waste and significantly slows down the throughput.
Blockshadowing solves this problem by partially decoupling transactions from blocks, and only sending between nodes a minimal quantity of data that allows peers to reconstruct a full block, instead of transmitting the full block itself.
The data which is sent is called a blockshadow and contains a hash of the wallet list and hash list, and in place of the transactions inside a block, only contain a list of transaction hashes.
If a block already has the data of all the transactions can create a full block out of this.
To facilitate this system, nodes will also immediately share transactions with one another, but only attempt to place transactions inside a block once they have a high certainty that other nodes in the network also have the transaction.
The blockshadowing is a big part of why the lightpaper cites 5,000 transactions per second as an optimistic estimate on a 100mbps network.
Governance
Airweave also has some sort of democratic governance system which is meant to censor data that the community deems as unacceptable.
This system is called “Democratic Content Policy” and consists of each node maintaining an optional blacklist, for example, containing the hashes or substrings of certain data that it doesn’t wish to store.
Files referred to in the blacklist won’t ever be stored by the node.
What is more interesting is that if a file is banned by more than half of the nodes then it is automatically banned by the whole network.
Apps on the Arweave platform
The Arweave network supports DAPPsbuilt using the REST API.
There are four different DAPP architectures described in the lightpaper: Client-Server, Serverless, Event Based, Trustless and provable.
Client-Server
This architecture resemble traditional networked apps (both web apps and native applications).
The main difference is that the server that is used is “Arweave enabled” and is able to read and write data on the blockweave.
Those servers, obviously, will spend AR tokens when they write data.
Serverless
Applications can be hosted on the weave itself.
Those can be accessed by an Arweave enabled browser and can be developed as standard frontend web applications (using HTML, CSS and JS).
But a quite interesting idea is cited by the team:
“If the client’s native application included an interpreter/parser for different languages such as LLVM bytecode or scripting languages like Python, they could run on the client and perhaps benefit from the same upgradability as web applications.”
A quite interesting concept nonetheless. That’s not all, the lightpaper explains:
“These applications will also be able to write persistence and provable state to the network.”
Event based
Developers can build on top of Arweave and listen for incoming data using the REST API. When events are triggered the listening application will fire the appropriate function call.
Trustless and provable
The amount of data that can be cheaply stored on chain and then quickly accessed for free opens many possibilities. One of which is storing provably fair runtime code on the weave.
Using the transaction ID of the content the client can also verify the payload prior to computation and be guaranteed that the code is genuine (that it is the same code that other machines are running).
Token
Arweave is a new protocol designed to provide low-cost, permanent data storage. The project’s native token is AR token, which will be required for storing information on the platform.
All payments made by Arweave users are in AR tokens; their purpose is to reward miners for their efforts to store and maintain user data. Following the official announcement of an ICO, Arweave will also implement a native wallet where all users can store their AR tokens.
At the backbone of Arweave lies a critical feature designed for developers.
Its purpose of to help them build applications that can interact with the available data provided by the network.
The apps will feature multiple functions, starting from immutable, decentralized social networks all the way to news aggregators and discussion websites.
However, to perform the above-mentioned actions and be able to submit data to the weave, AR tokens are required.
An Arweave token sale is planned for the month of June. The team at Arweave plans to raise $650k in the upcoming public sale.
Token economics:
Total Tokens: 66,000,000 ( 11,000,000 for mining and 55,000,000 for genesis)
Tokens Available in all Token Sales: 38.5%
AR Token price: 1 AR = $ 0.74 (£0.55) 1 AR = £0.44 in private sale
Total Hardcap: $8.7 million (includes all sales private and public)
The whitelist has now closed and unless you completed the proof of interest form you can no longer take part in the sale.
Team
The team behind Arweave is rather young and not that experienced with conducting an ICO.
Initially launched in 2017 as Archain, the team behind the project announced on Medium that they’re changing the name to Arweave in order to set themselves apart from projects with similar names, such as Achain and Rchain.
As far as the people behind an upcoming ICO with great chances in creating the world’s first permanent data storage platform, Arweave is made up of:
Sam Williams: CEO and co-founder is Computer Science, PhD candidate; CEO & Co-founder of Minimum Spanning technologies, Assistant Lecturer at the University of Kent. Although new to the Blockchain startup scenario, his background in decentralized system design could potentially make Arweave become a reality.
William Jones: Co-Founder & CTO with a PhD in Computer Science at the University of Kent; CTO & Co-founder of Minimum Spanning Technologies, Assistant Lecturer at University of Kent
India Raybould: CCO in charge of coordinating the company and helping the team deliver an exceptional service and product.
Platform development team: project senior developer is Kyle Beckles, former PHP dev at boohoo.com.
Still in its early stages, the Arweave advisory board is made up influential entrepreneurs, crypto investors, mentors and advisors with vast experience in the startup ecosystem and Blockchain technology.
Jeremy Epstein: CEO of Never Stop Marketing; 20 years of experience in international marketing with a focus on making innovative technologies go mainstream. Former adviser to IOTA and other related cryptocurrency projects.
Bruno Meireles de Sousa: Advisor with 20 years of experience in the global startup scenario and skilled business leader.
Julian Lenz: Serial entrepreneur (marketing & technology companies), angel investor, crypto investor and Techstars mentor.
Rob Johnson: Techstars Mentor, Managing Director at Techstars Berlin; co-founder of Makers Academy
Fabian Dudek: Techstars Mentor, entrepreneur and investor; former CEO and founder of Nestpick.
Christian Eggert: Techstars Mentor, tech entrepreneur & product advisor
Analysis of the project
One of the most surprising things about this project is that the mainnet is already going online in one day and that the tokens are being released as native tokens directly, without an ERC20 stage involved.
This is part of the reason why I believe this project deserves our attention and, probably, also our money.
The alpha testnet has launched last year in November.
Those tokens have value beyond speculation. To strengthen the ecosystem, it looks that they’ve already started arranging partnerships.
Arweave recently closed a deal with Shelf.Network to help with the further development of their data storage layer.
Also, the project has teamed up with Charite to work on the creation of a Raw Data Journal and try to solve the reproducibility crisis within their blockweave.
There’s a REST API available as well, aimed at developers who wish to start building projects using a programming language of their choice.
This is a project with a lot of potential and big ambitions. Whoever might like to read the Arweave lightpaper can find it on their website.
✅ @cryptocises, I gave you an upvote on your first post! Please give me a follow and I will give you a follow in return!
Please also take a moment to read this post regarding bad behavior on Steemit.
Coins mentioned in post: