6

Do reattached transactions get removed from their original position and can I reattach even if the transaction is referenced by other transactions?

Assume the tangle looks like this: (green: confirmed, red: unconfirmed, grey: tips) tangle before reattach Now, the yellow transaction gets reattached somewhere. Does it get removed from its current position? If so, are all referencing transactions (the black ones) invalid then? tangle after reattach?

  • 1
    The lonely green transaction on the right cannot be green, as it does not approve anything and is not the (sole) root transaction of the tangle. But yes, once the copy of the yellow transaction is confirmed, all black transactions are doomed. – mihi Nov 29 '17 at 19:57
  • Good point. The lonely tx couldn't exist in the first place right? It does not attach to the tangle. – Akkumulator Nov 30 '17 at 10:01
  • It does attach, but the algorithm to find transactions to approve will never return it (or its "children"), therefore nothing (or only very little - done by the attacker himself) will get attached to it. – mihi Nov 30 '17 at 21:26
6

A transaction is only an envelope for the signed bundle that details the exact transaction of funds between addresses. The transaction gets attached to the Tangle by doing the Proof of Work and validating two tips. Once it is linked to the Tangle that way, it cannot move any more. It therefore has become part of the permanent history of the Tangle. It can only get cleaned up by a snapshot but will still exist on perma-nodes.

When you reattach a transaction, what happens is that you take the signed bundle out of the original transaction envelope, and create a new transaction envelope with that same bundle in it. You then will have to do Proof of Work again, and validate 2 tips, to attach the new transaction envelope to the Tangle.

Note that you now have two copies of the exact same bundle in the Tangle, but with different transaction envelopes, each with a different transaction hash. That is why a reattached transaction shows up as a new one in your transaction history.

Also note that it does not matter who does the reattaching. The sender can do it just as well as the receiver of the transaction. In fact, anyone may do it.

This mechanism separates the Proof of Work and validation of tips from the signing of the bundle. This is how the mobile wallets are able to function. They pass the attaching of the bundle to the tangle (and thus the PoW) off to a node that will do it for them.

5

When you re-attach a transaction you don't take the old one out. You basically issue a copy of the same transaction.

So if the yellow transaction is already approved/referenced by the black ones, then when you re-issue the yellow transaction nothing will really happen. You just have two yellow transactions: one that's already been approved and one that's just a copy. But the copy will most probably be orphant (because it would most likely be a double-spend, i.e. conflict with the current 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.