Group Project 2019

Download as pdf or txt
Download as pdf or txt
You are on page 1of 1

Group project 2019

Objective
Develop, using the knowledge acquired in the Coding course, a simulator of a Block Chain-
based system supporting payments in a crypto-currency.

Requirements
When starting up, the simulator will:
1. Create a set of Wallets, each storing a nickname, a public key identifier (that will be
used to make money transfers toward this wallet and as way of proofing that a given
payment request is effectively coming from the owner of this wallet), and a private key
(that will be used to digitally sign payment requests on behalf of the user owning the
wallet)
2. Create an initial genesis Block that will be the root of the Block Chain, containing
transactions toward the created wallets: the sum of the money transferred to the
wallets will be the total amount of crypto-coins in the system.

Once the simulator is up and running, the user will be able to:
1. List the amount, date, source and destination of the last 10 transactions executed by a
given wallet.
2. Count the number of transactions executed by a given wallet in a given time window
(i.e., a period defined by a start date and an end date, both included in the period).
3. Transfer funds from a wallet to another, adding new blocks to the chain, and producing
the Proof-Of-Work.

References
• Blockchain 101 - A Visual Demo
https://www.youtube.com/watch?v=_160oMzblY8
• Blockchain 101 - Part 2 - Public / Private Keys and Signing
https://www.youtube.com/watch?v=xIDL_akeras
• Creating Your First Blockchain with Java. Part 1
https://medium.com/programmers-blockchain/create-simple-blockchain-java-
tutorial-from-scratch-6eeed3cb03fa
• Creating Your First Blockchain with Java. Part 2 — Transactions
https://medium.com/programmers-blockchain/creating-your-first-blockchain-with-
java-part-2-transactions-2cdac335e0ce

You might also like