Skip to content

Latest commit

 

History

History

proof-of-work

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 

Proof of Work

You will write a "toy" implementation of a proof of work blockchain. While the completed functions should be relatively short, this task requires a conceptual understanding of proof of work. Office hours will be offered if you would like to ask us clarifying questions or need help understanding certain concepts, but we do expect that you to do your own research.

Please implement the functions in proof_of_work.py and write your own test cases (will not be graded but highly recommended) to ensure that your functions are working properly. Some sanity tests have been included but are not comprehensive. Tests can be run using python3 -m unittest 'test.py'.

Some useful concepts to research are:

  • Overview of Bitcoin proof of work
  • Chainwork and how to determine the "longest chain"
  • Hash functions
  • Merkle trees