Even as they have witnessed explosive growth in the last couple of years, cryptocurrencies are yet to find a suitable model to finance future growth. While cryptocurrency markets are a lucrative source of funds, their wild price swings make them unsustainable in the long run. Meanwhile, cryptocurrencies are experimenting with other ideas. Nonprofit foundations are one. But even that source is uncertain because it is dependent on the spigot of generosity from funding research and academic institutions.
Now ethereum co-founder Vitalik Buterin has come up with the idea of “rent” fees as another mechanism for funding. The idea is simple: users will pay rent fees based on the amount of time that they store their data on ethereum’s blockchain. The method uses state size to make the fee determination. Essentially, users will be required to maintain a state or minimum balance of ether in their smart contracts to avail free storage. Else, they will have to pay rent fees in order to store ether in their smart contracts.
Ethereum’s state is transaction data pertaining to each node. This data includes specifics such as the amount of ether held in a contract and number of transactions etc. Each node within ethereum’s network is required to hold this information, along with chain data that lists overall information relating to ownership and list of blocks in each chain. The latter is considered explicit data and cannot be manipulated. However, state data can be “pruned” or deleted in nodes. Even after its state data has been pruned, a node can join ethereum’s main blockchain by downloading a list of the most current list of transactions.
Buterin’s idea involves sharding or database partitioning, a concept that ethereum is expected to implement in the coming years. Partitioning of main blockchain into multiple units will make it easier to remove entries or data that a user may want stored on the blockchain. In his post, Buterin suggests that maximum acceptable state size should be per shard. The fees vary based on value of ethereum’s cryptocurrency ether in the markets.
Will It Work?
The idea outlined by Buterin is not very different from how cloud-based storage systems earn revenue. Amazon charges rent from users of its cloud systems for storing their data for certain periods of time.
The idea of charging fees to store currency on blockchain could potentially open up another revenue stream for cryptocurrencies like ethereum, which are positioning themselves as smart contract platforms for decentralized apps. As experiments with smart contract use proliferates across industries, fees could help cover costs to fund future use cases of ethereum’s blockchain. Buterin has not provided much detail about how the system will work or about the actors involved in such transactions. Sharding, which Buterin identified as a possible implementation tool, is still years away from implementation. There is also the problem associated with charging fees for a product that was essentially introduced as being free. As online publication Coindesk pointed out, fees are essentially taxes.
Cryptocurrency developer Raul Jordan made a series of tweets regarding the same issue earlier this week. According to him, the ethereum protocol has been subsidizing the cost of storage this far. “It is unreasonable that a one-time cost would mean every single node in the future would have to download a piece of state and not pay for continuous storage rent as we do in traditional cloud systems today,” he wrote.
0/ No one likes talking about rent, but we need to have this conversation. The fact that time-value of storage is not accounted for in the current Ethereum protocol is a massive problem we need to address.
— Raul Jordan (@raulitojordan) March 23, 2018
But he said that introduction of the idea in its current form to ethereum’s development community could “derail the entire system”. “Ideally we would need a way to create an abstraction for rent collection that is consistent with the ability developers have to continue experimenting,” he wrote. In simple words, this means that costs associated with downloading state data for nodes may, in some cases, prove to be prohibitive to discourage developers. An abstraction or a workaround that allows them to shoulder storage costs will make implementation easier.