Terrae Game Journal |12| Our Strategy On Scalability Problems

Agus Caccia
TerraeGame
Published in
4 min readSep 12, 2019

After having introduced you about what the blockchain is and why we built the game within this technology, now we need to talk about problems. Blockchains have a huge problem and is related with scalability. While visa is capable of processing up to 25000 transactions per second, bitcoin barely processes 10 TPS and ethereum theoretically can reach 25 TPS. Didn’t we say that blockchain was going to revolutionize the financial world, the technological world and especially the world of games? How the hell will we produce a game that records all its operations in blockchain to which potentially thousands of players can connect, and all of them are fighting, trading and communicating with high frequency? How will we process thousands of transactions if ethereum is not able to process even 25?

We want to tell you that we have a solution for this problem. The strategy lies in a solution with a high technical and technological bakground developed by Skale Labs: elastic sidechains as intermediate execution layers between the players and the blockchain.

What is Skale?

Skale is an Ethereum-compatible network with a leaderless consensus designed to run on an uncapped number of independent nodes, each of which will be providing resources to multiple high performance decentralized elastic sidechains.

Skale’s modular protocol is one of the first of its kind to allow developers to easily provision highly configurable sidechains, which provide the benefits of decentralization without compromising on computation, storage, or bandwidth.

Skale’s mission is to make it quick and easy to set up a cost-effective, high-performance sidechain that runs full-state smart contracts. They aim to deliver a performant experience to developers that offers speed and functionality without giving up security or decentralization.

Execution Layers

We’ll tell you why we’ll use Elastic SideChains and not the other execution layers, explaining the functions of each one.

Elastic SideChains:

Skale is pioneering a new category within the Execution Layer called Elastic Sidechains.

Elastic Sidechains are each comprised of ‘virtualized subnodes’ which run on ‘nodes’ in the network. Virtualized subnodes are partitions of these nodes (run by validators) in the network and participate in the network on an Elastic Sidechain basis. In this way, each validator is able to run multiple Elastic Sidechains with their node, simultaneously. With this partitioning of node resources into virtualized subnodes and random appointment of these virtualized subnodes to Elastic Sidechains, chances of collusion amongst nodes are greatly mitigated throughout the network.

Elastic Sidechains are truly decentralized while keeping the UX advantages of traditional sidechains — such as easy setup and low-maintenance for devs, as well as zero friction experience for end users who are interacting with the chain.

Another critical advantage of Elastic Sidechains is that they’re configurable so that developers can select criteria specific to their needs. Criteria can include size of chain, required storage, speed, additional security guarantees, etc. These needs can be adjusted to fit their business requirements and optimize cost.

When creating a sidechain, the validators which participate in the network are randomly assigned (in the Skale Network via the Skale Manager on Ethereum) from a prospective validator pool. This prospective validator pool is comprised of the various nodes in the network that have availability to participate in additional sidechains.

The security advantage of Elastic Sidechains increases as more nodes join the network thanks to random assignment and shuffling.

SideChains:

Sidechains are independent blockchains which work in a complementary fashion with another blockchain to provide enhanced functionality and lower costs. This functionality can include but is not limited to transactions, smart contract execution, and storage.

In traditional sidechains, a group of validators is appointed through PoA (Proof of Authority) where they’re staking their identity / reputation, and DPoS (Delegated Proof of Stake) where they’re staking value in the network. These are well known and add value, but aren’t fully decentralized. It’s important to keep in mind that the validator sets of these sidechains could be compromised to censor users, pause the chain, or even act maliciously to collude and attempt to steal funds from them. (that’s why we think Elastic SideChains are better).

State Channels:

State Channels reduce on-chain interaction between two parties to channel creation and channel settlement — everything in between is exchanged in an off-chain manner, allowing for extremely high throughput and low latency. And if the two parties have written their on-chain logic correctly, they’ll always be able to immediately settle to the chain in the case of a dispute.

But State Channels don’t cover all use cases — all implementations are for two-party channels, disallowing one-to-many cases embodying the ideas of governance and massively multiplayer online games. That’s why State Channels are best for conducting private transactions for the settling of conditional payments in a way which relies on the security of the mainnet. In our game, all players need to know the state of the entire network the whole time, this is why state channels are not useful for us.

References

Trade, Conspire & Conquer!

Follow us on social media and get the last news.

DiscordRedditTwitterFacebookInstagramLinkedIn

Subscribe to our newsletter here!

--

--