Bitcoin Forum

Other => Beginners & Help => Topic started by: quasarbtc on August 31, 2012, 05:38:45 AM



Title: Number of Transaction Confirmations Needed
Post by: quasarbtc on August 31, 2012, 05:38:45 AM
What determines the number of transaction confirmations that must be completed prior to a wallet or website considering the transaction complete (irreversible) and subsequently acknowledging the transaction? The bitcoin wiki states that only six confirmations are typically required for proof of irreversibly and I believe I've come across some websites that follow this guideline. Along the same lines, why are mined coins acknowledged after 100 confirmations, rather than, say, six? If anyone could comment, I would be interested to learn more about how one judges sufficient number of confirmations. Thanks.


Title: Re: Number of Transaction Confirmations Needed
Post by: CIYAM on August 31, 2012, 05:58:51 AM
It is entirely up to the wallet/website to decide how many confirmations they want to consider as being acceptably safe from reversal.

Any double-spend attempt will fail regardless so the waiting for confirmations is mostly useful to a website or to a user in order to satisfy themselves that the blockchain won't be re-organised by a new chain that invalidates the tx concerned.

Minor re-orgs can happen regularly (due to two different solutions to the next block being broadcast at roughly the same time - the race is then to determine which branch will win out according to subsequent blocks being built upon each branch), however, these would rarely involve any double spend attempt.

If someone is attempting to perform a double-spend and they have the hashing power to present an alternative chain to the current one that invalidates the tx concerned (by placing another tx with the same input and different outputs) then the tx would end up with zero confirmations (being now considered as a double-spend attempt).


Title: Re: Number of Transaction Confirmations Needed
Post by: kjj on August 31, 2012, 01:19:32 PM
What determines the number of transaction confirmations that must be completed prior to a wallet or website considering the transaction complete (irreversible) and subsequently acknowledging the transaction? The bitcoin wiki states that only six confirmations are typically required for proof of irreversibly and I believe I've come across some websites that follow this guideline. Along the same lines, why are mined coins acknowledged after 100 confirmations, rather than, say, six? If anyone could comment, I would be interested to learn more about how one judges sufficient number of confirmations. Thanks.

Double spend attempts are rare.  Really rare.  Because of this, if the chain reorgs, all legitimate transactions that were in the old chain will be in the new chain, or they'll make it in shortly.

But, a reorg destroys a coinbase permanently.  If that coinbase had been spent, all transactions that traced back to it would become invalid and need to be thrown out.

So, the solution is to prevent spending coinbases until WAY more blocks have passed than we ever expect to get balled back in a reorg.


Title: Re: Number of Transaction Confirmations Needed
Post by: quasarbtc on August 31, 2012, 05:30:56 PM
Thanks for the replies.

A somewhat related question: what limits the rate at which transactions are confirmed?

If a block must be found for a single confirmation, then assuming a constant network hashing rate, each transaction is confirmed six times per hour. Due to difficulty being adjusted to counter changes in the network hashing rate, the number of confirmations per hour will always remain near six. Is this correct?


Title: Re: Number of Transaction Confirmations Needed
Post by: theymos on August 31, 2012, 05:39:16 PM
It's illegal to spend a generation transaction until it has 100 confirmations. The network disallows it. For other transactions, the recipient can choose how many confirmations to require.


Title: Re: Number of Transaction Confirmations Needed
Post by: theymos on August 31, 2012, 05:40:42 PM
If a block must be found for a single confirmation, then assuming a constant network hashing rate, each transaction is confirmed six times per hour. Due to difficulty being adjusted to counter changes in the network hashing rate, the number of confirmations per hour will always remain near six. Is this correct?

It's always somewhere near six, though it's not too rare for a confirmation to take an hour or just a few minutes.


Title: Re: Number of Transaction Confirmations Needed
Post by: DannyHamilton on August 31, 2012, 06:17:05 PM
If a block must be found for a single confirmation, then assuming a constant network hashing rate, each transaction is confirmed six times per hour. Due to difficulty being adjusted to counter changes in the network hashing rate, the number of confirmations per hour will always remain near six. Is this correct?

It's always somewhere near six, though it's not too rare for a confirmation to take an hour or just a few minutes.
Note that the number of confirmations per hour after you get your first confirmation will average somewhere around 6 (with variations from the unpredictable nature of random probability on the small scale).  However, depending on the size and total number of pending transactions as well as the transaction fees associated with each of those transactions, it is possible for it to take multiple blocks before a transaction is first included in a block.  Until the transaction is first included, none of the blocks count as confirmations on the transaction.


Title: Re: Number of Transaction Confirmations Needed
Post by: quasarbtc on September 01, 2012, 05:39:19 AM
Thank you for the thorough explanations.