pub fn build_shield_from_asset_lock_transition<P: OrchardProver>(
recipient: &OrchardAddress,
shield_amount: u64,
asset_lock_proof: AssetLockProof,
asset_lock_private_key: &[u8],
prover: &P,
memo: [u8; 36],
platform_version: &PlatformVersion,
) -> Result<StateTransition, ProtocolError>Expand description
Builds a ShieldFromAssetLock state transition (core asset lock -> shielded pool).
Like Shield, constructs an output-only Orchard bundle. The funds come from a core asset lock proof rather than platform address inputs.
ยงParameters
recipient- Orchard address to receive the shielded noteshield_amount- Amount of credits to shield (from the asset lock)asset_lock_proof- Proof that funds are locked on core chainasset_lock_private_key- Private key for the asset lock (signs the transition)prover- Orchard prover (holds the Halo 2 proving key)memo- 36-byte structured memo for the recipient (4-byte type tag + 32-byte payload)platform_version- Protocol version