Re-exports§
pub use memo::ShieldedMemo;pub use memo::MEMO_PAYLOAD_SIZE;pub use memo::MEMO_SIZE;
Modules§
- memo
- Structured 36-byte shielded note memo (
DashMemo).
Structs§
- Orchard
Bundle Params - Common Orchard bundle parameters shared across all shielded transition types.
- Serialized
Action - A serialized Orchard action extracted from a bundle.
Constants§
- SHIELDED_
STORAGE_ BYTES_ PER_ ACTION - Permanent storage bytes per shielded action: 344 bytes total.
- SHIELDED_
UNSHIELD_ ADDRESS_ STORAGE_ BYTES - Calibrated effective storage-byte cost of the single
AddBalanceToAddresswrite anUnshieldperforms, crediting the net (unshielding_amount − fee) to the output platform address. - SHIELDED_
WITHDRAWAL_ DOCUMENT_ STORAGE_ BYTES - Calibrated effective storage-byte cost of the Core withdrawal document a
ShieldedWithdrawalcreates.
Functions§
- compute_
minimum_ shielded_ fee - Computes the minimum flat fee (in credits) for a pool-paid / asset-lock shielded transition.
- compute_
platform_ sighash - Computes the platform sighash from an Orchard bundle commitment and optional transparent field data.
- compute_
shielded_ identity_ create_ fee - Computes the IdentityCreateFromShieldedPool fee (in credits):
compute_minimum_shielded_feePLUS the variable storage cost of theAddNewIdentitywrite (identity record + balance + revision + N key subtrees), which scales with the number of public keys. - compute_
shielded_ unshield_ fee - Computes the Unshield fee (in credits):
compute_minimum_shielded_feePLUS the flat storage cost of the singleAddBalanceToAddresswrite anUnshieldperforms. - compute_
shielded_ verification_ fee - Computes the compute-only shielded fee (in credits): the ZK-compute portion (Halo 2 proof verification + per-action spend-auth/nullifier processing) that GroveDB metering cannot see.
- compute_
shielded_ withdrawal_ fee - Computes the ShieldedWithdrawal fee (in credits):
compute_minimum_shielded_feePLUS the flat storage cost of the Core withdrawal document aShieldedWithdrawalinserts. - identity_
create_ from_ shielded_ extra_ sighash_ data - Builds the transparent
extra_databound into anIdentityCreateFromShieldedPool’s platform sighash, with the byte layoutidentity_id (32) || denomination (u64 LE) || send_to_address_on_creation_failure (tag u8: 0=P2pkh, 1=P2sh || hash 20) || num_keys (u16 LE) || for each key in supplied order: key_id (u32 LE) || purpose (u8) || security_level (u8) || key_type (u8) || key_data_len (u16 LE) || key_data || read_only (u8) || contract_bounds (tag u8: 0=None, 1=SingleContract id(32), 2=SingleContractDocumentType id(32) name_len(u16 LE) name). - identity_
create_ from_ shielded_ extra_ sighash_ data_ v0 - v0 byte layout of
identity_create_from_shielded_extra_sighash_data(see that function’s doc comment for the layout and rationale). Frozen: never mutate; a layout change requires a new_v1 - shielded_
withdrawal_ extra_ sighash_ data - Builds the transparent
extra_databound into a ShieldedWithdrawal’s platform sighash, with the byte layoutoutput_script || unshielding_amount (u64 LE) || core_fee_per_byte (u32 LE) || pooling (u8). - shielded_
withdrawal_ extra_ sighash_ data_ v0 - v0 byte layout of
shielded_withdrawal_extra_sighash_data(see that function’s doc comment for the layout and rationale). Frozen: never mutate; a layout change requires a new_v1+ version. - unshield_
extra_ sighash_ data - Builds the transparent
extra_databound into an Unshield’s platform sighash, with the byte layoutoutput_address || unshielding_amount (u64 LE). - unshield_
extra_ sighash_ data_ v0 - v0 byte layout of
unshield_extra_sighash_data(see that function’s doc comment for the layout and rationale). Frozen: never mutate; a layout change requires a new_v1+ version bump.