Bitcoin Forum

Bitcoin => Project Development => Topic started by: gigabytecoin on June 28, 2011, 03:31:11 AM



Title: What is the longest conceivable time it could take before a block is "invalid"?
Post by: gigabytecoin on June 28, 2011, 03:31:11 AM
Or how long do I really have to wait to be "sure" that the generated block + 50BTC contained within it are valid?

The default on the bitcoin client is 120 confirmations.

How would somebody manage to "trick" you for 119 confirmations in this day and age at the current difficulty level?

As soon as 1 or perhaps 2 confirmations come in I fail to see how you could declare an older block invalid.


Title: Re: What is the longest conceivable time it could take before a block is "invalid"?
Post by: JoelKatz on June 28, 2011, 03:43:41 AM
Or how long do I really have to wait to be "sure" that the generated block + 50BTC contained within it are valid?

The default on the bitcoin client is 120 confirmations.

How would somebody manage to "trick" you for 119 confirmations in this day and age at the current difficulty level?

As soon as 1 or perhaps 2 confirmations come in I fail to see how you could declare an older block invalid.
Single confirmation rewrites are not terribly uncommon. However, the odds that someone will try a double spend attack, there will happen to be a one confirmation rewrite, and one side of the rewrite will have one transaction and one the other are pretty low.

Consider if two miners each find a block at about the same time. One side of the network starts working off one block and one side starts working off the other block. Now imagine if both of these sides also find a block at about the same time, so the network splits again. Of course, the odds of this keeping up for very long are staggeringly low.


Title: Re: What is the longest conceivable time it could take before a block is "invalid"?
Post by: Sukrim on June 28, 2011, 11:38:17 AM
Depending on the amount of the payment I think you could come up with a solution like this for a business:

0-1 BTC: It's enough to see a pending transaction to "confirm" a payment
1-5 BTC: 1 block
6-100 BTC: 2 blocks
101-500 BTC: 3 blocks
501-1000 BTC: 4 blocks

etc.

This would also mean that really large payments might take more than 6 blocks to be confirmed. If I were to receive a million BTC, I would state in the contract that I require at least 1 full day of mining worth of blocks or even more until I confirm such a transaction on my end to make sure nothing fishy is going on.

For small amounts 0-1 blocks could be enough, as it wouldn't make any sense to try to double-spend this amount at current difficulty.