Module transaction

Source
Expand description

Transactions and transaction-related structures.

Re-exports§

pub use sapling::FieldNotPresent;

Modules§

arbitrary
Arbitrary data generation for transaction proptests
auth_digest 🔒
Authorizing digests for Zcash transactions.
builder
Methods for building transactions.
hash 🔒
Transaction identifiers for Zcash.
joinsplit 🔒
lock_time 🔒
Transaction LockTime.
memo 🔒
serialize 🔒
Contains impls of ZcashSerialize, ZcashDeserialize for all of the transaction types, so that all of the serialization logic is in one place.
sighash 🔒
Signature hashes for Zcash transactions
txid 🔒
Transaction ID computation. Contains code for generating the Transaction ID from the transaction.
unmined 🔒
Unmined Zcash transaction identifiers and transactions.
zip317
An implementation of the [ZIP-317] fee calculations for UnminedTxs:

Structs§

AuthDigest
An authorizing data commitment hash as specified in ZIP-244.
Hash
A transaction ID, which uniquely identifies mined v5 transactions, and all v1-v4 transactions.
HashType
The different SigHash types, as defined in https://zips.z.cash/zip-0143
JoinSplitData
A bundle of JoinSplit descriptions and signature data.
Memo
A 512-byte (plaintext) memo associated with a note, as described in protocol specification §5.5.
SerializedTransaction
A serialized transaction.
SigHash
A Signature Hash (or SIGHASH) as specified in https://zips.z.cash/protocol/protocol.pdf#sighash
SigHasher
A SigHasher context which stores precomputed data that is reused between sighash computations for the same transaction.
UnminedTx
An unmined transaction, and its pre-calculated unique identifying ID.
VerifiedUnminedTx
A verified unmined transaction, and the corresponding transaction fee.
WtxId
A witnessed transaction ID, which uniquely identifies unmined v5 transactions.

Enums§

LockTime
A Bitcoin-style locktime, representing either a block height or an epoch time.
Transaction
A Zcash transaction.
UnminedTxId
A unique identifier for an unmined transaction, regardless of version.

Constants§

MEMPOOL_TRANSACTION_COST_THRESHOLD
The minimum cost value for a transaction in the mempool.
MIN_TRANSPARENT_TX_SIZE
All txs must have at least one input, a 4 byte locktime, and at least one output.
MIN_TRANSPARENT_TX_V4_SIZE
The minimum transaction size for v4 transactions.
MIN_TRANSPARENT_TX_V5_SIZE
The minimum transaction size for v5 transactions.