1. Homepage
  2. Programming
  3. COMP4142 E-PAYMENT AND CRYPTOCURRENCY Project Specification: UTXO blockchain platform.

COMP4142 E-PAYMENT AND CRYPTOCURRENCY Project Specification: UTXO blockchain platform.

Engage in a Conversation
HK PolyUCOMP4142E-PAYMENT AND CRYPTOCURRENCYUTXOP2PKH

COMP4142 E-PAYMENT AND CRYPTOCURRENCY CourseNana.COM

Project Specification CourseNana.COM

Have an in-depth understanding on how the blockchain system works.
Be able to write a UTXO (unspent transaction output) blockchain platform.
CourseNana.COM

Objective CourseNana.COM

This is a group project (group size 5-6 recommended). Please allocate among yourselves the tasks and indicate the contributions made by each one of you. All team members need to have fairly equal contributions in this project. A workload table and contribution list need to be included in the project report. CourseNana.COM

Requirements CourseNana.COM

A group of 2 students or less can have full marks even with fewer functions implemented (this will be judged by TA/instructor). We still hope you can finish most functions, which is the purpose of the group project. To be fair, with fewer students, some difficult functions may not be finished. A group of 7 or 8 students is allowed and more functions/features should be designed, justified, and reported. For instance, we have 6 goals to achieve. 7 students need to achieve another 1 critical goal and 8 students need to achieve 2 more. CourseNana.COM

1. Grouping: Nov. 11, 2023
2. Demonstration: Dec. 1, 2023 (In the class)
3. Submission of all project deliverables: Dec. 6, 2023, in the blackboard
CourseNana.COM

Project Schedule CourseNana.COM

Please see the project submission part for more information about the project demonstration and final project deliverables.
Note: Late submission will be penalized unless there is a proper reason justified.
CourseNana.COM

1. Blockchain Prototype: construct the blockchain system according to the following structure. The block should have the following basic content. CourseNana.COM

a) Index: the height of the current block. b) Timestamp.
c) Previous Block Hash.
CourseNana.COM

d) Current Block Hash.
e) Difficulty: the number of bits at the beginning of block hash, dynamic
CourseNana.COM

change.
f) Nonce: the random number used to calculate the block hash. g) Merkle root of transactions.
h) Data: transaction.
CourseNana.COM

2. Mining and UTXO: implement a dynamic-difficulty Proof-of-Work algorithm. a) Design a Proof-of-Work algorithm. For example, adjust the nonce and CourseNana.COM

generate a hash until it has a hash with a leading number of zeros.
b)
Achieve dynamic difficulty. For example, adjusting the difficulty of the CourseNana.COM

current block dynamically based on the time taken to generate the CourseNana.COM

previous (10, 20, or more) blocks.
3. Transaction: implement pay-to-public-key-hash (P2PKH) transactions and
CourseNana.COM

verify transactions.
a) Implement pay-to-public-key-hash (P2PKH) transactions
.
b) Use asymmetric cryptography to create digital signatures and verify CourseNana.COM

transactions.
4. Network: basic interactions and validation should be realized.
CourseNana.COM

a) Create an API to broadcast the new blocks and get the blocks from the other nodes. The API should allow a user to interact with the blockchain by the HTTP request, socket, or different ports. CourseNana.COM

b) Achieve a function to check if the new blocks that we receive from other miners are valid or not. (Hint: recompute the hash of the block and compare it with the given hash of the block.) CourseNana.COM

5. Storage: choose your database in the implementation.
a) Store the raw data of the whole blockchain in the disk.
b) Store the latest state (e.g., chain height, full node list, neighbor list) of the
CourseNana.COM

blockchain in memory.
c) Store the transactions (UTXO) in a transaction pool.
CourseNana.COM

6. Wallet: manage all transactions that you can spend. CourseNana.COM

You could refer to some open-source projects to implement your blockchain system but you must refer to them in your report. Otherwise, it could be seen as plagiarism. CourseNana.COM

Project Submissions CourseNana.COM

Date: Dec. 1, 2023
In the class, 2-3 members can do the presentation.
CourseNana.COM

1. Project Presentation and Demonstration CourseNana.COM

Deadline: Dec. 6, 2023
The final submission (softcopy) contains the following items for each group:
CourseNana.COM

2. Final Deliverables CourseNana.COM

1) A group report (pdf format, no page limits) to show how you implemented the blockchain system and how you achieved the 6 goals. You could also include what you have learned or tried but not demonstrated or included in CourseNana.COM

CourseNana.COM

this project. Please also denote any coding/description referring to other CourseNana.COM

sources (e.g., using ChatGPT).
2) Each student needs to submit a short
individual report (no more than half a CourseNana.COM

page), where you should describe your responsibility and contribution in detail. CourseNana.COM

You should include all the required documents in a compressed file (.rar, .7z, etc.). Each group only needs to submit once and name it after one group mate.
Note: The softcopy files should be submitted to the blackboard.
CourseNana.COM

100
12 (lab 3, referring code in lab 1)
12
12
8
8
12
12
16
8
CourseNana.COM

Total marks
1. Blockchain Prototype
CourseNana.COM

Grading Scheme CourseNana.COM

2. Mining and UTXO
3. Transaction and Verification
4. Network
5. Storage
6. Wallet
7. Presentation (time control, clear logic)
8. Demonstration (real, interactive) of all functions 9. Group report and individual contribution
CourseNana.COM

Presentation Note: Suppose a 10-minute presentation for each group. Include 4 minutes for slide presentation to talk about how you implement 1-6. Another 4 minutes for the real-time, interactive demonstration with TA. The left 2 minutes for Q&A.  CourseNana.COM

Get in Touch with Our Experts

WeChat (微信) WeChat (微信)
Whatsapp WhatsApp
HK PolyU代写,COMP4142代写,E-PAYMENT AND CRYPTOCURRENCY代写,UTXO代写,P2PKH代写,HK PolyU代编,COMP4142代编,E-PAYMENT AND CRYPTOCURRENCY代编,UTXO代编,P2PKH代编,HK PolyU代考,COMP4142代考,E-PAYMENT AND CRYPTOCURRENCY代考,UTXO代考,P2PKH代考,HK PolyUhelp,COMP4142help,E-PAYMENT AND CRYPTOCURRENCYhelp,UTXOhelp,P2PKHhelp,HK PolyU作业代写,COMP4142作业代写,E-PAYMENT AND CRYPTOCURRENCY作业代写,UTXO作业代写,P2PKH作业代写,HK PolyU编程代写,COMP4142编程代写,E-PAYMENT AND CRYPTOCURRENCY编程代写,UTXO编程代写,P2PKH编程代写,HK PolyUprogramming help,COMP4142programming help,E-PAYMENT AND CRYPTOCURRENCYprogramming help,UTXOprogramming help,P2PKHprogramming help,HK PolyUassignment help,COMP4142assignment help,E-PAYMENT AND CRYPTOCURRENCYassignment help,UTXOassignment help,P2PKHassignment help,HK PolyUsolution,COMP4142solution,E-PAYMENT AND CRYPTOCURRENCYsolution,UTXOsolution,P2PKHsolution,