ZombieChain Comes Alive: Can Ethereum Sidechains Save the Dapps?
Loom Network, which came up with the idea of dedicated "dappchains" for scalable decentralized apps, is embracing sharing.
That decision will cost you half a cent. Are you surethat's the right move?
If you're a gamer, decentralized applications (dapps) hold an enticing promise: you might finally be able to truly own virtual in-game items and accumulate them without worrying about a company changing the rules and taking them away. But as with other big blockchain ideas, that's not quite a reality today.
One reason is the economics of how this would work are uncertain. To commit an action to the ethereum blockchain, users need to expend gas, a unit of value that's priced in ether, the network's cryptocurrency, and that fluctuates based on how much other people are using the network at any given time.
For Loom Network, a startup specializing in applying blockchain technology to gaming dapps, that just won't do. Constant microtransactions harm user experience, even if network traffic isn't pushing up gas prices at a given moment, as happened during the recent CryptoKitties boom.
Loom co-founder James Duffy told CoinDesk in a recent interview, "there's just a mental transaction cost."
He continued:
With that problem in mind, Duffy announced Loom's newest offering – a ready-made "shared sidechain" that dapp developers can use in exchange for a monthly fee – this week. ZombieChain, as it's called, is expected to launch in a month or two.
So far, no developers have signed up to build dapps on it, but the Loom team is excited about how it advances their ideas and vision.
"ZombieChain's model more closely parallels traditional web hosting," Duffy wrote in the announcement, "where developers pay a flat monthly fee based on the resources consumed by their application, upgrading their web server and paying more as their app grows in popularity over time."
The idea of a shared sidechain, Duffy believes, has the potential to help gaming dapps achieve scale while making life easier for users and developers alike.
The alternatives, as they stand today, are: one, to house games on ethereum's main chain, with its poor user experience; or two, to build a dedicated sidechain for each game.
"Not everyone wants to do that," Duffy told CoinDesk – hence ZombieChain has come to life.
Sidestepping scalability
Broadly, sidechains have a long pedigree in cryptocurrencies, going back to Adam Back and other developers' 2014 proposal for bitcoin "pegged sidechains."
The idea is to complete transactions on smaller, nimbler chains that are later reconciled to the main blockchain – ethereum, in Loom's case. Sidechain users sacrifice some of the security and decentralization of the main chain, since they depend on a smaller number of "validators" – analogous to miners – to register their transactions.
But they gain in terms of throughput, that is, the time it takes to complete transactions.
Loom Network took this idea and introduced the concept of "application-specific sidechains" or "dappchains." Using Loom's software development kit (SDK), developers can build a dedicated sidechain to house their dapp, with ethereum serving as a secure, decentralized base layer.
Loom has already built DelegateCall, a kind of decentralized Stack Exchange, on a dappchain. In addition, two games are under development in-house, according to Duffy: one he compares to Magic: the Gathering, the other to Pokemon. The user experience, he says, is like any mobile game: "fully immersive, graphics – you actually wouldn't really know that it's running on a dappchain."
As the company's head of business development Michael Cullinan told CoinDesk in March, the Loom developer platform aims "to make it simple to make highly-scalable apps on the blockchain."
However, the company's since found that not every project wants its own dappchain – at least not in the beginning. Developers would have to set up validators to act as the nexus between the sidechain and the ethereum blockchain. Then, in order to achieve decentralization, they would have to incentivize users – if they had users – to act as validators themselves.
Many early-stage projects were looking for a simpler solution, so Loom came up with the idea of a shared dappchain. Duffy told CoinDesk: "this way, when someone launches a new application they don't know how popular it's going to be, so they can start on kind of a shared hosting plan."
If the game does take off, the developers can "fork it and run it on its own dappchain." Eventually, Duffy says, Loom may roll out multiple shared chains for different use cases: a games chain and a social media chain, for example.
The monthly fees the developers pay will depend on the cost of committing their users' data to ethereum. How developers collect money from users is up to them: donations are one possibility, as are monthly charges through a smart contract.
Reckoning with the trilemma
Designing decentralized networks involves tradeoffs, and sidechains are no exception. Ethereum founder Vitalik Buterin described these tradeoffs as a trilemma, in which three different priorities are in tension: decentralization, security, and scalability.
Duffy recognizes this fact, and argues that ZombieChain is a kind of "middle ground."
First, it's important to note that Loom Network's focus is on applications that need high levels of throughput: decentralized games and social networks. And Duffy argues that these use cases "don't really need that high level of decentralization that you need on ethereum."
On a decentralized social network, he says:
For that reason, Loom Network has opted to base its sidechains – including ZombieChain – on delegated proof of stake (DPoS), a consensus algorithm in which the network elects "validators" to serve in place of miners. How many validators is up to the developer: the higher the number, the slower – but more decentralized – the network.
As for the shared ZombieChain, Duffy says the number of validators hasn't been decided. He notes, though, that "in the beginning, it's fully centralized because we're running all the validators. Then in the future we want to open it up to let other people run validators."
To be clear, that's the case with any new sidechain: until a user base develops, and some of those users are willing to serve as validators, the chain is centralized in the hands of its creator.
Down the line, therefore, ZombieChain can actually help to ensure that new projects are to some degree decentralized and scalable from the outset. Rather than setting up on the slow and costly ethereum mainnet, or spinning up a new centralized dappchain, they can join ZombieChain.
Even projects that are already set up on mainnet, says Duffy, "could very easily port that same application to ZombieChain," adding:
As for the third leg of the trilemma, security, Duffy does not appear to be worried. "It's really important to have that decentralized base layer of ethereum," he says, "because then you can use it like the high court.
The mechanism for doing that, he continues, is plasma cash, which allows users to store valuable data – ether, for example – on the main blockchain, while still being able to trade it on the sidechain.
"If the sidechain did something dishonest," he says, "you could contest it on mainnet and you would be able to withdraw your assets back to mainnet."
STORY CONTINUES BELOW
For now, ZombieChain is just an idea, but it has the potential to allow new projects to deploy their dapps without sacrificing too much in terms of either scalability or decentralization.
Game image via Medium