官方的 MASTR 标志 MASTR 支持这项工作
目录
← 知识库首页

Technical reference

Solana PDAs: an address can be controlled without a private key

Program-derived addresses use deterministic derivation and runtime-checked signing authority.

Source-based reference · Updated 12 September 2026

研究文章和参考条目以英语发布。导航提供七种语言。

本文目录
  1. Derived from seeds and a program
  2. How a program can act
  3. Where reviews go wrong
  4. Sources

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.

Sources

相关阅读

MASTR

支持独立研究

这里的调查、原始证据和指南均可免费阅读。自愿捐赠帮助支付研究成本,让 MASTR 能够继续提供工具。

打开钱包