To date, existing decentralized cryptocurrencies adopt either PoW consensus scheme or hybrid consensus model of PoW and PoS. However, these systems still encounter the issue of very limited efficiency/throughput. Meanwhile, upcoming quantum computers threaten existing classical cryptography which is the foundation of blockchain security. In particular, the quantum algorithm by Shor for computing discrete logarithms breaks the ECDSA signature scheme used by almost all cryptocurrencies, such as Bitcoin, Ethereum, Decred and Monero. However, if post-quantum cryptographic schemes are equipped in these systems, the throughput of them will become worse and even unbearable.
Hcash project aims to build a secure, efficient, robust and reliable decentralized system. Highlighted features such as newly-proposed hybrid consensus scheme, post-quantum digital signature, linkability among various blockchain-based and DAG-based decentralized cryptocurrencies, smart contract mechanism and post-quantum privacy-preserving scheme will be proposed and implemented in Hcash eventually.
To deal with the performance issue, we implement a novel hybrid consensus scheme with strong robustness, high throughput as well as sufficient flexibility in Hcash. On the one hand, with a newly-proposed two-layer framework of block chain, significant improvement of the efficiency is offered without compromising the security. On the other hand, with a hybrid consensus model, both PoW and PoS miners are incentivized to take part in the consensus process, thereby enhancing the security and flexibility of the consensus scheme, and providing a mechanism that supports basic DAO for future protocol updating and project investments.
For more details, please refer to our specific report.
To address security issues stemming from quantum computers, we design and implement post-quantum solutions in Hcash. Our proposals achieve the following 4 features:
Please refer to our design rationale and technical report for more information.
Hcashd is a Hypercash full node implementation written in Go (golang).
This acts as a chain daemon for the Hypercash cryptocurrency. Hcashd maintains the entire past transactional ledger of Hypercash and allows relaying of transactions to other Hypercash nodes across the world. The installation of hcashd requires Go 1.7 or newer.
Glide
Glide is used to manage project dependencies and provide reproducible builds. To install:
o get -u github.com/Masterminds/glide
Build and Installation
For a first time installation, the project and dependency sources can be obtained manually with git and glide (create directories as needed):
it clone https://github.com/HcashOrg/hcashd $GOPATH/src/github.com/HcashOrg/hcashd
d $GOPATH/src/github.com/HcashOrg/hcashd
lide install
o install $(glide nv)
To update an existing source tree, pull the latest changes and install the matching dependencies:
d $GOPATH/src/github.com/HcashOrg/hcashd
it pull
lide install
o install $(glide nv)
Start running hcash full node service to synchrnoze blocks
cashd
Start hcash solo mining
cashctl setgenerate true x # where x represents the number of CPU threads
Stop hcash solo mining
cashctl setgenerate false
HcashWallet GUI version is a graphical wallet for Hcash. You can send and receive Hcash, purchase tickets for PoS voting, get history of all your transactions and more by GUI HcashWallet.
HcashWallet GUI version is at: https://github.com/HcashOrg/hcashwallet/releases. It could be extracted and used directly.
HcashWallet GUI version user guide is at: https://github.com/HcashOrg/hcashd/wiki. If any suggestion, please post your suggestion at https://github.com/HcashOrg/hcashd/issues or send email to [email protected]. Thank you very much!
hcashd is licensed under the copyfree ISC License.