Check out the Architectural Document for the complete Doc: https://dragonchain.github.io/architecture
In Bitcoin and most other cryptocurrencies, we witness the use of “Proof of Work” (PoW) algorithms as a basis for consensus in a “trustless” system. In this architecture, “proof” will be abstracted and may be implemented in one or more ways for a given blockchain. For some uses, one may desire to use a trust based system, for instance, in a fully private blockchain system. One may also find value in a hybrid proof configuration that would see trust applied alongside limited Proof of Work to add additional security against attack (i.e. a potential attacker would not only need to compromise or attain a set of private keys, but would also need to perform computation to accomplish the configured Proof to reassemble a given blockchain.
- Trust (Default)
- Proof of Work (PoW)
- Proof of Stake (PoS)
- Other as yet determined algorithms
Given such an abstraction, a user would be able to configure one or more simultaneous proofs to suit business need, whilst a system developer may build new proof implementations as blockchain technology progresses.
It is possible to conduct PoW even in the case of fixed time length block constructions (see block construction discussion elsewhere in this paper) by spanning one or more proof implementations across blocks. As an example, let’s say that we have a particular use case that requires higher than normal security. If we assume that Trust is implemented by default, but we desire to configure some amount of trustless verification, we may wish to configure some level of Proof of Work on our blockchain. Depending upon the difficulty level configured, and given the nature of PoW algorithms, we may not see a PoW solution for every block. Some blocks would have no PoW, and the PoW answer may only appear occasionally. In such a case, it may be reasonable to configure two or more levels of PoW. A higher difficulty proof may be tuned to appear approximately every 20 minutes, and a lower difficulty proof may be tuned to appear approximately every 2 seconds. In the same manner other proofs such as PoS may be applied simultaneously within a single chain. An interesting philosophical point is that such proofs may be used in competition against a future attacker rather than as competition with other miners for a block reward.