Skip to content

In this project we implemented a node that’s part of a block-chain-based distributed consensus protocol. Our code will receive incoming transactions and blocks and maintain an updated block chain.

Notifications You must be signed in to change notification settings

ankitakulkarnigit/Blockchain

Repository files navigation

Project 3: BlockChain

In this project we implemented a node that’s part of a block-chain-based distributed consensus protocol. Our code will receive incoming transactions and blocks and maintain an updated block chain.

Files provided:
1. Block.java - Stores the block data structure.
2. BlockHandler.java - Uses BlockChain.java to process a newly received block, create a new block, or process a newly received transaction.
3. ByteArrayWrapper.java - A utility file which creates a wrapper for byte arrays such that it could be used as a key in hash functions. (See TransactionPool.java )
4. Transaction.java - This is similar to Transaction.java as provided in Project 1 (https://github.com/ankitakulkarnigit/ScroogeCoin) except for introducing functionality to create a coinbase transaction. Take a look at Block.java constructor to see how a coinbase transaction is created.
5. TransactionPool.java - Implements a pool of transactions, required when creating a new block.
6. UTXO.java From Project 1 (https://github.com/ankitakulkarnigit/ScroogeCoin).
7. UTXOPool.java From Project 1 (https://github.com/ankitakulkarnigit/ScroogeCoin).

CPSC-459 
Team Member1.	  Mohit Kumar Cwid :887598266 mohit_kumar@csu.ullerton.edu
Team Member2. 	Ankita Udaykumar Kulkarni Cwid:887871861 ankitak@csu.fullerton.edu
Team Member3. 	Anuj R. Dhoot Cwid: 887450005
Team Member4.   Ryan Vo Cwid:888904216 rvo7496@csu.fullerton.edu


How to execute your program. 

	Unzip folder and place in C: 
	go to grading folder to run below commands from grading folder in Command Prompt
		
		For Windows User:
		1) javac -cp blockChainGrader.jar;algs4.jar;rsa.jar;. DropboxTestBlockChain.java
		2) java -cp blockChainGrader.jar;rsa.jar;. DropboxTestBlockChain

		For MAC User:
		1) javac -cp blockChainGrader.jar:algs4.jar:rsa.jar:. DropboxTestBlockChain.java
		2) java -cp blockChainGrader.jar:rsa.jar:. DropboxTestBlockChain

Jar Files:

1) rsa.jar: Contains classes for using RSAKeys
2) algs4.jar: Contains some useful classes like defining priority queues, stacks, etc.
3) blockChainGrader.java: Contains classes used for grading the submitted files.

About

In this project we implemented a node that’s part of a block-chain-based distributed consensus protocol. Our code will receive incoming transactions and blocks and maintain an updated block chain.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages