Skip to content
Blockchain project in Java, WIP
Java
Branch: master
Clone or download
Permalink
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
README.md Adding reference to README Aug 2, 2019
build.gradle
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

README.md

BlockChainJ

Simple blockchain implementation, in Java, WIP

Description

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.

References

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

License

MIT

You can’t perform that action at this time.