WTF is Proof of Work?

‘Proof of work’ is one of the terms used to describe the process miners use to build a blockchain.

Remember there are different building blocks in any blockchain?

The process of adding each block into the chain can happen in different ways. Proof of work is one of the most commonly used, including in the Bitcoin and Ethereum blockchains.

I wrote in a previous post about how miners add blocks into a blockchain, but I’ll recap here in more detail how miners do their thing:

Miners have to go through the proof of work process to solve a cryptographic puzzle. Once they solve the puzzle, they have ‘proved’ that they contributed a certain amount of effort to the task.

This is important because the fact a miner was prepared to give up their own electricity and computer power to solve the puzzle makes them more likely to add a block of transactions without tampering with the data. In this way proof of work contributes to the security and trust of the blockchain.

Confirmations

When a block is mined and added to the chain it has a ‘depth’ of one. Essentially it’s only one block deep into the chain.

As another block is mined and appended onto the chain after the first block, the first block has a depth of two.

The amount of energy contributed to mining a new block means there is a lower chance of it being reversed the more energy contributed to cementing it into the blockchain, or the more blocks behind it.

For example, if a block has 1 block after it, it is less cemented in than another block with 10 blocks after it. This means there is still a possibility the block could be reversed, but practically the amount of computing power that would be needed to ‘undo’ the block is so enormous it would be infeasible.

It is commonly accepted in the Bitcoin blockchain for example, that once a block has 6 blocks mined after it, it will no longer be reversed and be accepted as permanent. This is known as a ‘confirmation’. Transactions on the Bitcoin blockchain will show as unconfirmed until the block containing those transactions are 6 blocks deep.

Merchants who accept bitcoin can therefore set their own limits on how many blocks are required until a transaction is confirmed. They are recommended to do this to prevent what’s known as ‘double spending’, ie. Someone spending the same one bitcoin twice in different places – leading to the merchant not receiving a valid bitcoin.

So proof of work proves the miners have done some work to add the block to the blockchain.

What you are probably thinking is – what is this work that they’re doing?

Remember hashing? In case you haven’t read the summary in previous posts, here it is again:

Making a hash of it

A hash (or hash reference) is a random string of numbers. Hash functions are a method of creating an identifier for a set of data. You put something in, the function does its thing with the code, and it spits something out. That something is called a hash (or hash reference).

The hash spat out by the function is determined by whatever you put into it in the first place.
For example, when you input the sentence ‘Amanda loves blockchain’, the output might be ‘288ejald20038afljadl463283lqpppskw42839’. This is called the ‘hash’.

The hash of ‘Amanda loves blockchain’ will always be ‘288ejald20038afljadl463283lqpppskw42839 when that sentence is run through a hash function, because it is determined by the sentence I entered.

Hash references are usually irreversible, which means that given ‘288ejald20038afljadl463283lqpppskw42839’, I cannot work out that the input was ‘Amanda loves blockchain’.  I’ve just used random combinations of characters here, but usually hash references are set lengths depending on the function that produces them.
Hashing can therefore be used to prove the ‘identity’ or content of a particular set of data, without revealing the content itself.

Hashes are used in the structure of the blockchain to reference the data within the block. The header of each block also contains hashes to show what’s inside the block itself. Hashes are a short-form summary of data if you like. A hash is non-reversible because it has been through the cryptographic hash function, so you can’t retrieve the data going backwards from the hash, without guessing the input and hashing it to get a result matching the hash.

Block headers

Block headers are the part of each block that aggregate the information inside them and order the blocks within the blockchain itself.

Block headers contain various bits of information:

– Reference to previous block (parent) – builds the blockchain structure
– Hash of all data (eg. Transactions in the Bitcoin blockchain)
– Timestamp – shows when the block was mined
– Nonce – number that when combined with block data and put through a hash function produces the solution to the puzzle
– Target – the miner aims to get a hash lower than this number

Solving the puzzle

The puzzle miners need to solve involves finding a hash of the block header that is less than the target. Remember you can’t go backwards from a hash to the source data?

The only way to find a hash less than the target number is to hash the block header repeatedly and by trial and error find a number that matches this criterion. But if you keep hashing the same data you will always get the same hash output. You need a way of changing the data slightly each time to make the hash different at the end.

You therefore need to include some extra piece of information that will keep changing, whilst the block header itself won’t change. Each time the miner hashes the data they will add a number called a ‘nonce’. This nonce is just a way of hashing the data lots of times and changing only one thing about the data each time, to get a different hash result.

Prove it!

Eventually, the miner will hash the block header and the nonce, and will get a hash result that is less than the target number. The nonce used to get that hash is the ‘solution’ to the puzzle because it is proof the miner went through the different nonce options, adding them to the block data and hashing until it found the correct one that is less than the target.

