Bitcoin Forum

Bitcoin => Development & Technical Discussion => Topic started by: worldinacoin on April 11, 2012, 04:41:45 AM



Title: Measurement of Difficulty
Post by: worldinacoin on April 11, 2012, 04:41:45 AM
How do I measure difficulty?  For eg I see Difficulty   1626553 , what does 1626553 means?  How many ghash does it translate to?


Title: Re: Measurement of Difficulty
Post by: Foxpup on April 11, 2012, 05:10:42 AM
Difficulty is the maximum possible hash target divided by the current hash target. The average time to find a block (in seconds) is equal to the current difficulty times 2^32 (4,294,967,296) divided by your hashrate (in hashes per second) (eg, if your hashrate is 1 Ghash/s = 1,000,000,000 hashes per second then the average time it will take you to find a block is (1,626,553 x 4,294,967,296 / 1,000,000,000 = 6,985,992 seconds = 80 days).

Since the difficulty is adjusted so that miners find blocks on average once every 10 minutes (600 seconds), the total hashpower of the network is equal to the difficulty times 2^32 divided by 600 (eg, 1,626,553 x 4,294,967,296 / 600 = 11,643,319,900,351 hashes per second = 11.6 terahashes per second). That's how much hashpower you need to pull off a 51% attack. Good luck! ;D


Title: Re: Measurement of Difficulty
Post by: Revalin on April 11, 2012, 05:20:00 AM
tl;dr: it takes (difficulty * 232) hashes to solve a block on average.


Title: Re: Measurement of Difficulty
Post by: Red Emerald on April 11, 2012, 06:42:50 AM
tl;dr: it takes (difficulty * 232) hashes to solve a block on average.
2 paragraphs needed a tl;dr?


Title: Re: Measurement of Difficulty
Post by: Pieter Wuille on April 11, 2012, 10:36:33 AM
difficulty * 2^48 / 65535, actually :)


Title: Re: Measurement of Difficulty
Post by: Foxpup on April 11, 2012, 11:10:04 AM
difficulty * 2^48 / 65535, actually :)
Yes, that 0.0015% makes all the difference. ;)


Title: Re: Measurement of Difficulty
Post by: worldinacoin on April 14, 2012, 09:53:06 AM
Difficulty is the maximum possible hash target divided by the current hash target. The average time to find a block (in seconds) is equal to the current difficulty times 2^32 (4,294,967,296) divided by your hashrate (in hashes per second) (eg, if your hashrate is 1 Ghash/s = 1,000,000,000 hashes per second then the average time it will take you to find a block is (1,626,553 x 4,294,967,296 / 1,000,000,000 = 6,985,992 seconds = 80 days).

Since the difficulty is adjusted so that miners find blocks on average once every 10 minutes (600 seconds), the total hashpower of the network is equal to the difficulty times 2^32 divided by 600 (eg, 1,626,553 x 4,294,967,296 / 600 = 11,643,319,900,351 hashes per second = 11.6 terahashes per second). That's how much hashpower you need to pull off a 51% attack. Good luck! ;D

Thanks a million, I still do not get you on this part

Since the difficulty is adjusted so that miners find blocks on average once every 10 minutes (600 seconds), the total hashpower of the network is equal to the difficulty times 2^32 divided by 600 (eg, 1,626,553 x 4,294,967,296 / 600 = 11,643,319,900,351 hashes per second = 11.6 terahashes per second). That's how much hashpower you need to pull off a 51% attack. Good luck! Grin

Why is it 11 tera hashes for 51%, shouldn't it be 100% already?


Title: Re: Measurement of Difficulty
Post by: Revalin on April 14, 2012, 10:06:15 AM
If the rest of the network has 11.6 TH, and you have 11.6 TH, you have 50%.  If you go up to 23.2 TH, you'd have 67%.


Title: Re: Measurement of Difficulty
Post by: wachtwoord on April 14, 2012, 10:10:52 AM
difficulty * 2^48 / 65535, actually :)
Yes, that 0.0015% makes all the difference. ;)

What 0.0015% difference? 65535=2^16 so:

2^48 / 65535 = 2^48 / 2^16 = 2^(48-16)= 2^32

Showing the division does show better where the numbers come from though :)


Title: Re: Measurement of Difficulty
Post by: Revalin on April 14, 2012, 10:15:34 AM
65535=2^16

Nope.  2^16 = 65536 .


Title: Re: Measurement of Difficulty
Post by: Sukrim on April 14, 2012, 12:19:26 PM
What 0.0015% difference? 65535=2^16
A multiple of 2 that ends in 5? ::)

That's not the kind of math I learned in school... :P


Title: Re: Measurement of Difficulty
Post by: worldinacoin on April 14, 2012, 01:09:20 PM
I think he means 0 to 65535


Title: Re: Measurement of Difficulty
Post by: Foxpup on April 14, 2012, 01:51:27 PM
I think he means 0 to 65535

2^16 is always 65536, regardless of whether you count from 0 or from 1. The number is exactly 2^48/(2^16-1). I thought I could simplify things by saying it was 2^32, but that plan didn't seem to work as intended. ::)


Title: Re: Measurement of Difficulty
Post by: wachtwoord on April 14, 2012, 03:20:29 PM
Yes I see I have been number blind. I actually read 65536 so scrap that :)

2^48/((2^16)-1) is indeed the exact number