BlockChain Distributed System

Each process maintains a copy of the shared ledger implemented as a blockchain. Each time the blockchain is updated it is multicast to all other peers. Process zero is responsible for writing the updated [url removed, login to view] file to disk. We will use only three processes, but your system design should—in theory—work for any number of peers with minor modifications.

Each process reads in a data file to create new records. A new record is placed in an unverified block. The block is multicast to all the processes in the blockchain group which begin competing with one another to solve the "work" puzzle. One process solves a puzzle to verify the block, prepends the verified block to the blockchain, and multicasts the new blockchain to all other processes in the group. All other processes abandon the attempt to verify that block.

Every record in the shared ledger is considered cannonical. It is ~impossible to insert a counterfeit block (record) into the blockchain.

We will use simple medical records in files, but the data is not really of concern to us. We could use the same system for a complete audit trail of business transactions, to support a digital currency, or to keep track of banking records.

Ordinarily many records would comprise a single block; for simplicity we will use a single record for each block.

Your system must run from some version of the provided run scripts. Adapt as needed for other operating systems.

Skills: Blockchain, Java

See more: fault identification distributed system, distributed system support retail chain, needs software supporting production distributed computer systems, blockchain tutorial, blockchain wiki, blockchain definition, blockchain explained, blockchain sign up, blockchain for dummies, blockchain database, blockchain ethereum, distributed system retail chain, distributed system implementation using rmi, distributed system java, distance learning distributed system, distance learning distributed system scoket programming, distance learning distributed system java, apache php distributed system, secure distributed system, distributed system

About the Employer:
( 0 reviews ) United States

Project ID: #15415156

1 freelancer is bidding on average $200 for this job

$200 USD in 3 days
(4 Reviews)