Documentation

Unicorns

UNiCORN (often shortened to “Unicorn” in docs) is the randomness and witness object that ties together a round of mining: it depends on the transactions in the block, which miners are eligible, and recent chain state, so the selection of winners is hard to bias without breaking consensus.

What it is for

  • Restricting which miners can attempt work in a given round
  • Choosing the winning valid proof
  • Supplying data storage nodes re-check for validation

Implementation note

Field names and the exact mix of hash inputs are defined in the core software. If you are auditing randomness, read the spec and the code for the commit you run — do not assume this short summary is exhaustive.

Related