The way miners can ‘prove’ their work is that anyone else can hash the same data on the blockchain with the nonce solution and they will get exactly the same hash of the block header.

 

Any other proofs?

The hash algorithm used in the Bitcoin blockchain is called ‘SHA256’, which is the most widely-used proof-of-work system. There are other hash algorithms that can also be used.

Proof of work is not the only consensus mechanism out there in the blockchain world that is used to form the blockchain structure. There are other consensus options like proof of stake and proof of space. These tend to use less electricity or energy than proof of work and can therefore be more environmentally friendly. Ethereum will be moving to proof of stake in the near future partly for these reasons.

So now you know about the underlying system that drives the miners in blockchains using proof of work. You have an extra building block of knowledge under your belt so congrats! In future posts I will go into proof of stake and other concepts around consensus mechanisms and the inner workings of blockchain systems – so make sure you check those out too!

268 Trackbacks / Pingbacks

  1. generic viagra cost
  2. cialis coupon walgreens
  3. cialis coupons
  4. cialis online canada
  5. where to buy cialis online
  6. viagra for sale
  7. cheap erectile dysfunction pill
  8. erectile dysfunction medications
  9. male erection pills
  10. cialis 10 mg
  11. cvs pharmacy
  12. cheap vardenafil
  13. vardenafil cost
  14. san manuel casino online
  15. empire city casino online
  16. generic viagra canada
  17. real money casino games
  18. hollywood casino online real money
  19. buy cialis online overnight shipping
  20. no credit check loans
  21. payday advance
  22. personal loan
  23. viagra 100mg
  24. best real money online casinos
  25. cialis 20
  26. cialis to buy
  27. 5 mg cialis
  28. efcaxdszdfszgd
  29. m980u9oy9y98o8y9pm
  30. generic for cialis
  31. m90uojmuy7hjhhhh
  32. rxc43rw435tr53t453t
  33. buy cialis
  34. cialis 20
  35. viagra generic name
  36. casinos online
  37. slot games
  38. chlid seat policy
  39. chauffeur GATWICK TO BRIGHTON
  40. play casino
  41. slot machine games
  42. viagra generic name
  43. viagra online canada
  44. what is sildenafil
  45. buy real viagra online
  46. viagra for men
  47. Face Mask Made In USA
  48. cialis pills
  49. generic viagra for sale
  50. cxqw234xracrwcr4
  51. xdsffx4crta4rtxa34w
  52. cheapest viagra
  53. viagra connect
  54. cialis 20 mg
  55. generic viagra without subscription walmart
  56. buy pfizer viagra online
  57. purchasing cialis online
  58. viagra buy
  59. viagra overnight delivery
  60. buy generic viagra
  61. tadalafil online
  62. casino
  63. casino gambling
  64. droga5.net
  65. viagra where to buy in georgia
  66. http://viagrabs.com/#
  67. herb viagra where to buy
  68. www.jueriy.com
  69. http://cialistodo.com
  70. buy viagra online without script
  71. when will generic cialis be available
  72. cialis cialis
  73. buy viagra online
  74. viagra online
  75. generic viagra
  76. cheap cialis
  77. generic viagra
  78. online viagra
  79. viagra canada
  80. order viagra online
  81. viagra generic
  82. viagra pill cutter
  83. shoppers drug mart cialis
  84. proviagra
  85. viagra samples
  86. buy cialis nz
  87. cialis overdose
  88. levitra vs viagra
  89. how much viagra cost
  90. viagra online pharmacy
  91. online viagra
  92. uscojufm9r4tue4urtse4
  93. karlsruhe
  94. hạt maccahạt mắc ca
  95. https://www.manytube.net/
  96. https://royalcbd.com/product/cbd-capsules-25mg/
  97. royal cbd
  98. viagra price in australia
  99. https://royalcbd.com/product/cbd-gummies-10mg/
  100. https://royalcbd.com/product/cbd-cream/
  101. https://royalcbd.com/product/cbd-roll-on-gel/
  102. royal cbd
  103. royal cbd oil
  104. https://royalcbd.com/product/cbd-oil-1000mg/
  105. https://royalcbd.com/product/cbd-oil-2500mg/
  106. cbd oil
  107. purchase generic viagra online
  108. Buy generic viagra
  109. canadian pharmacy com viagra
  110. mitrade lua dao
  111. sobreposição
  112. cheap viagra professional
  113. about
  114. canada pharmacy canada pharmacy
  115. 메리트카지노 사이트
  116. pfizer viagra brand
  117. xe88 casino
  118. ky
  119. green skin care products
  120. 메리트카지노 주소
  121. Discount viagra online
  122. Get viagra
  123. cost of cialis at walmart
  124. proven supplement
  125. blue pill viagra
  126. Buy cheap viagra
  127. Buy viagra professional
  128. free porn video
  129. magnitic knife block
  130. värdera klocka online
  131. Loozap Immobilier Congo Brazzaville
  132. silencil pills reviews
  133. slot game online for mobile malaysia
  134. my918kissapk.com
  135. escort bayan
  136. scam site
  137. viagra super active ingredients
  138. transcription services online
  139. sàn forex
  140. TAXI TO GATWICK
  141. viagra us pharmacy
  142. health supplements
  143. Rumah bsd tangerang
  144. here
  145. sisteme de copiat
  146. sàn forex
  147. new romance movies 2020
  148. https://www.bbdcinema.com
  149. Appliances
  150. agencia detectives toledo
  151. viagra pills india pharmacy
  152. buy mushrooms canada
  153. canadian pharmacy
  154. film izle
  155. film izle
  156. hd film izle
  157. scrap car removal burnaby (604) 398-5218
  158. skin care products
  159. handyman in vancouver bc
  160. learn about canada
  161. best casino
  162. how to understand odds in sports
  163. generic cialis clips
  164. Drucker mieten
  165. Aaron Lal
  166. viagra women effects
  167. my mega888 angpao
  168. Adam Robinson Bendigo
  169. my mega888 account
  170. https://youtu.be/qSE-R_LQJww
  171. malaysia mega888 easy win
  172. stakexchain registration
  173. Branda Mariscal
  174. リアルラブドール
  175. 613 lace wig
  176. wigs
  177. 613 lace wig
  178. WAXdoll
  179. mega888 slot game list
  180. this website
  181. 34cr4rxq3crq34rq3r4
  182. download mega888 scanner
  183. Julian Di Benedetto
  184. payroll services singapore
  185. Buy Weed Online
  186. Kingpen
  187. generic prescription viagra
  188. stray kids merchandise
  189. c34r54wxw4r34c3
  190. viagra substitutes
  191. offerweightloss.com find-weight-loss-programming
  192. offerweightloss.com supplements
  193. galaforex scam
  194. residential fire sprinkler systems
  195. social media essay
  196. cialis with dapoxetine 60mg
  197. twitter login username
  198. 플렉스홀덤
  199. kienthucfx
  200. www.m-wclub365.com/
  201. silencil side effects
  202. mma
  203. butt lifter jeans
  204. herb viagra
  205. platforma ilektroniko emporio
  206. ultimate sales
  207. vvip96.net/rollex-casino/
  208. cute dog beds
  209. cricut files
  210. t-shirt boy
  211. room makeover
  212. Vefa
  213. romanticnight.eu
  214. gift ideas for boyfriend
  215. https://www.juneauempire.com/marketplace/best-cbd-for-dogs-with-pain-top-3-picks-2020/ best cbd for dogs
  216. cbd near me
  217. https://www.bellevuereporter.com/marketplace/best-cbd-gummies-for-pain-2020-buyers-guide/ best cbd gummies
  218. cbd oil for dogs
  219. soy candles jars
  220. cbd oil
  221. best cbd for dogs
  222. best cbd oil
  223. best cbd oil for dogs
  224. best cbd gummies
  225. best cbd oil for anxiety
  226. best cbd gummies
  227. best cbd for dogs
  228. my latest blog post
  229. billing software
  230. sales executive
  231. viagra orders
  232. GeneVihodsef
  233. led bluetooth nebula cloud galaxy projector
  234. virbac enzymatic toothpaste
  235. handmade
  236. waterproofing contractors near me
  237. kpop clothes
  238. cbd for dogs
  239. best cbd oil for pain
  240. cbd gummies for pain
  241. buy instagram followers
  242. cbd gummies for sale
  243. cbd dog treats
  244. cbd for sale
  245. best cbd gummies for anxiety
  246. cbd dog treats
  247. cbd dog treats
  248. cbd near me
  249. dog
  250. mega888 apk
  251. cbd gummies for anxiety
  252. IPTV Smarters roku tv
  253. 토토사이트
  254. real doll fr
  255. https://meine.rheinische-anzeigenblaetter.de/alfter/profile-3831/wie-effektiv-sind-gruppenkalender
  256. Qubittech
  257. 3mmc.nu
  258. Geruson
  259. 강남 안마
  260. Puppies For Adoption
  261. 강남 안마
  262. https://www.techfacts.de/ratgeber/ibm-spss-wofuer-eignet-sich-die-analyse-software/
  263. compare free alternative workflow management tools
  264. 강남안마
  265. kerala nursing council registration renewal phone number
  266. https://tageoderstunden.de/lotus-notes-ein-stueck-computer-historie/
  267. loans
  268. moj dom sulecin

Leave a Reply