Bitcoin Forum

Economy => Trading Discussion => Topic started by: ehoffman on March 08, 2013, 03:57:21 PM



Title: A way to speed up transfers? Without waiting 6 confirmations...
Post by: ehoffman on March 08, 2013, 03:57:21 PM
Hello

I had an idea, I don't know if I'm totally wrong or if it make some sense...

Why in the first place do we need 6 confirmations to accept a transaction?  That is, the first confirmation comes when a transaction is hashed in a solved block.  Then when you find another block, since the block are chained and the new block hash is partly based on the previous block hash, this validate the previous block, and thus validate the transaction (2nd validation).  And so on...

So, you need to have:
- Your transaction getting inserted in a block, which block happen to make it to the blockchain (header hash is a solution).  This can take a while, even several blocks until it get into a block.
- After that, 5 blocks need to be found that are chained to that last block.

The second criteria I guess is to prevent against possible orphan block for example, in which case the transaction has to be validated in a block from the main chain.

Ok, so, 6 blocks look like a quick way to ensure that the transaction is validated.  However, when validated once (1 confirmation), why would it become invalid?  As said, orphan blocks.  But are there other reasons?

Now, as I understand, orphan blocks occurs when 2 different party find a solution at almost the same time based on the same previous block.  Both block will fight on the network.  Eventually, a solution (a 'next block') will be found based on one of those 2 blocks.  When sent to the network, that block will make it's predecessor part of the main block chain, and the other block an orphan block.

So, the chances to have several successive blocks fighting in parallel is pretty low.  And if after 5~10 minutes, everyone agree that only a single block is found (no potential orphan block), why not detect this and say that the transaction is valid?