Technical reference
Solana PDAs: an address can be controlled without a private key
Program-derived addresses use deterministic derivation and runtime-checked signing authority.
研究文章和参考条目以英语发布。导航提供七种语言。
Derived from seeds and a program
A Solana program-derived address is computed from seeds and a program ID. PDAs lie off the Ed25519 curve, so they do not have ordinary corresponding private keys. Deriving an address does not itself create or fund an account there.
How a program can act
The runtime can allow a program to sign for a PDA derived from its own program ID through invoke_signed. This is how a program can control an escrow or other application account without storing a secret key. The allowed action still depends on the program's instructions and account checks.
Where reviews go wrong
Do not classify a PDA as an ordinary user wallet simply because an explorer displays an address and balance. Identify the deriving program, seeds and checks governing the account. Also distinguish the program used in derivation from the account's owner field. A safe derivation does not excuse missing authority checks in the instruction that releases funds.