5

Everyone is looking at the address where 351 TIOTA are waiting to be payed out after the reclaim process. Do I understand it correct: After the first person gets their money this address should be empty, because the rest will be automatically transferred to a new address, am I right? That's how I understand this picture with the smashed piggy bank.

By the way, this is the address.

1

2 Answers 2

0

There is nothing in the IOTA protocol that enforces this, but virtually all IOTA software will do everything in their power to prevent it.

At the protocol level, if you have an address containing 100 Mi, and you broadcast a valid transaction that transfers 75 Mi to another address, your original address will still have 25 Mi in it. This is 100% allowed.

However, because it is unsafe to spend from the same address multiple times, virtually all IOTA software that you use will automatically transfer any remaining amount(s) to a new address controlled by your seed.

The process works something like this:

Offline

  1. Create the spend transaction(s).
  2. Find input address(es) with sufficient IOTAs to cover the spend amount.1
  3. For each input address, add input transactions that authorise the spending of the entire balance of each address.2
  4. If there are any remaining IOTAs, generate a new address using your seed and add a final spend transaction that sends the change to that new address.

Offline/Online (depending on circumstances)

  1. Perform proof of work (this may be done locally, or it may be offloaded onto an IRI node, depending on the circumstances).

Online

  1. Broadcast the transactions to the Tangle.3

Note that the only step that requires a node is step 6 — and by that point, the transactions have already been created.

In other words, it is up to the software that you are using – not the IOTA protocol itself – to protect you from address reuse.


1 Multiple input addresses may be necessary, if there is no single address with sufficient balance to cover the entire spend.

2 Each input typically requires 1-3 transactions to contain the entire signature, depending on the corresponding address' security level.

3 All of these transactions are treated as an atomic unit known as a bundle.

3

Yes, depending on how the reclaim process happens. Generally, in an IOTA transaction, the funds at input addresses are always used up entirely, and any unspent remainder is sent back to a new address provided by the sender (the "change address"). This simplifies the transaction and also prevents address key reuse. Bitcoin transactions work the same way.

However, the Foundation may also decide to pay back large amounts of funds to several people in batches, which would change this situation somewhat.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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