Bitcoin Forum
May 07, 2024, 04:50:36 AM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: 1 2 [All]
  Print  
Author Topic: Is there a maximum difficulty? Or can it just go up forever?  (Read 2311 times)
Dirt Rider (OP)
Member
**
Offline Offline

Activity: 111
Merit: 10


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?
1715057436
Hero Member
*
Offline Offline

Posts: 1715057436

View Profile Personal Message (Offline)

Ignore
1715057436
Reply with quote  #2

1715057436
Report to moderator
1715057436
Hero Member
*
Offline Offline

Posts: 1715057436

View Profile Personal Message (Offline)

Ignore
1715057436
Reply with quote  #2

1715057436
Report to moderator
1715057436
Hero Member
*
Offline Offline

Posts: 1715057436

View Profile Personal Message (Offline)

Ignore
1715057436
Reply with quote  #2

1715057436
Report to moderator
"In a nutshell, the network works like a distributed timestamp server, stamping the first transaction to spend a coin. It takes advantage of the nature of information being easy to spread but hard to stifle." -- Satoshi
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
1715057436
Hero Member
*
Offline Offline

Posts: 1715057436

View Profile Personal Message (Offline)

Ignore
1715057436
Reply with quote  #2

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

Activity: 308
Merit: 250


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 (OP)
Member
**
Offline Offline

Activity: 111
Merit: 10


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
Merit: 100



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: 237
Merit: 100


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 (OP)
Member
**
Offline Offline

Activity: 111
Merit: 10


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 (OP)
Member
**
Offline Offline

Activity: 111
Merit: 10


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
Merit: 100



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
Merit: 100



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 (OP)
Member
**
Offline Offline

Activity: 111
Merit: 10


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
Merit: 100


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: 616
Merit: 500


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.

Be humble!
Dirt Rider (OP)
Member
**
Offline Offline

Activity: 111
Merit: 10


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 (OP)
Member
**
Offline Offline

Activity: 111
Merit: 10


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
Merit: 1014


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
Merit: 100


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: 5194
Merit: 12972


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
Newbie
*
Offline Offline

Activity: 31
Merit: 0


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

The difficulty is very limited...

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

Activity: 1148
Merit: 501



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?

▄▄▄▄███████▄▄▄▄        ▄▄▄▄███████▄▄▄▄        ▄▄▄▄███████▄▄▄▄
▄▄█████████████████▄▄  ▄▄█████████████████▄▄  ▄▄█████████████████▄▄
▄█████████████████████▄▄█████████████████████▄▄█████████████████████▄
██████████▀▀  █████████████████▀      ▀████████████████▀      ▀████████
▄█████████     ████████████████   ▄██▄   ██████████████   ▄██▄   ███████▄
████████████   ███████████████████████   ████████████████████▀   ████████
████████████   █████████████████████▀   ▄██████████████████     █████████
████████████   ███████████████████▀   ▄██████████████████████▄   ████████
▀███████████   █████████████████▀   ▄██████████████████   ▀██▀   ███████▀
███████████   ████████████████          ███████████████▄      ▄████████
▀█████████████████████▀▀█████████████████████▀▀█████████████████████▀
▀▀█████████████████▀▀  ▀▀█████████████████▀▀  ▀▀█████████████████▀▀
▀▀▀▀███████▀▀▀▀        ▀▀▀▀███████▀▀▀▀        ▀▀▀▀███████▀▀▀▀
......swap...Swap, Earn, Bridge, Mint Crypto
& NFT in Multiple Chains
.
...MVP LIVE...
.
MoonShadow
Legendary
*
Offline Offline

Activity: 1708
Merit: 1007



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'
Dirt Rider (OP)
Member
**
Offline Offline

Activity: 111
Merit: 10


View Profile
June 26, 2011, 03:41:24 PM
 #21

Thank you theymos and MoonShadow for the detailed explanations!!  One more thing I cross off my list of things to wonder about Smiley
Pages: 1 2 [All]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!