Author

Topic: What is this mining for? (Read 2036 times)

hero member
Activity: 590
Merit: 500
May 06, 2011, 01:48:38 AM
#18

assuming everyone in the world had as much hashing power as the entire network today (this would be about 7 petahashes/second)

Do you mean 7 Zettahashes/second? (1 Terahash/second * 7billion)

yes, that is what i meant.  i think i posted that before the caffeine kicked in.
member
Activity: 94
Merit: 10
May 05, 2011, 11:22:06 PM
#17

assuming everyone in the world had as much hashing power as the entire network today (this would be about 7 petahashes/second)

Do you mean 7 Zettahashes/second? (1 Terahash/second * 7billion)
legendary
Activity: 3080
Merit: 1080
May 05, 2011, 10:28:51 PM
#16
First I'd like to clarify: The "Generate coins" option in the client is a useless relic

And quite a barbarous one, at that.  Wink

hahahah...Tongue good one..

Worry not eventually that feature will be taken out of the official bitcoin client. I am one who believes that mining should be a separate and dedicated function of the network that is suitable only for those with high end graphics cards. At the moment CPU mining is pretty much pointless unless you don't pay your electricity and even if you don't it's a huge waste of energy.

hero member
Activity: 675
Merit: 502
May 05, 2011, 12:09:42 PM
#15
First I'd like to clarify: The "Generate coins" option in the client is a useless relic

And quite a barbarous one, at that.  Wink
ffe
sr. member
Activity: 308
Merit: 250
May 05, 2011, 11:35:22 AM
#14
touch
hero member
Activity: 590
Merit: 500
May 05, 2011, 11:13:08 AM
#13
With everyone in the world producing huge amount of hashes, wouldn't all hashes of all sorts be produced at some time, breaking every encryption system?

only for a suitably large definition of "huge".  this is what the difficulty/target adjusts for.

atmax difficulty, the probability of a valid block being found is about 1/2^224.

assuming everyone in the world had as much hashing power as the entire network today (this would be about 7 petahashes/second), a valid block would be generated about once every 10^34 years.   this is considerably greater than the time it will take for every star in the universe is go out.
newbie
Activity: 43
Merit: 0
May 05, 2011, 10:15:44 AM
#12
With everyone in the world producing huge amount of hashes, wouldn't all hashes of all sorts be produced at some time, breaking every encryption system?
Yes?

Having a big list of all the passwords in the world is useless if you don't know the correct username. Does it make sense that way? Smiley
donator
Activity: 2058
Merit: 1054
May 05, 2011, 09:47:29 AM
#11
The nonce is a 32-bit integer which means its value goes up to 4 billion. When all those values are tried, the server needs to give a new work unit where some irrelevant stuff are altered in the generation transaction, thus changing the Merkle root.

The "useless relic" in the client still has a chance (even if it's low) to generate a valid hash, doesn't it?
Yes, but it's so low it's not worth considering.

I could be wrong on this as I don't know the technicals, but the way I believe it works is that the merkle root is the previous block hash, and when you get an invalid hash (or rather, one that doesn't meet the difficulty requirement) the nonce is incremented by one.
No, the Merkle root is the hash at the root of the Merkle tree of the transactions in the current block. The previous block hash is another part of the header which also goes into the current block's hash.
sr. member
Activity: 406
Merit: 256
May 05, 2011, 09:46:47 AM
#10
I could be wrong on this as I don't know the technicals, but the way I believe it works is that the merkle root is the previous block hash, and when you get an invalid hash (or rather, one that doesn't meet the difficulty requirement) the nonce is incremented by one.
newbie
Activity: 7
Merit: 0
May 05, 2011, 09:33:29 AM
#9
I thought the nonce is part of the header? If the header has a defined (definite) size wouldn't that mean that the nonce once is 111111111 (how many places that would be) and therefore had to start all over again, where hashes would repeat?
sr. member
Activity: 406
Merit: 256
May 05, 2011, 09:13:34 AM
#8
With everyone in the world producing huge amount of hashes, wouldn't all hashes of all sorts be produced at some time, breaking every encryption system?
If they all worked on the same piece of data forever, yes. But the piece of data (the block) being worked on changes every 10 minutes.

