- September 11, 2019
- Posted by: BlockX
- Category: Blockchain
A consensus algorithm is necessary to enable a community of any scale to arrive at a concerted definite opinion on some issue. If we consider modern society, we can find numerous examples of consensus algorithms used, for example, to determine ownership. Another example of a consensus algorithm, established by a nation in order to abide by the rules specified in the Constitution, is the government which, among other things, organizes panels of jurors and judges to evaluate evidence and deliver judgments. Those judgments are most often fulfilled even though they may not be correct.
Contemporary algorithms for reaching consensus are more advanced and at the same time more sophisticated. A PC network with an unlimited number of users can arrive at unambiguous decisions regarding different matters, issues or problems avoiding some common risks such as creation of a competing opinion (and, consequently, a competing Blockchain), closing the whole network or censorship of its particular members’ opinions. Two protocols most often utilized by those algorithms and to ensure operational reliability and robustness against censorship are PoW (Proof of Work) and PoS (Proof of Stake).
Known problems of Bitcoin Blockchains relying on PoW, where the network security is guaranteed by the computation capacity of the participants’ devices and the probability of generating another block by particular miners is directly proportional to their computation capacity, include great power consumption and a relatively slow rate of transaction confirmation, which slows down the whole network operation due to continuously increasing volumes.
This has become another reason for seeking a more efficient and advanced algorithm, which would boost decentralization and at the same time provide a reliable and fast network of real-time confirmed transactions.
Daniel Larimer, a Blockchain engineer, realized that the Bitcoin blockchain system was too slow while cryptocurrency mining in the system was extremely wasteful in terms of power costs. He stated that Bitcoin mining was going to become centralized in future and huge mining pools were going to control Bitcoin. Daniel decided to build a blockchain system of his own which could increase the transaction confirmation rate up to figures exceeding 100,000 confirmations per second. He invented and developed a new algorithm which consumes less energy, is fast and fully secure and named it Delegated Proof of Stake (DPoS).
We have estimated that the use of DPoS in Bitcoin would allow boosting decentralization at less than 10% of the current cost. It would result in not only a decrease in inflation and a more rapid increase in Bitcoin price, but also in a reduction of time expenditure on reliable transaction confirmations from 1 hour (6 confirmations, 10 minutes each) down to 10 seconds.
At the same time, when analyzing other Blockchain projects, we also detected a number of shortcomings in a competing protocol, so-called PoS, where the more tokens miners own, the more likely they are to generate new blocks for the common chain. For example, BlackCoin and Peercoin enable everyone interested to become verifiers and earn an income by virtue of owning crypto-assets. Here is an example of how it can take place in similar projects under PoS: if you have, say, one percent of the total amount of coins produced by the Community in your wallet, you can be entitled to verify one percent of all generated blocks and receive a remuneration for this only because you hold this cryptocurrency in your wallet. However, firstly, it results in an unreasonably high payment for transactions and, secondly, it does not allow participants who own less than one percent of the tokens to earn any income if the cost of the transaction payment in their systems is not higher than that in a system powered by the DPoS algorithm.
Let us also analyze the scalability of blockchain systems powered by PoS to compare their capabilities with DPoS. If we assume that one hundred or more DPoS delegates cause excessive centralization and if we try to increase the number of verifiers in a PoS system, for example, up to one thousand, their transactional payments will exceed those in DPoS systems tenfold! And if a blockchain powered by the PoS algorithm grows to the size of Bitcoin (with the capitalization of 130 billion US dollars), it becomes evident that participants whose assets exceed 1 million dollars will unfairly earn most income. If the ownership threshold required for participation as a verifier, is reduced, for example, to 1000 dollars, the income of the latter will be ten thousand times higher than in systems utilizing the DPoS algorithm.
The consensus algorithm based on the DPoS protocol combines both PoW and PoS elements. However, its main distinction is a real-time voting mechanism, which relies on the participant’s reputation level or “voting power”. This mechanism allows electing a number of persons having special powers — delegates. Each participant can be a party of the election process by voting for delegates or becoming a candidate. After election, delegates are empowered to create and verify blocks to be included in the Blockchain. Besides, they have to prevent intrusion of unauthorized persons into the process. Authorized persons are admitted to work in turns or in a random order which is changed every new round. If wrongful behavior has been detected, the delegate is publicly debunked and dismissed from the process.
We consider DPoS to be the most efficient minting method. It provides better decentralization while the delegated proof of stake ensures an even more reliable mechanism for confirming transactions in networks implementing this technology. Therefore, we have selected DPos as the basis for our developments.
TokenGo consensus utilizes an adapted and modified DPoP (Delegated Proof of Power) algorithm, which is based on the DPoS/PoW hybrid algorithm. Its specific features include the use of a special token, GoPower, which is the basis for determining minting priority and voting power when electing delegates. When blocks are generated, the DPoP consensus suggests that the dependence on equipment power capacity and the stake in GoPower token ownership should be used simultaneously.
The consensus mechanism which underlies most solutions powered by the distributed database technology, in the TokenGo blockchain platform consists of independent p2p nodes integrated into a common network. Transactions taking place through the blockchain can be seen by each of the p2p nodes which record and immediately check received information, excluding lost, incomplete or duplicated chains. At some point, the recorded data are grouped and hashed and communication with the previous block is established. After that, a new block is added to the blockchain. Each new block is introduced into the blockchain distributed ledger controlled by the DPoP algorithm.
In the TokenGo blockchain network, blocks are produced in rounds, while the process of their creation is called “minting”. Miners/delegates engaged in building blocks will be referred to as Delegates in this paper. Delegates are responsible for two independent processes which are, however, logically interrelated: creation of a transaction block and verification of the received block into the man chain using electronic signature.
Each round implies participation of 101 Delegates elected via the voting system embedded into the TokenGo platform, the so-called TOP Delegates. In order to ensure motivational competition, the priority of selection and the probability of joining the TOP are directly dependent on the applicants’ and electors’ voting power.
In order to become an applicant and apply for participation in the voting, one has to undergo a procedure of Delegate registering. Any participant owning 100 or more GoPower can become a Delegate. The TokenGo community can arrive at a coordinated decision to increase the total number of Delegates elected for a round by means of creating a reserve of Delegates in order to boost speed and decentralization.
In each round, two Delegates, acting as miners, are elected secondarily among Delegates elected for the TOP. The first one is elected under the DPoP protocol algorithm while the second one is elected randomly. The miners’ purpose is to produce blocks and organize current transactions, while a specially elected Delegate of this round signs and introduces them into the common blockchain network.
When one of classic PoW protocols is chosen, creation and verification of blocks into the common network takes an unpredictable amount of time. In TokenGo where, as previously mentioned, DPoP consensus algorithm is used, each round lasts exactly 10 seconds, and the integrity and reliability of received blocks is guaranteed with a tiny probability of fork production.
Thus, we can define three fundamental facts in favor of the DPoP consensus algorithm:
First : an incredibly high transaction rate in the network, which is achieved due to the Delegates’ capability to include suitable transactions in the structure of a block transferred for input, without waiting for the check of a half of all network nodes.
Second : democracy. Any community user who has at least 1 GoPower, has voting power and can take part in the management proportionally to the number of tokens he or she has.
Third : a high degree of manageability. There are mechanisms, which allow achieving consensus on all issues related to the network development and future.
EN TokenGo bitcointalk
RU Blog TokenG
EN Blog TokenGo