Blockchain explained in Java

Quoting from Wiki

A blockchain, originally block chain, is a growing list of records, called blocks, which are linked using cryptography. Each block contains a cryptographic hash of the previous block, a timestamp, and transaction data (generally represented as a merkle tree root hash).


How about a functional code written in Java to understand Blockchain actual working.

We will create a Crypto Wallet
We will send amount from a wallet to another.

What are the basic Objects i can think of in the Crypto transactions ?

A Block which holds the valid transactions that are hashed and encoded.
A Wallet holding with the address and basic properties.
A Transaction which will happen when one send or receive.

Transaction input and output.

Classes created as below:

  • Block.java
  • BlockChainTransaction.java
  • BlockChainTransactionInput.java
  • BlockChainTransactionOutput.java
  • BlockChainWallet.java
  • PoloChain.java
  • UtilMain.java

Continue reading