Author

Topic: Proof of Work (Read 435 times)

sr. member
Activity: 294
Merit: 251
November 04, 2016, 11:37:31 AM
#8
I am lost in ocean. Really I can't understand what you guys are talking about, well i  could capture duke of the points, like hashrate, difficulty and since other terms. Previously i thought bitcoin is a easy one but reading this post i am completely lost in complexity.
Will anyone show mercy by explaining me little bit more in simple manner.

Actually we don't really need to understand all this things, if all experts say it's safe, just believe... It's like the computer hardware, we don't know how it work however we are here using computers...

Nothing is perfect in PoW btw, you can find 51% attack...
legendary
Activity: 2114
Merit: 1090
=== NODE IS OK! ==
November 04, 2016, 09:23:04 AM
#7
In layman's terms: Proof of work together with difficulty retargeting prevents network from forking, because it is secured by the computing power through hash calculations.

It's like giving a class full of students a very hard math task, preferably requiring guessing. Someone will come up first, and it will take others a considerably longer time. So instead of calculating it themselves, they just copy (the block) from the smart lucky student .
legendary
Activity: 4396
Merit: 4755
November 04, 2016, 08:47:17 AM
#6
I am lost in ocean. Really I can't understand what you guys are talking about, well i  could capture duke of the points, like hashrate, difficulty and since other terms. Previously i thought bitcoin is a easy one but reading this post i am completely lost in complexity.
Will anyone show mercy by explaining me little bit more in simple manner.

bitcoin as atleast 10 security measures that protect the data from malicious editing, tampering deleting, replacing or lose.
this topic is just concerning one of them. the other nine+ are just as complex in their own ways. which makes bitcoin work so well.

but in lets have a go at wording it differently concerning just POW

in laymens analogy
imagine bacon, you want to protect it from going bad by making a sandwich. but one slice of bread is not enough

for a sandwich to be valid, it had to have a slice of bacon between one slice of bread the same as the previous sandwich and a special slice of bread
now imagine you will only trust the sandwich maker who could make perfect bacon sandwiches the fastest.
so many people are doing this, and the first person who makes a sandwich announces it.. then lots of people check the bread is right bacon is right and layered right. if it passes, its added to the valid stack of sandwiches.
some get it wrong and it ends up in the bin

so sandwich makers are fighting to do this. some slip up and get the wrong type of bacon and/or bread.
after 2016 perfect sandwiches are made knowing they are all valid ofcourse. its then time checked and if those sandwiches are made in under 2 weeks the sandwich becomes more difficult. the next lot of sandwiches requires a tomato slice to be included.

now everyone is fighting to make the perfect bacon and tomato sandwich perfectly but taking more time because now they have to slice tomatos too.

again after 2016 perfect bacon and tomato sandwiches are made its timed. and if those sandwiches, are made in under 2 weeks the sandwich becomes more difficult. the next lot of sandwiches requires a tomato slice and a lettuce leaf to be included.

now sandwich makers become more organised and work together to do it more efficiently. but there is a moral unwritten rule that no groups can work together above a certain percentage of the entire sandwich makers combined.

this mechanism ensures the best sandwiches available and where no one else can make them as fresh and as fast and so no one else can beat the sandwich makers to corrupt the sandwich industry.

right now it takes upto 125,000 sandwich makers split up into upto 20 teams, two weeks to make 2016 very complex sandwiches with many more ingredients

translated
imagine data, you want to protect it from corruption by making a hash. but one hash is not enough

for a block to be valid, it had to have the data aswell as a hash of the previous block and another hash with lets say 0000 for now, at the start
now imagine you will only trust the hasher(miner) who could make perfect blockhash the fastest.
so many miners are doing this, and the first miner who makes a blockhash announces it.. then lots of nodes and miners check the hash is right data is right and everything matches. if it passes, its added to the chain of blocks.
some get it wrong and it ends up orphaned

so miners are fighting to do this. some slip up and get bad data or bad hash.
after 2016 blocks are made knowing they are all valid ofcourse. its then time checked and if those blocks are made in under 2 weeks the blocks becomes more difficult. the next lot of blockhashes requires a fifth 0 to be included.

now everyone is fighting to make the perfect 00000 blockhash but taking more time because now they have to deal with 5 '0's.

again after 2016 perfect blocks and block hashes are made its timed. and if those blocks, are made in under 2 weeks the blocks becomes more difficult. the next lot of blockhashes requires a sixth '0' to be included.

