4

I just start looking at iota, the general tangle without Coordinator. I am reading the this presentation about the consensus mechanism, where I'm confused about the impact of a single double-spend to the whole network.

When a double-spend happens, the presentation says (emphasis mine):

Based on the random selection of tips (and the cumulative weight of the transactions), one of the two branches will receive more child transactions (respectively, weight) until the tangle turns into a state where it is not possible to attach legitimately to one of the segments anymore.

But it seems unclear to me how long this process will be, and consequently how much rework needs to be done to reattach valid transactions following the invalid spend to the legit branch.

In blockchain case, if a double-spend occurs, one of the spend will be put into the block faster than the other, and mining ensures the other one will be rejected by the whole network very soon. This is because a node has the obligation to reject the late one, thus preventing it from entering into the blockchain.

But in iota case, it seems when a node finds conflict transactions, it can't do anything except reselecting other transactions to use. Thus it seems there will be a quite long time interval where two branches are both considered valid by the network, except that you can't confirm both in the same time in a new transaction.

How long will the network take to resolve a double-spend? I'm interested in both practice and mathematical guarantee.

PS: I've read some related questions like How to determine how quickly the network detects double-spends? but couldn't find the answer.

  • 1
    Unfortunately, there is no answer yet. This has to be researched in a running system. One could only speculate.Therefore I would recommend to put this question on hold. – Tobi MZ Oct 15 '18 at 6:20
1

Double spends are resolved once your transaction or bunch of transactions is attached to the main tangle.

1) COO in mainnet: The COO emits milestones every minute. Once your transaction is indirectly approved by a milestone which will happen quickly, your transaction is confirmed

2) no COO in mainnet: The weight of your transaction grows over time. In the end when your transaction lies deep in the tangle, the weight is high enough to say that your confirmation is confirmed (although it is only let's say approved by 99.99999% of new tips). This is similar to Bitcoin confirmation level. (the more you get the more unlikely your transaction is to be reversed)

So there is a difference of a transaction being confirmed (only with COO) and a transaction being approved (which takes some time, depending on the size of the tangle)

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.