Los Programas del Sistema y Token
Incluye Program<'info, System>, Program<'info, Token>, y cuentas de programa relacionadas en cada instrucción que realiza CPIs a ellos. Anchor fija los IDs para prevenir la sustitución de programas.
Busca en todas las páginas de la documentación
Incluye Program<'info, System>, Program<'info, Token>, y cuentas de programa relacionadas en cada instrucción que realiza CPIs a ellos. Anchor fija los IDs para prevenir la sustitución de programas.
pub system_program: Program<'info, System>,
pub token_program: Program<'info, Token>,
pub associated_token_program: Program<'info, AssociatedToken>,Cuándo usar esto: Las instrucciones crean cuentas, transfieren SOL o mueven tokens SPL.
#[derive(Accounts)]
pub struct CreateAta<'info> {
#[account(mut)]
pub payer: Signer<'info>,
pub mint: Account<'info, Mint>,
#[account(
init,
payer = payer,
associated_token::mint = mint,
associated_token::authority = owner,
)]
pub ata: Account<'info, TokenAccount>,
pub owner: SystemAccount<'info>,
pub system_program: Program<'info, System>,
pub token_program: Program<'info, Token>,
pub associated_token_program: Program<'info, AssociatedToken>,
}Lo que esto demuestra:
| Programa | Tipo de Anchor |
|---|---|
| Sistema | Program<'info, System> |
| SPL Token | Program<'info, Token> |
| Token Asociado | Program<'info, AssociatedToken> |
| Token-2022 | Interface<'info, TokenInterface> |
Importa desde anchor_lang::system_program y anchor_spl::token.
| Alternativa | Usar Cuando | No Usar Cuando |
|---|---|---|
| CpiContext con cuenta de programa | Mismo requisito | AccountInfo de programa sin verificar |
| Invoke nativo con IDs codificados | No-Anchor | Seguridad de Anchor Program<T> |
0.32.1 en toda esta sección.
No. Usa restricciones de semillas y firma de CPI.
En el campo de la estructura de tu cuenta, establecido en la inicialización.
Usa @solana/kit 7.0.0 con bytes de semilla coincidentes.
La dirección declare_id de tu programa Anchor.
No en el array de semillas; el bump es un parámetro separado para find_program_address.
Compara las claves registradas; verifica las semillas y el ID del programa en el lado del cliente.
Sí, cuando contienen datos; fináncialos con el pagador en init.
Sí, con las mismas semillas de firmante para cada CPI.
Consulta los enlaces relacionados para temas más profundos sobre tokens del sistema.
Versiones de Stack: Esta página fue escrita para Agave 4.1.1, Solana CLI 3.0.10, Anchor 0.32.1, anchor-lang 0.32.1, Rust 1.91.1, @solana/kit 7.0.0, Surfpool 0.12.0, y LiteSVM 0.6.x.
Revisado por Chris St. John·Última actualización: 16 jul 2026