1

These 2 extrinsics :

have the same

  • Sender Account (From)
  • Destination Account (To)
  • Nonce
  • Amount
  • Transaction Hash

I would like to know the reason why this happened because I am trying to reproduce the same scenario but unsuccessfully.

While I try to reproduce, I make a test by executing 2 new extrinsics with again all same arguments (sender, destination, nonce, amount)

but now I get a different txHash.

1 Answer 1

2

The transactions from 13u3BwugeQzzD755L7jDV2P81h5vwWveYeTHQMB3BVokkWco have the same hash because they are immortals.

immortal lifetime

The ones from 16ZbFjyAw1s2xv1bBYBHHGTmbXfokoCE3KYENWL1DDiQAo78 have different hashes because they are mortal.

lifetime mortality mortal tx - lifetime

Assuming that you are using a deterministic signature scheme and since the immortal txs reference the genesis hash, they are the same payload.

Mortal transactions must reference the block hash of their first valid block, so those are of course different.

Our recommendation is to use mortal transactions and one of the reasons is mentioned in our wiki quoted below :

NOTE: If an account is reaped and a user re-funds the account, then they could replay an immortal transaction. Always default to using a mortal extrinsic.

Thank you to the external team that asked the question and presented the examples, to Joe Petrowski for giving a super detailed explanation with screenshots & Iker for reviewing.

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.