Paper 2017/232
TwinsCoin: A Cryptocurrency via Proof-of-Work and Proof-of-Stake
Alexander Chepurnoy, Tuyet Duong, Lei Fan, and Hong-Sheng Zhou
Abstract
We design and implement TwinsCoin, the first cryptocurrency based on a provably secure and scalable public blockchain design using both proof-of-work and proof-of-stake mechanisms. Different from the proof-of-work based Bitcoin, our construction uses two types of resources, computing power and coins~(i.e., stake). The blockchain in our system is more robust than that in a pure proof-of-work based system; even if the adversary controls the majority of mining power, we can still have the chance to secure the system by relying on honest stake. In contrast, Bitcoin blockchain will be insecure if the adversary controls more than 50\% of mining power. Our design follows a recent provably secure proof-of-work/proof-of-stake hybrid blockchain by Duong et al.~(ePrint 2016). In order to make our construction practical, we enhance Duong et al.'s design. In particular, we introduce a new strategy for difficulty adjustment in the hybrid blockchain and provide an analysis of it. We also show how to construct a light client for proof-of-stake cryptocurrencies and evaluate the proposal practically. We implement our new design. Our implementation uses a recent modular development framework for blockchains, called Scorex. It allows us to change only certain parts of an application leaving other codebase intact. In addition to the blockchain implementation, a testnet is deployed. Source code is publicly available.
Metadata
- Available format(s)
- Category
- Cryptographic protocols
- Publication info
- Preprint. MINOR revision.
- Keywords
- cryptocurrencyblockchainimplementation
- Contact author(s)
- hongsheng zhou @ gmail com
- History
- 2017-03-14: revised
- 2017-03-08: received
- See all versions
- Short URL
- https://ia.cr/2017/232
- License
-
CC BY
BibTeX
@misc{cryptoeprint:2017/232, author = {Alexander Chepurnoy and Tuyet Duong and Lei Fan and Hong-Sheng Zhou}, title = {{TwinsCoin}: A Cryptocurrency via Proof-of-Work and Proof-of-Stake}, howpublished = {Cryptology {ePrint} Archive, Paper 2017/232}, year = {2017}, url = {https://eprint.iacr.org/2017/232} }