Verifier: Inputs
Validates the inputs component of a transaction proof is properly formatted.
One additional proof per input in the primary transaction proof proof
must be provided, the list inputProofs
.
For each input in proof.transaction.inputs
and inputProof
in inputProofs
, indexed by index
:
- If input's type is
Transfer
orHTLC
: - The transaction proof
inputProof
must be validated. - The output metadata of
inputProof
must match the metadata of input (i.e. they must be pointing to the same entry in the ledger). - The UTXO ID being produced by the output of
inputProof
must matchproof.data[index]
. - If input's type is
Deposit
: - The deposit object
inputProof
must be validated:- The deposit ID of
inputProof
must matchproof.data[index]
.
- The deposit ID of
- If input's type is
Root
: - The transaction proof
inputProof
must be validated. - The UTXO ID being produced by the output of
inputProof
must matchproof.data[index]
.