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.