Hash Lock Schemas

Note

The catbuffer schemas repository defines how each transaction type should be serialized. In combination with the catbuffer-generators project, developers can generate builder classes for a given set of programming languages.

Aggregate

AggregateTransaction

Announce an AggregateTransaction to combine multiple transactions together.

Version: 0x01

EntityType: 0x4141 (complete), 0x4241 (bonded)

Inlines:

Transaction

Property Type Description
transactionsHash Hash256 Aggregate hash of the aggregate transaction.
payloadSize uint32 Transaction payload size in bytes. In other words, the total number of bytes occupied by all inner transactions.
aggregateTransactionHeader_Reserved1 uint32 Reserved padding to align end of AggregateTransactionHeader on 8-byte boundary.
transactions array(Transaction, size=payloadSize) Array of inner transactions. Other aggregate transactions are not allowed as inner transactions.
cosignatures array(Cosignature, __FILL__) Array of transaction cosignatures. Fills the remaining body space after transactions.

Cosignature

DetachedCosignature

Cosignature transactions are used to sign announced AggregateBondedTransactions with missing cosignatures.

Inlines:

Property Type Description
parentHash Hash256 AggregateBondedTransaction hash to cosign.

Cosignature

Property Type Description
version uint64 Version of the structure.
signerPublicKey Key Cosigner public key.
signature Signature Transaction signature.