Bitcoin Forum
December 02, 2016, 10:30:44 PM *
News: Latest stable version of Bitcoin Core: 0.13.1  [Torrent].
 
   Home   Help Search Donate Login Register  
Pages: [1] 2 »  All
  Print  
Author Topic: Is there a maximum difficulty? Or can it just go up forever?  (Read 1988 times)
Dirt Rider
Member
**
Offline Offline

Activity: 111


View Profile
June 26, 2011, 04:26:24 AM
 #1

Is there a maximum difficulty (technical or otherwise)?  Or can it just go up forever?
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction. Advertise here.
1480717844
Hero Member
*
Offline Offline

Posts: 1480717844

View Profile Personal Message (Offline)

Ignore
1480717844
Reply with quote  #2

1480717844
Report to moderator
1480717844
Hero Member
*
Offline Offline

Posts: 1480717844

View Profile Personal Message (Offline)

Ignore
1480717844
Reply with quote  #2

1480717844
Report to moderator
elggawf
Sr. Member
****
Offline Offline

Activity: 308



View Profile
June 26, 2011, 04:30:16 AM
 #2

Well I suppose theoretically it can keep going up until you're looking for a nonce that leads to a specific hash, but I would imagine by the time we reach that point SHA-256 will have been replaced with something beefier, because I gather that's a pretty fuckin' long ways off.

^_^
Dirt Rider
Member
**
Offline Offline

Activity: 111


View Profile
June 26, 2011, 04:33:50 AM
 #3

Well, the client stores the difficulty in some variable - what are it's extents?  I mean that variable probably has a limit as to how many digits there can be - but maybe that is so high that it's not of concern in our lifetimes lol

edit: or maybe it will reach the the point where just one single hash can solve each block long before the highest physically allowed diff is reached?
demonofelru
Full Member
***
Offline Offline

Activity: 238



View Profile
June 26, 2011, 04:36:52 AM
 #4

