Are Instant Confirmations safe?

Are Instant Confirmations safe?
2015-03-18 22:53 ` Natanael
  
From: Dennis Sullivan @ 2015-03-18 22:38 UTC (permalink / raw)
  To: bitcoin-development

[-- Attachment #1: Type: text/plain, Size: 1596 bytes --]

Hello. This is my first time posting to this list. I wanted to ask your
opinions on something relating to confirmation times.

I recently read about a "transaction locking" proposal which claims to make
it possible to accept 0-conf transactions with guarantee they will get
mined. This seems rather dubious to me, because if there was merit to the
system, I would have already expected to see discussion on this list
regarding it.

The scheme operates as follows:

As implemented into Darkcoin, an InstantX transaction is broadcast spending
certain outputs. Certain nodes determined deterministically will sign a
message which is relayed across the network locking this tx in mempool such
it's inputs cannot be double spent. All nodes are instructed to reject any
conflicting transactions and flush out any existing txs in the mempool that
conflict with this "locked" tx. From this point onwards, the network will
refuse to relay double spends and will also reject blocks that contain a
conflicting tx thus forcing miners to play ball.

The idea is once a transaction receives a "consensus lock" across nodes in
the mempool, the tx will eventually get mined as there is no way it can be
double spent and no way a miner can mine a double spend of the consensus
locked transaction. At the very least, this seems like it could be turned
in on itself to fork the network because of the ability to cause blocks to
be rejected. I am sure there is an attack vector there somewhere.

A full explanation is published in this paper:
https://www.darkcoin.io/wp-content/uploads/2014/09/InstantTX.pdf

Dennis

[-- Attachment #2: Type: text/html, Size: 1881 bytes --]

 permalink raw reply	[|nested]
2015-03-18 22:38 [Bitcoin-development] Are Instant Confirmations safe? Dennis Sullivan

  
From: Natanael @ 2015-03-18 22:53 UTC (permalink / raw)
  To: Dennis Sullivan;  bitcoin-development

[-- Attachment #1: Type: text/plain, Size: 1037 bytes --]

Den 18 mar 2015 23:38 skrev "Dennis Sullivan" <dennis.jm.sullivan@gmail•com
>:
>
> Hello. This is my first time posting to this list. I wanted to ask your
opinions on something relating to confirmation times.
>
> I recently read about a "transaction locking" proposal which claims to
make it possible to accept 0-conf transactions with guarantee they will get
mined. This seems rather dubious to me, because if there was merit to the
system, I would have already expected to see discussion on this list
regarding it.

Sounds like it would be weak to sybil attacks (deterministically choosing
my own nodes sounds great!), and of course Finney attacks (single-block
reversal) and defecting miners (what are you gonna do, punish miners with
limited network connectivity as well? You'll risk forking the network).

Zero-conf is only safe if nobody's actively trying to attack you. It has no
inherent security in and of itself. For low values the risk is usually
tolerated. For large values there's too much risk of making yourself a
target.

[-- Attachment #2: Type: text/html, Size: 1216 bytes --]

 permalink raw reply	[|nested]