Blockchain simulator

We have created a Blockchain ‘simulator’ in JavaScript which runs in a web browser, to help explain how blockchain technology works. It is complementary to our website and so it uses the same coloring-scheme and design of elements.

Click here to launch the blockchain simulator.
(hosted @ hnldesign.nl)

Components

The simulator is made up of three basic blockchain-components:

  • A Memory Pool
  • A Miner (one representing many, for the purpose of simplification)
  • ‘The Blockchain’ (an overview of all blocks mined)
Blockchain Sim - Memory Pool & MinerBlockchain Sim - Memory Pool & Miner
Blockchain Sim - Memory Pool & Miner

Features

Blockchain Sim - The BlockchainBlockchain Sim - The Blockchain
Blockchain Sim - The Blockchain
  • SHA256 mining (with optional MD5 hashing, for shorter, more readable hashes)
  • 32-bit string noncing
  • Adjustable hash rate (with a clock-multiplier boost)
  • Difficulty adjustment
  • Auto-replenishing Memory Pool (generates random transactions to prevent running dry, unless paused)
  • Actual individual transactions (represented as SHA256 hashes)
  • Miner and Memory Pool are individually pausable (or both at once, using the master control)

About the simulator

Everything is simplified ‘to scale’, in that there is a block target time of 10 seconds, as opposed to 10 minutes, base difficulty starts at 4 bits (one leading zero) instead of 32. Furthermore, difficulty adjustment occurs every 5 blocks, and blocks only contain 9 + 1 coinbase = 10 transactions.

All this is done to benefit comprehension and because hash power via JavaScript in the browser is limited.

Click here to launch the simulator. (hosted @ hnldesign.nl)

Disclaimer

Note that we are actively working on the simulator, so defaults/values may change. And — perhaps it’s superfluous, but just in case — no; we’re not using your browser to mine any crypto. It’s just a simulator, in JavaScript.