Connected
4
Difficulty
0 H/s
Network Hashrate
0
Blocks Mined
Mining Control
Idle
0 H/s
Hashrate
0
Current Nonce
4
Current Mining Segment: 1 of 6
Time remaining: 01:00:00
Next segment available in: 00:00:00
0.000000 BTC
Total Mined Today
Proof-of-Work Visualization

Current Mining Process

Block Data:
...
Target:
Hash must start with 0000
Current Hash:
...
Result:
Searching for valid hash...
Mining Explanation

What is Bitcoin Mining?

Bitcoin mining is the process of adding transaction records to Bitcoin's public ledger of past transactions (the blockchain). This ledger of past transactions is called the blockchain as it is a chain of blocks.

How Proof-of-Work Functions

The proof-of-work system requires miners to find a number called a "nonce". When this nonce is combined with the block data and hashed, it produces a hash that meets specific criteria - typically starting with a certain number of zeros.

The steps are:

  1. Take the block data (previous hash, timestamp, transactions, etc.)
  2. Add a nonce (starting from 0)
  3. Calculate the SHA-256 hash of this combined data
  4. Check if the hash meets the difficulty target (starts with a specific number of zeros)
  5. If not, increment the nonce and try again

This process requires significant computational power, which secures the network by making it economically impractical to attack.

Blockchain
Merkle Tree
Whitepaper
Bitcoin: A Peer-to-Peer Electronic Cash System
Satoshi Nakamoto

A purely peer-to-peer version of electronic cash would allow online payments to be sent directly from one party to another without going through a financial institution. Digital signatures provide part of the solution, but the main benefits are lost if a trusted third party is still required to prevent double-spending. We propose a solution to the double-spending problem using a peer-to-peer network.

The network timestamps transactions by hashing them into an ongoing chain of hash-based proof-of-work, forming a record that cannot be changed without redoing the proof-of-work. The longest chain not only serves as proof of the sequence of events witnessed, but proof that it came from the largest pool of CPU power.

4. Proof-of-Work

To implement a distributed timestamp server on a peer-to-peer basis, we will need to use a proof-of-work system similar to Adam Back's Hashcash, rather than newspaper or Usenet posts. The proof-of-work involves scanning for a value that when hashed, such as with SHA-256, the hash begins with a number of zero bits. The average work required is exponential in the number of zero bits required and can be verified by executing a single hash.

For our timestamp network, we implement the proof-of-work by incrementing a nonce in the block until a value is found that gives the block's hash the required zero bits. Once the CPU effort has been expended to make it satisfy the proof-of-work, the block cannot be changed without redoing the work. As later blocks are chained after it, the work to change the block would include redoing all the blocks after it.