When is the nonce generated? What parts of a transaction can be changed after the nonce was generated? How is the nonce connected to a transaction's children/parents?

1 Answer 1

  1. The last step, after bundle and tips have been set up, is calculating a nonce matching the minimum weight magnitude (MWM). On the mainnet, MWM is 14, which means the transaction hash has to have 14 trailing 0-trits.

  2. None. Transaction hash is calculated by absorbing all transaction trytes and create a 81 characters transaction hash. This means, if you change any characters, it will give you a complete different transaction hash.

  3. It is not connected. Nonce only affects that transaction (not the bundle, and not other transaction in the bundle).

For how a transaction were generated in IOTA, you can take a look at this article: In-depth explanation of how IOTA making a transaction (with picture)

  • trunkTransaction and branchTransaction are part of the transaction trytes, aren't they? You said the transaction hash is calculated by absorbing the whole transaction trytes. So how is the nonce not connected to branch and trunk?
    – Zauz
    Commented Feb 5, 2018 at 14:13
  • branch and trunk are part of a transaction. But what Louie says is still true. Transactions in a bundle are atomic units on their own. They are chained via trunkTransaction. But the nonce always relates to a single transaction. So in a bundle with 5 transactions you’d have 5 nonces, one for each transaction.
    – ralf
    Commented Feb 6, 2018 at 7:44
  • Yes, trunk and branch are parts of the transaction, but in that transaction, that is just an 81 characters string, nothing else. Nonce will only care about its transaction, not others (e.g. the "trunk transaction" itself, nor other transaction in the bundle)
    – Louie Lu
    Commented Feb 6, 2018 at 8:40

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.