Open Simple Token

How can I prove an auxiliary transaction on origin?


The transition object of the meta-block tracks the accumulated transaction root of auxiliary. The accumulated transaction root is the root of a Merkle tree of all transaction roots of the auxiliary chain.

To do a proof of an auxiliary transaction, you can

  1. do a Merkle proof of the transaction root against the accumulated transaction root and then
  2. do a Merkle proof of the transaction against the transaction root.

In order to do a Merkle proof against the accumulated transaction root, you need to know all the auxiliary transaction roots since the last meta-block that was committed before the transaction took place on auxiliary. If the transaction takes place in meta-block B_n, then you need to know all transaction roots in B_n up to the transaction root that you require for your proof.

It is possible to do all steps off-chain or in a single transaction or cache intermediary results.