CryptoQuiz is a Dapp for off-classroom quizzes. It is a new way to run a fair, transparent, yet secure quiz. Professor can open questions and let students to submit their answers. Once the question expire and answer is revealed, awards will be sent to students who had the correct answer.
To keep their answers obscure and secret on the chain, we adopt public-key signing method with nonce. Only professor, who holds the private key of the question, can see or reveal the answer.
Tutorial: https://legacy.gitbook.com/book/carsonwah/dapp-tutorial/details
- Node.js
- Truffle Framework
npm install -g truffle
- Ganache
- MetaMask on Google Chrome
npm install
Basic structure is based on https://truffleframework.com/boxes/pet-shop.
truffle migrate --reset
npm run dev
We use EC (Ellipis-Curve) cryptography to encrypt & decrypt message. We may use the following libraries:
- ECIES from https://github.com/bitchan/eccrypto
- (Backup: https://github.com/jpillora/eccjs)