Skip to main content

verify_pda_strict

Function verify_pda_strict 

Source
pub fn verify_pda_strict(
    expected: &Address,
    seeds: &[&[u8]],
    program_id: &Address,
) -> Result<(), ProgramError>
Expand description

Verify that an address matches a PDA derived from the given seeds.

Unlike verify_pda which takes an AccountView, this accepts a raw Address reference directly. Useful when validating addresses outside of the account parsing flow (e.g. instruction data, cross-program reads).

The seeds slice must already include the bump byte (like verify_program_address). Uses SHA-256 verify-only path (~200 CU) instead of the full find_program_address (~1500 CU).

Returns Ok(()) if the address matches the derived PDA, or Err(InvalidSeeds) if it does not.