Koinos has the world’s first blockchain framework designed with modular upgradeability which gives blockchain developers like us the ability to rapidly build, launch, and upgrade a blockchain entirely through WASM smart contracts running in the virtual machine, all of which can be upgraded without a hardfork.
Modular upgradeability resolves one of the biggest challenges facing existing blockchains, how difficult they are to upgrade, by enabling us to rapidly add different features to the framework without impacting any other part of the blockchain. Even after the launch of mainnet, modular upgradeability enables individual fixes to be pushed to the network the moment they are ready enabling Koinos to rapidly improve itself. It is that capability that we believe makes Koinos the first blockchain in history capable of evolving. Thanks to modular upgradeability no technical decision is ever “final” and the protocol can continue to get better and better over time while maintaining an on-chain record of all the governance decisions and the resultant upgrades.
State-paging resolves one of the biggest challenges preventing the mass adoption of blockchain technology; vertical scaling. Most blockchains only grow in size, holding on to every transaction and smart contract that has ever been added to it, even the ones that never get used. All of this old and unused data is responsible for the vast majority of the cost of running a blockchain. Thanks to state-paging, Koinos is able to remove all of that data, while retaining the ability to bring it back to life as if it had never left like MAGIC.
State-paging is still experimental, but we think it will be a game-changer. All of the algorithms have been written and tested. We know we can page data out and back in without any loss in trustlessnes. The key remaining question is whether the increase in bandwidth consumption from real-world us will outweigh the memory savings. But this is mainly because we just don’t know how people will use Koinos. In our tests we found that were state paging added to existing blockchains, state size could be decreased by as much as 78% and that number would only increase as the blockchain gets older. If we see similar numbers on Koinos, then the benefits of state-paging will significantly outweigh the costs.
Koinos is the first blockchain with a BIOS equivalent which enables it to undergo rapid evolution. At the base of the Koinos stack is a blockchain framework that features a set of “thunks” that represent blockchain basics like contract input/output, getting parameters, writing to the database, etc. Above the framework is a system call layer that provides library-like support to smart contracts that can be upgraded in-band. System calls can be either thunks (native implementations) or smart contracts (WASM implementations).
StateDB started as an evolution on chainbase, but has become its own beast entirely, replacing chainbase in the process. On BitShares, Steem, and EOS, the database tracks the most current state. That is the head block state plus pending transactions. This means the database never actually reflects the current state of the blockchain. In order to address that issue, when each block is applied the pending transaction state is undone, the old values are written back to the database, and then the block is applied. One problem with this approach is that most of the time this means performing the exact same calculations again and writing the same state back to the database that was just there which is inefficient.
Blockchains are a new method for performing computation that is still in its infancy but has massive disruptive potential as a result of its ability to establish digital ownership. This novel database structure, first pioneered in Bitcoin, enables developers to leverage decentralized networks of computers to perform computations in a trustless manner and incorporate digital ownership into their applications.
Practically every feature on Koinos will be done through smart contracts. Unlike Ethereum and EOS, on Koinos most system behavior can be upgraded without a hardfork or software upgrade. Even critical components like the consensus algorithm, block production, resource management, digital signature algorithms, account systems, and account authorities can be upgraded without a hardfork. Governance alone will determine whether an upgrade should be made, and individual upgrades can be pushed to the network much like an operating system patch but with an on-chain record of the entire upgrade path.