Programas principais

Resumo

Os programas principais fornecem funcionalidades fundamentais da rede: gestão de contas (System Program), consenso (Vote, Stake), otimização de transações (Compute Budget, Address Lookup Table) e privacidade (ZK ElGamal Proof). Inclui referência de instruções do System Program e links de código-fonte para todos os 7 programas.

O System Program

O System Program (11111111111111111111111111111111) é o único programa que pode criar novas contas. Todas as novas contas são inicialmente propriedade do System Program, embora a propriedade seja normalmente reatribuída após a criação. O System Program consome DEFAULT_COMPUTE_UNITS (150 CUs) por instrução.

Referência de instruções do System Program

InstruçãoDescrição
CreateAccountCria uma nova conta. Aloca space bytes, atribui owner e transfere lamports do pagador. A nova conta e o pagador devem assinar.
CreateAccountWithSeedIgual a CreateAccount, mas deriva o endereço da nova conta a partir da pubkey de uma conta, uma string seed e o programa proprietário. A conta cuja pubkey foi usada para derivar o endereço e o pagador devem assinar.
AssignDefine o proprietário da conta. A conta deve assinar. Sem efeito se já for esse proprietário.
AssignWithSeedIgual a Assign, mas para um endereço derivado de seed. A conta cuja pubkey foi usada para derivar o endereço deve assinar.
TransferTransfere lamports entre contas. O remetente deve assinar.
TransferWithSeedIgual a Transfer, mas a partir de um endereço derivado de seed. A conta cuja pubkey foi usada para derivar o endereço deve assinar.
AllocateDefine o comprimento dos dados da conta. A conta deve assinar, ter dados vazios e ser propriedade do System Program. Máximo de 10 MiB.
AllocateWithSeedIgual a Allocate, mas para um endereço derivado de seed. Também atribui o proprietário. A conta cuja pubkey foi usada para derivar o endereço deve assinar.
AdvanceNonceAccountAvança o valor do nonce para o blockhash atual. A autoridade do nonce deve assinar.
InitializeNonceAccountInicializa uma conta como conta nonce com a autoridade fornecida. A conta deve estar isenta de rent.
AuthorizeNonceAccountAltera a autoridade do nonce. A autoridade atual deve assinar.
WithdrawNonceAccountRetira lamports de uma conta nonce. A autoridade deve assinar. Se não estiver a fechar, o saldo restante deve cobrir o rent.
UpgradeNonceAccountAtualiza uma conta nonce do formato de versão legada para a versão atual. A conta deve ser gravável e conter uma versão nonce legada.

Todos os programas principais

ProgramaID do programaDescriçãoFonte
System11111111111111111111111111111111Cria contas, transfere SOL, aloca dados e atribui propriedadeFonte
VoteVote111111111111111111111111111111111111111Cria e gere contas que rastreiam o estado de votação e recompensas dos validadoresFonte
StakeStake11111111111111111111111111111111111111Cria e gere delegações de stake para validadoresFonte
ConfigConfig1111111111111111111111111111111111111Armazena dados de configuração on-chain com controlo de acesso baseado em chavesFonte
Compute BudgetComputeBudget111111111111111111111111111111Define limites de unidades de computação e taxas prioritárias para transaçõesFonte
Address Lookup TableAddressLookupTab1e1111111111111111111111111Gere tabelas de pesquisa de endereços para transações que referenciam muitas contasFonte
ZK ElGamal ProofZkE1Gama1Proof11111111111111111111111111111Verifica provas de conhecimento zero para dados encriptados com ElGamalFonte

Programas de carregamento

Cada programa é propriedade de um programa de carregamento. Os carregadores tratam da implementação, atualização e execução dos programas que possuem. Consulte Programas de carregamento para a lista completa de carregadores e os respetivos endereços.

Is this page helpful?

Índice

Editar Página

Gerenciado por

© 2026 Fundação Solana.
Todos os direitos reservados.
Conecte-se
  • Blog