Logo Oficial MASTR MASTR Apoyar el trabajo
Contenido
← Inicio de la wiki

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

Los artículos de investigación y las referencias se publican en inglés. La navegación está disponible en siete idiomas.

En este artículo
  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

Lecturas relacionadas

MASTR

Apoya la investigación independiente

Las investigaciones, las pruebas originales y las guías son de acceso libre. Las donaciones voluntarias ayudan a financiar la investigación y a mantener disponibles las herramientas de MASTR.

Abrir billetera