now miners become more organised and 'pool' together to do it more efficiently. but there is a moral unwritten rule that no 'pool' can work together above a certain percentage of the entire mining power combined.

this mechanism ensures the perfectly valid blocks available and where no one else can make as many valid blocks as fast and so no one else can beat the mining pools to corrupt blockchain

right now it takes upto 125,000 ASIC miners split up into upto 20 pools, two weeks to make 2016 very complex sandwiches with many more ingrediants

hopefully that should cover the concept of proof of work
full member
Activity: 238
Merit: 100
November 04, 2016, 07:48:49 AM
#5
I am lost in ocean. Really I can't understand what you guys are talking about, well i  could capture duke of the points, like hashrate, difficulty and since other terms. Previously i thought bitcoin is a easy one but reading this post i am completely lost in complexity.
Will anyone show mercy by explaining me little bit more in simple manner.
legendary
Activity: 4396
Merit: 4755
November 04, 2016, 06:01:39 AM
#4
Alright, I understand but why is that increasing so much security to a blockchain the proof-of-work concept?

Thank you!!!

if the difficulty was only 0000
one computer can find a solution in 0.001seconds

meaning if you made a block of data, i can also make a block of data.
lets say you made a block and waited 2 seconds before making another.
i can make 2000 blocks in that time you waited. and thus everyone follows my chain of blocks because i have more blocks then you. so your data will get dropped. you then have to try to catch back up by constantly working at it to overtake me

however
by making it require the strength of lets say 125,000 specially configured machines to need to take 2weeks to make 2016 blocks
no single computer alone can do it faster for them to have more blocks then the combined hashpower. thus trying to override that data becomes extremely hard.

especially if that single computer has to also build a new set of 437310 blocks just to get to the count right now before even trying to overtake
full member
Activity: 237
Merit: 100
November 04, 2016, 05:50:13 AM
#3
Alright, I understand but why is that increasing so much security to a blockchain the proof-of-work concept?

Thank you!!!
legendary
Activity: 4396
Merit: 4755
November 04, 2016, 04:39:22 AM
#2
https://en.bitcoin.it/wiki/Proof_of_work

Example

Let's say the data that you are going to do work on is "Hello, world!". Your target is to find a variation of it, where you SHA-256 hash the data to a hash value beginning with '0000'. You vary the data by adding an integer value to the end called a nonce and incrementing it each time:

"Hello, world!0" => 1312af178c253f84028d480a6adc1e25e81caa44c749ec81976192e2ec934c64
"Hello, world!1" => e9afc424b79e4f6ab42d99c81156d3a17228d6e1eef4139be78e948a9332a7d8
"Hello, world!2" => ae37343a357a8297591625e7134cbea22f5928be8ca2a32aa475cf05fd4266b7
...
"Hello, world!4248" => 6e110d98b388e77e9c6f042ac6b497cec46660deef75a55ebc7cfdf65cc0b965
"Hello, world!4249" => c004190b822f1669cac8dc37e761cb73652e7832fb814565702245cf26ebb9e6
"Hello, world!4250" => 0000c3af42fc31103f1fdc0151fa747ff87349a4714df7cc52ea464e12dcd4e9

Finding a match for "Hello, world!" takes you 4251 tries to have zeroes in the first four digits)
4251 hashes on a modern computer is not very much work (most computers can achieve at least 4 million hashes per second). Bitcoin automatically varies the difficulty by:
requiring more zeros at the start, which requires more attempts if the results are being found too fast over a 2 week period
requiring less zeros at the start, which requires less attempts if the results are being found too slowly over a 2 week period

this adjustment is done by checking how fast 2016 blocks are created. if it is under two weeks it has to become harder, if over two weeks it has to become easier.

this 2016 blocks and 2 week average requirement, is what calculates down to be roughly a block every 10 minutes on average.
but a 10minute rule is not coded into bitcoin. only the 2016 block on average a fortnight is.

so one block can be solved in [random but lets say]10 seconds the next block can be solved in [random but lets say]2 hours the next block solved in [random], the next block in [random], next block in [random], etc,etc. but when added together should always be near to 2016 blocks taking 2 weeks.
if not then the difficulty is adjusted to try getting it to that 2 weekly average
full member
Activity: 237
Merit: 100
November 04, 2016, 03:59:16 AM
#1
Could somebody please explain why proof of work is adding a lot security to a blockchain like bitcoin?

Thx guys
Jump to: