Skip to main content

shield_from_identity_extra_sighash_data

Function shield_from_identity_extra_sighash_data 

Source
pub fn shield_from_identity_extra_sighash_data(
    identity_id: &[u8; 32],
    platform_version: &PlatformVersion,
) -> Result<Vec<u8>, ProtocolError>
Expand description

Extra sighash data of a ShieldFromIdentity bundle: its kind tag and the identity whose balance funds it. See credit_pool_output_only_extra_sighash_data_v0.

The identity signature already covers the bundle, but only this transition’s: nothing in the bundle itself says which identity it was proved for, so without this preimage any other identity could sign a transition of its own around the same proved bytes. The funding identity itself can still land the same bundle again under a new nonce, which is what a client retrying with a fresh nonce does; stopping that would need the bundles’ dummy nullifiers recorded and checked, which consensus does not do.

Dispatches on dpp.methods.credit_pool_bundle_binding like shield_extra_sighash_data.