Interface UtxoSignedTransaction

  • All Implemented Interfaces:
    net.corda.v5.ledger.common.transaction.TransactionWithMetadata

    @DoNotImplement() 
    public interface UtxoSignedTransaction
     implements TransactionWithMetadata
                        

    Defines a signed UTXO transaction.

    Comparing with UtxoLedgerTransaction:

    • It does not have access to the deserialized details.
    • It has direct access to the signatures.
    • It does not require a serializer.

    UtxoSignedTransaction wraps the wire representation of the transaction. It contains one or more signatures, each one for a public key (including composite keys) that is mentioned inside a transaction state.

    UtxoSignedTransaction is frequently passed around the network and stored. The identity of a transaction is the hash of Merkle root of the wrapped wire representation, therefore if you are storing data keyed by wire representations hash, be aware that multiple different UtxoSignedTransactions may map to the same key, and they could be different in important ways, like validity!

    The signatures on a UtxoSignedTransaction might be invalid or missing: the type does not imply validity. A transaction ID should be the hash of the wrapped wire representation's Merkle tree root, therefore adding or removing a signature does not change it.