Skip to content
Blockchain project in Java, WIP
Branch: master
Clone or download
Type Name Latest commit message Commit time
Failed to load latest commit information.
gradle/wrapper New files for Gradle Oct 28, 2017
src Transaction equals, used in TransactionPool Aug 17, 2019
.gitignore New files for Gradle Oct 28, 2017
LICENSE New files for Gradle Oct 28, 2017 Adding reference to README Aug 2, 2019
gradlew New files for Gradle Oct 28, 2017
gradlew.bat Using jsonrpc field in JSON RPC Apr 16, 2019
settings.gradle New files for Gradle Oct 28, 2017


Simple blockchain implementation, in Java, WIP


This blockchain implementation has:

  • Block: with number, parent block and list of transactions
  • Transaction: send value from sender to receiver account
  • Account: with balance and optional smart contract code
  • Virtual Machine: to execute smart contracts

The world state keeps the account states. Each account has a balance and smart contract storage.


To Do

  • Coin type
  • Signed transactions
  • DataWord or Coin in Transaction value, instead of BigInteger
  • DataWord or Coin in Account balance, instead of BigInteger
  • Block JSON serialization
  • Block transaction hash should be the hash of a trie
  • Difficulty in block
  • Total difficulty in block JSON serialization
  • Numeric values in hexadecimal in JSON serialization
  • Transaction receipts
  • Log emit
  • Create contracts
  • Call contracts in Virtual Machine



You can’t perform that action at this time.