Getting Challenges
How Miners Obtain Challenges
Miners obtain challenges simply by running an OP_NET node. When an epoch ends, the node automatically:
- Processes all transactions from the epoch's five Bitcoin blocks.
- Executes smart contracts deterministically.
- Generates the final state root.
- Calculates the checksum root from this state.
- Makes the challenge available to mining software.
No Central Authority
No central server distributes challenges. Each node independently computes the same challenge through deterministic execution of Bitcoin data, preventing manipulation and ensuring decentralization.
Challenge Timing
Understanding when challenges become available and when solutions must be submitted is critical for miners.
Challenge timeline overview:
The following provides a step-by-step explanation of each timeline element.
Values in angle brackets are examples for Block 569 and Epoch 113.
- Block N<569> (Epoch X<113> Ends):
- All transactions from blocks N-4<565> to N<569> are finalized.
- Nodes generate checksum root from final state.
- Challenge becomes available immediately.
- Mining competition begins.
- Blocks N<569> to N+4<574> (Epoch X+1<114> Submission Window):
- Miners submit solutions via Bitcoin transactions.
- Each solution includes SHA-1 collision proof.
- Must attest to state from Epoch X-4<109> (blocks N-24<545> to N-20<549>).
- No submissions accepted after block N+5<574>.
- Block N+6<575> (Winner Determined):
- All nodes evaluate submissions from blocks N+1<570> to N+4<574>.
- Highest SHA-1 collision quality wins.
- Winner receives fees from Epoch X+3<116> (future epoch).
Submission Deadline
Solutions must be included in Bitcoin blocks during the submission window. Late submissions are invalid and will not be considered.