Even then no - the nonce would just head toward infinity, as far as I know.
hero member
Activity: 675
Merit: 502
May 05, 2011, 08:44:19 AM
#7
With everyone in the world producing huge amount of hashes, wouldn't all hashes of all sorts be produced at some time, breaking every encryption system?
If they all worked on the same piece of data forever, yes. But the piece of data (the block) being worked on changes every 10 minutes.
newbie
Activity: 7
Merit: 0
May 05, 2011, 08:37:24 AM
#6
Great, thanks! I kinda start to grasp the concept. Still a lot to understand, though..
The "useless relic" in the client still has a chance (even if it's low) to generate a valid hash, doesn't it?

On the other hand, I have absolutely no clue about how our current monetary system works, only the faint idea it's all a great rip-off. Which I carry over to Bitcoin and right now I'm trying to convince myself this isn't the case. Wink
donator
Activity: 2058
Merit: 1054
May 05, 2011, 07:35:25 AM
#5
First I'd like to clarify: The "Generate coins" option in the client is a useless relic and you should not activate it. If you want to mine, you need specific hardware and software.


Now what does that mean?

It means creating a hash of the previous block that starts with at least a bunch of zeroes.
A few other things go into the hash, such as the merkle root of the transactions.


What is it good for?

To enable a new transaction (only one?)
To prove that some work was put into validating a specific timeline, to prevent people from altering it willy nilly. Every block contains several transactions.

Are they stored somewhere?
Only if it hits the target, esp. that there are enough leading zeroes. Then it's transmitted to the network and used for a transaction.
Right, but it's not "used for" as much as it "verifies", and it's several transactions.


Who would need so many hashes?

Everyone who wants to make a transaction
Or to verify that some specific order of events is the established timeline.


Hashes of what?

Of the previous block plus that ominous nonce. The nonce is changed every time you fail to compute a useful hash, which means it has not enough leading zeroes.
Plus some other stuff.

With everyone in the world producing huge amount of hashes, wouldn't all hashes of all sorts be produced at some time, breaking every encryption system?
Yes?
No.

How many transactions can be validated with one block?
AFAIK currently each block is limited to 1MB which is about 1000 transactions. This may change in the future.

What is the chance for me to find a valid block which won't be accepted (and rewarded) by the network?
That depends, but I'd say a found block has about 1% chance to eventually be rejected.
newbie
Activity: 7
Merit: 0
May 05, 2011, 05:52:52 AM
#4
Ok, that answered some of my questions.

So, please correct me if I'm wrong:


Now what does that mean?

It means creating a hash of the previous block  (edit: blockheader) that starts with at least a bunch of zeroes.

What is it good for?

To enable new transactions (no matter how many, for not the block is hashed but the header)

Are they stored somewhere?
Only if it hits the target, meaning there are enough leading zeroes in the hash. Then it's transmitted to the network and used for a transaction and calculating a new hash starts.

Who would need so many hashes?

Only very few hashes meet the target. One in ten minutes is the goal. I wonder if there will be one day enough computational power that no matter how low the target is it is met within seconds.

Hashes of what?

Of the previous blockheader plus that ominous nonce. The nonce is changed every time you fail to compute a useful hash, which means it has not enough leading zeroes.
Don't you have to start over again everytime a valid block with new header is published?

With everyone in the world producing huge amount of hashes, wouldn't all hashes of all sorts be produced at some time, breaking every encryption system?
Yes?

What is the chance for me to find a valid block which won't be accepted (and rewarded) by the network?
legendary
Activity: 3080
Merit: 1080
May 05, 2011, 05:04:07 AM
#3
I believe this will answer most if not all of your questions:

https://bitcoin.it/

and

https://en.bitcoin.it/wiki/FAQ

hero member
Activity: 742
Merit: 500
BTCDig - mining pool
May 05, 2011, 04:49:34 AM
#2
So all I see now is that I can set Bitcoin to "make cash". A number appears in the lower left, stating it makes 2000kHash/s or such.

Now what does that mean?
What is it good for?
Are they stored somewhere?
Who would need so many hashes?
Hashes of what?
With everyone in the world producing huge amount of hashes, wouldn't all hashes of all sorts be produced at some time, breaking every encryption system?

RTFM
newbie
Activity: 7
Merit: 0
May 05, 2011, 04:30:29 AM
#1
So all I see now is that I can set Bitcoin to "make cash". A number appears in the lower left, stating it makes 2000kHash/s or such.

Now what does that mean?
What is it good for?
Are they stored somewhere?
Who would need so many hashes?
Hashes of what?
With everyone in the world producing huge amount of hashes, wouldn't all hashes of all sorts be produced at some time, breaking every encryption system?

Jump to: