Volta: a hybrid decentralized scalable turing complete blockchain
When Bitcoin first launched, the world was forever changed. Ethereum saw the potential of blockchain and provided a platform for decentralized applications never conceived of before. The problem is that both have the exact same issues: They are unable to scale with a TPS of at best 8 and 30, respectively, as well as massively polluting the environment with Bitcoin mining using more electricity than whole countries such as Ireland. Other coins have attempted to remedy these issues, but fall victim to the “trilemma”, coined by the founder of Ethereum, Vitalik Buterin. The trilemma means that a coin can be quick, secure, or decentralized but not all three. With most coins aiming for a high TPS, deciding to abandon decentralization, even low TPS coins such as Bitcoin have fallen prey to the dangers of centralization; with the rise of large ASIC farms (mostly in China) all going to the same 4 pools who now control the majority of the hashrate. To combat this while not falling prey to the trilemma, we can institute a hybrid consensus model known as POA (proof of activity); as well as Layer 1 solutions such as sharding and Layer 2 solutions such as off chain state channels. This will allow us to create a decentralized platform capable of hosting potentially thousands if not millions of transactions, smart contracts and Dapps.
Blockchain technology came onto the scene back in 2009 with the launch of Bitcoin. Ever since then, there have been dozens, if not hundreds, of projects; all attempting to use blockchain in a new and novel way. While some application-specific chains have managed to achieve large numbers of users and a high TPS. the more general-purpose ones have struggled to achieve high numbers of users due to their low TPS and high latency. The only possible way for blockchain to ever receive mainstream use is to make it cheap, fast, and easy for users to complete transactions or computations on the network without needing any technical skill.
A blockchain that requires long wait times for each block will never beat its centralized competitors, as they have very low latency and can keep that low latency even up to thousands of transactions per second.
What Volta seeks to accomplish is to provide a platform for decentralized applications and smart contracts which is not only scalable and easy to develop but is also decentralized and censorship-resistant.
Since it is irrational to expect users to pay fees for small computation workloads such as a simple smart contract or microtransaction due to the fact that performing a basic computation on most centralized services requires no fee, a way to solve this is a dynamic rate limit on the amount of computations per user. Anything more complex will require a linear fee for each added computation, as well as a maximum gas limit such as Ethereum’s startGas value. This will allow for faster blockchain adoption as well as make it easier for businesses to create monetization plans.
Consensus algorithm POA
Volta utilizes the only known consensus algorithm capable of providing not only the security a large scale blockchain would need but also the decentralization that makes blockchains so attractive in the first place. POA (also known as hybrid POW/POS) takes the best of both POW and POS. The way this will work is first by having an mining algorithm which can only be mined with a CPU, keeping true to Satoshi’s original idea “one CPU one vote”. Not only does this encourage decentralization, but POA also discourages mining farms from being created, since for each CPU you would have to buy an additional motherboard and power supply (unlike GPU mining where it is possible to have up to 8 video cards all on the same rig). Then, once the block is found by the miners, it will be broadcasted to the network; after which 5 random validators will be drawn from the overall pool who will then vote on whether or not it is added to the chain. If 3/5 consider it legitimate, it is then added to the chain. To become a validator you need to have a thousand Volta after which you can choose to lock those coins for the next 6 months during which the coins cannot be removed, making it uneconomic for anyone to attempt a 51% attack. This will also allow a fast blocktime of 10 seconds vs Bitcoin’s 10 minutes. The way we can do this is the same way Ethereum can do this by using the GHOST protocol which allows validators and miners to use orphaned or uncled blocks which would normally be wasted to be referenced for validation.
Software issues and bugs
Whenever a bug or glitch is found, the person who ends up solving it will be paid from a preallocated bounty pool held in a smart contract.
In Volta, the network is made up of “objects” called accounts. These accounts are assigned 19 byte addresses and the state transitions representing transfers of wealth or information between accounts. These accounts are made up of 4 fields:
The nonce. A counter used to make sure there wasn't a double spend
The existing balance
Any existing contract code
The storage (which is empty by default).
Volta is the fuel for the Volta blockchain and is used to pay for any computations that go over the pre-stated dynamic block limit, and as the backbone for DEFI, Dapps, ICOs, and any other projects being run on the chain. In general there are two types of these accounts: Coin accounts, which are controlled by private keys and are used to hold coins and represent the coin balance of the account; and contract accounts, which are controlled by the code instead of the private keys.
Messages and transactions
The term transaction simply refers to the cryptographically signed packet of data to be sent from a coin account. Transactions contain:
A signature proving the sender
The amount of volta being transferred
An optional data field
A value showing the number of computations enclosed
A gas price value showing the fee for each computational step if the number of computations goes over the dynamic rate limit.
All of these are standard in every Gen 2 blockchain; the main differentiator being the dynamic rate limit, which is the key to our system of stopping denial-of-service attacks due to the fact that if an attacker wished to loop the same large file infinitely it would cost a significant amount of money and they still have to put a limit on how many computations can be run without refilling the contract. There is also a fee of 2 GAS for each byte of data added to the chain. This is to make both good and bad actors pay for each part of the space and bandwidth they use encouraging not only more efficient applications but also making it harder for any attacker to try to slow down the network.
For the time being, the VM we will be using is Ethereum’s, to make it easier for developers to create smart contracts as well as other applications. When the mainnet launches, we may work on developing our own using a VM, which is able to run the code natively instead of requiring it to be compiled, (which makes development more difficult and can lead to vulnerabilities) as well as building a native code library, allowing more functionality.
Sharding is the mechanism by which a large database is split into smaller parts. The difficulties implementing this on blockchain are due to the loss in security, but this can be solved in three ways. First, the hybrid model makes it so an attacker would need not only the majority of the mining power but also the majority of the staking power. Secondly, by utilizing ZK-SNARKS to encrypt the shard identity, it makes it incredibly difficult for miners and validators to conspire to take over a shard. The validators will not only be shuffled from the shards pool. The shard pool will move randomly to different shards
Data saving mechanism
If all parties involved in a particular dataset such as files stored in the chain agree that the file no longer has use or relevance; or may just want it deleted (in the case of a decentralized social media platform) the file would be marked with a cryptographic key saying its no longer needed and would be pruned for any users using a light setup.
The Volta network has its own built in currency Volta, which serves two roles: First, as the form of liquidity for the entire ecosystem of applications built on the Volta platform, and second, the means through which fees are paid. For all future discussions the denominations will be labeled
Volta will be used primarily for standard transactions,Turing will be used for microtransactions while spagni and Finney will be used for technical discussions and fees. When a block is found by a miner and then validated the block reward will be 3 volta plus whatever fees were in the block split 60/40 due to the miner needing to spend more resources. As while as a 380 million hard cap after which there will be 3% yearly inflation rate for not only coins that were lost but also to still encourage spending and usage.12% of this 380 million will be premined for development and the bounty pool
The Volta blockchain is as it stands is the world’s only decentralized scalable blockchain capable of supporting the TPS, security,low to no fees required for the rapid deployment of blockchain applications and transactions.