From the wiki
What is the maximum difficulty?
The maximum difficulty is roughly: maximum_target / 1, which is a ridiculously huge number (about 2^224).
The actual maximum difficulty is when current_target=0, but we would not be able to calculate the difficulty if that happened. (fortunately it never will, so we're ok.)

Names do not matter; however, if you insist...id...
qualia8
Full Member
***
Offline Offline

Activity: 140


View Profile
June 26, 2011, 04:38:47 AM
 #5

maximum difficulty can be calculated starting with the total energy from the sun.  Wink
Dirt Rider
Member
**
Offline Offline

Activity: 111


View Profile
June 26, 2011, 04:42:09 AM
 #6

The maximum difficulty is roughly: maximum_target / 1, which is a ridiculously huge number (about 2^224).

And what variable type can hold a number that large?
Dirt Rider
Member
**
Offline Offline

Activity: 111


View Profile
June 26, 2011, 04:44:34 AM
 #7

The maximum difficulty is roughly: maximum_target / 1, which is a ridiculously huge number (about 2^224).

And what variable type can hold a number that large?

To clarify...  I am just thinking how a standard win32 integer type can only hold about 4.3 billion different values.  I know in theory that difficulty can grow up to at least 2^224 (ty demonefelru) but if the client tried to store that in a standard integer variable...

edit: What would the client do if difficulty was 9876543210000000000000000000000000000000000000000000000000000000000000000000000 00000000000000
nathanrees19
Full Member
***
Offline Offline

Activity: 196



View Profile
June 26, 2011, 04:45:40 AM
 #8

The maximum difficulty is roughly: maximum_target / 1, which is a ridiculously huge number (about 2^224).

And what variable type can hold a number that large?

To clarify...  I am just thinking how a standard win32 integer type can only hold about 4.3 billion different values.  I know in theory that difficulty can grow up to at least 2^224 (ty demonefelru) but if the client tried to store that in a standard integer variable...

The client appears to contain BigNum classes which can store arbitrarily large numbers.
demonofelru
Full Member
***
Offline Offline

Activity: 238



View Profile
June 26, 2011, 04:46:25 AM
 #9

Hehe all of that is beyond my comprehension I just remembered seeing it in the wiki so copy + pasted.

Names do not matter; however, if you insist...id...
Dirt Rider
Member
**
Offline Offline

Activity: 111


View Profile
June 26, 2011, 04:46:56 AM
 #10

The client appears to contain BigNum classes which can store arbitrarily large numbers.

Ah ok cool, so this is a non issue then I guess Smiley
Jaime Frontero
Full Member
***
Offline Offline

Activity: 126


View Profile
June 26, 2011, 04:49:22 AM
 #11

who cares?

when it gets to the point where a miner has to consider n-1=0 (where n=difficulty and 0=generated coin), it doesn't matter, does it?
GeniuSxBoY
Hero Member
*****
Offline Offline

Activity: 546



View Profile
June 26, 2011, 04:49:42 AM
 #12

Quote
The client appears to contain BigNum classes which can store arbitrarily large numbers.


This is a beautiful sentence.
Dirt Rider
Member
**
Offline Offline

Activity: 111


View Profile
June 26, 2011, 04:51:32 AM
 #13

who cares?

when it gets to the point where a miner has to consider n-1=0 (where n=difficulty and 0=generated coin), it doesn't matter, does it?

Well if the client reaches a maximum storage limit before bitcoin hits THE mining peak, then we will all care, but thankfully that seems a non issue.

edit: btw, your math requires that difficulty = 1
Dirt Rider
Member
**
Offline Offline

Activity: 111


View Profile
June 26, 2011, 04:52:05 AM
 #14

Quote
The client appears to contain BigNum classes which can store arbitrarily large numbers.


This is a beautiful sentence.
* Dirt Rider nods
FreeMoney
Legendary
*
Offline Offline

Activity: 1246


Strength in numbers


View Profile WWW
June 26, 2011, 05:11:33 AM
 #15

Target is what matters and difficulty is it's inverse. I think difficulty is stored somewhere, but the precise meaning has actually changed over versions. For actual block checking you look to see if it's hash is below target, difficulty is not used for that.

Play Bitcoin Poker at sealswithclubs.eu. We're active and open to everyone.
Jaime Frontero
Full Member
***
Offline Offline

Activity: 126


View Profile
June 26, 2011, 05:17:07 AM
 #16

who cares?

when it gets to the point where a miner has to consider n-1=0 (where n=difficulty and 0=generated coin), it doesn't matter, does it?

Well if the client reaches a maximum storage limit before bitcoin hits THE mining peak, then we will all care, but thankfully that seems a non issue.

edit: btw, your math requires that difficulty = 1

oops - you're right, i was wrong.  but we're both wrong:

Quote
n-1=0 (where n=infinite difficulty...)
theymos
Administrator
Legendary
*
Offline Offline

Activity: 2492


View Profile
June 26, 2011, 05:28:42 AM
 #17

The target is stored in a fixed-size form that basically says, "This many zeroes followed by these bytes, followed by enough zeroes to fill 256 bits". It can handle any number, with lower precision for higher numbers.

"Difficulty" isn't used for anything except display, so it doesn't matter how that is stored.

1NXYoJ5xU91Jp83XfVMHwwTUyZFK64BoAD
DJcoins
Jr. Member
*
Offline Offline

Activity: 31


View Profile
June 26, 2011, 05:29:57 AM
 #18

The difficulty is very limited...

By AMD's limited production facilities.
airdata
Sr. Member
****
Offline Offline

Activity: 406


View Profile
June 26, 2011, 05:46:09 AM
 #19

Will difficulty go up further whenever the blocks become 25btc instead of 50?  or will difficulty halve itself and the block quantity will not have any effect?
MoonShadow
Legendary
*
Offline Offline

Activity: 1666



View Profile
June 26, 2011, 06:22:55 AM
 #20

Difficulty is a made up metric to help humans understand the system better.  It is literally the number of times more difficult that the present target is to achieve than the minimum difficulty of 1, which is (and always has been) defined as the maximum target that the client was hardcoded to permit.  That maximum target is (roughly) 32 leading zeros in a 256 bit hash.  With each extra leading zero (target cuts in half, it's binary) the difficulty literally doubles; so as the target approaches zero, the difficulty metric would approach infinity.  The difficulty, however, is not actually used by the bitcoin system at all, the target is.  And since the target is a bounded 256 bit number, the system has no trouble storing the integer.

"The powers of financial capitalism had another far-reaching aim, nothing less than to create a world system of financial control in private hands able to dominate the political system of each country and the economy of the world as a whole. This system was to be controlled in a feudalist fashion by the central banks of the world acting in concert, by secret agreements arrived at in frequent meetings and conferences. The apex of the systems was to be the Bank for International Settlements in Basel, Switzerland, a private bank owned and controlled by the world's central banks which were themselves private corporations. Each central bank...sought to dominate its government by its ability to control Treasury loans, to manipulate foreign exchanges, to influence the level of economic activity in the country, and to influence cooperative politicians by subsequent economic rewards in the business world."

- Carroll Quigley, CFR member, mentor to Bill Clinton, from 'Tragedy And Hope'
Pages: [1] 2 »  All
  Print  
 
Jump to:  

Sponsored by , a Bitcoin-accepting VPN.
Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!