Exploring Technology one step at a time
For past duo of months, there has bot an enlargened concentrate on bitcoin energy usage. Latest examples are – Vice article and IEEE.
This postbode attempts to explain bitcoin’s energy usage. It also attempts to add some perspective on the energy problem.
Warning: This article gets a bit technical.
Table of Contents
“It is digital money” is simplest explanation for bitcoin.
Digital currencies have an inherent problem. Let’s take an example. A digital currency called “MyDitigalCoin”:
If I need more MyDigitalCoin I can create a copy.
Tada! I have Two coins now. It is called dual spending.
The solution is to record ownership information.
Ownership and amount can be verified using this record. You can now reject every “copy” coin. This record is called a ledger.
Banks use ledgers to store your ownership and spending. Banks secure and maintain the private ledgers. Government authorities act spil monitoring authority for the banks.
A cryptocurrency’s ledger is open to everyone. Anyone can check and edit the ledger. Hence the name – “public ledger”.
Public ledgers have two issues:
- Editing the ledger requires a trusted party.
- The identity verification of the trusted party should be prompt.
Proof of Work
Wij discussed “proof of work” earlier on this blog here.
Proof of Work asks a miner to generate a token (nonce). The nonce verification happens ter less than a 2nd.
After verification, the miner can edit the ledger and earn prize coins.
But, there is a problem.
Latency and “Blockchains”
On the internet there is always a delay inbetween act and reaction. This time delay is called latency.
Te Bitcoin, it is the time difference inbetween block creation(activity) and acceptance by all peers(reaction). This process of a block being accepted by other peers is known spil block propagation.
Because of this delay there are always numerous versions of a blockchain. Wikipedia entry on blockchain has a diagram:
Green opbergruimte is our genesis block. Black boxes are blocks accepted by the entire network. This chain of black blocks is called main chain.
Purple and black blocks are mined at the same time. Purple boxes are valid blocks but not accepted by the entire network. Thesis are called orphan blocks.
This latency causes two problems.
Very first, wij don’t know if an accepted transaction is ter an orphan or main chain block. This can cause dual spending.
Visually, think a transaction included te purple block #1 but not black block # 1. This can be due to latency or someone maliciously switching the structure. Whatever the case, coins from purple # 1 can be re-spent and included ter black block #Two.
2nd, orphan and main blocks both require same mining effort. So, orphan block is essentially wasting computing resource. Additionally, the network needs to determine the valid block and build from there . This is called block reorganization.
Think about the 2nd and 3rd purple block. That is a chain of two blocks. So, cryptocurrency network needs to work together and find if that chain is invalid.
- 95% transactions take 22 2nd
- 95% of blocks take
There is a 13 seconds window where two different people can find a block. Combine it with the block generation time of Ten minutes, that is almost 2% chance of an orphan block. This situation wasgoed even worse back te 2013. Block propagation wasgoed 125 seconds or 20% chance of an orphan block.
Confirmations and Maturity
The solution for transaction kwestie is to measure probability of dual spending. All cryptocurrencies use the same metric – confirmations.
Once a transaction is included te a block, number of confirmation becomes 1. Probability of a block being an orphan grows smaller and smaller with each extra block added.
All crypotcurrencies have the “confirmations” section on the transaction pagina. Example bitcoin:
Here, the number of confirmations is Two. There is 1 extra blocks on top of the transaction block. So, the latest block number/lock time is 495750. Now, the block confirmations will be more than 1000 now.
Block prizes, the freshly minted coins, need 100 confirmations. This is known spil block maturity. Fresh coins can only be spend after maturing.
Revisiting Block Generation and Difficulty
Very first, selecting a block generation time is a balancing act. This needs to be:
- High to delay blocks and minimize probability of an orphan block.
- Low to permit quicker transactions.
- Low to permit swifter confirmations. Confirmation counting starts from transaction block.
Bitcoin block generation time is Ten minutes. The recommended number of confirmations is 6 blocks. So, after an hour a bitcoin transaction is almost immune from dual spending.
2nd, difficulty retargeting keeps the network within generation time boundary. Difficulty increases, if block generation is too rapid. Mining becomes stiffer. Switch sides is also true. Difficulty reduces, if blocks are taking too much time.
There is a ordinary relation inbetween difficulty and PoW or hashing – Higher difficulty requires more hashes.
Te Bitcoin, difficulty switches every Two weeks. Additionally, it cannot switch by more than Four times the current difficulty.
Brief History of Bitcoin Difficulty
When bitcoin began, the difficulty wasgoed 1. The very first difficulty hop to 1.125 happened 11 months zometeen te December 2009. Spil more people found bitcoin, the difficulty enhanced leisurely.
A watershed uur happened when Laszlo Hanecz wasgoed able to find a way to mine coins using his GPU. Here’s the passage from Digital Gold by Nathaniel Popper:
“Laszlo’s CPU had bot winning, at most, one block of 50 Bitcoins each day, of the approximately 140 blocks that were released daily. Once Laszlo got his GPU card hooked ter he began winning one or two blocks an hour, and periodically more. On May 17 he won twenty-eight blocks, thesis wins talent him fourteen hundred fresh coins that day.
Satoshi knew someone would eventually spot this chance spil Bitcoin became more successful and wasgoed not astonished when Laszlo e-mailed him about his project. But te responding to Laszlo, Satoshi wasgoed clearly ripped. If one person wasgoed taking all the coins, there would be less of an incentive for fresh people to join ter.
“I don’t mean to sound like a socialist,” Satoshi wrote back. “I don’t care if wealth is concentrated, but for now, wij get more growth by providing that money to 100% of the people than providing it to 20%.”
Spil a result, Satoshi asked Laszlo to go effortless with the “high powered hashing,” the term coined to refer to the process of plugging an input into a hash function and witnessing what it drool out.
But Satoshi also recognized that having more computing power on the network made the network stronger spil long spil the people with the power, like Laszlo, dreamed to see Bitcoin succeed.”
With people racing to find more blocks, difficulty enlargened steadily. Te next four years, it went from just 1 to Trio million.
Many people were not interested te investing money the R&,D money required for ASICs. But, ter 2013 bitcoin prices touched $100 and abruptly there wasgoed rente ter specialized bitcoin miners.
The miners began shipping towards end of 2013. While ASICs promised more efficient mining they came at a cost. The difficulty of bitcoin doubled ter Two months. This wasgoed truly “Tragedy of Commons“.
By the time 2013 ended difficulty enhanced by 1000 times to 1 giga hashes. Today, difficulty has enlargened by 1,500 times to 1.Five Terra hashes.
Now, let’s see the relationship inbetween hashing and energy usage.
This machine can do 13.Five Terra Hashes vanaf 2nd (TH/s) or 13,500 Giga Hashes vanaf 2nd (GH/s). Here’s a table of coins at different difficulty levels: