Assinatura em Produção

Uma transação só é executada se contiver uma assinatura válida de cada assignante obrigatório. Durante o desenvolvimento local, você normalmente mantém essa chave como um Keypair e assina diretamente. Em produção, a questão importante é diferente: onde a chave privada reside e quem está autorizado a emitir uma assinatura com ela?

Nunca incorpore chaves privadas em código do lado do cliente, não as inclua em um frontend, nem as confirme no controle de versão. Qualquer pessoa que obtenha uma chave obtém controle total dos fundos dessa conta.

Abordagens de assinatura

AbordagemOnde a chave resideQuem assinaIdeal para
keypair localUm arquivo ou variável de ambiente na máquinaSeu código, diretamenteDesenvolvimento local, testes, CI
Carteira de navegadorA carteira do usuário final (ex.: Phantom, Solflare)O usuário final, por transaçãodApps frontend onde os usuários assinam suas próprias transações
KMS / HSM em nuvemUm serviço de chaves com suporte de hardware (AWS KMS, GCP KMS, Vault)Seu backend solicita uma assinatura ao serviçoServiços de backend, operações de tesouraria, ambientes regulados
Carteiras gerenciadas / MPCDivididas ou custodiadas na infraestrutura de um provedorO provedor co-assina conforme sua políticaCarteiras integradas, fluxos de aprovação, custódia institucional

O keypair local é a única abordagem que coloca o material de chave bruto dentro da sua aplicação. Todas as abordagens de produção mantêm a chave em infraestrutura dedicada e solicitam que essa infraestrutura assine em seu nome.

Assinatura no backend

Quando um servidor precisa assinar — pagando taxas, enviando transações de programa ou operando um tesouro — use um backend dedicado de gerenciamento de chaves em vez de um keypair bruto. A Solana Foundation mantém o Keychain, uma biblioteca de assinatura unificada (Rust e TypeScript) que expõe uma interface SolanaSigner em todos os backends da tabela acima: Memory, HashiCorp Vault, AWS KMS, GCP KMS, Fireblocks, Privy, Turnkey, CDP, Crossmint, Dfns, Para, Openfort e Utila.

Como a interface é idêntica em todos os backends, você pode desenvolver localmente com uma chave em memória e alternar para um backend de produção por meio de configuração, sem reescrever o código da aplicação. O Keychain é compatível com @solana/kit e o Rust SDK.

Para o checklist completo de produção — gerenciamento de chaves, segurança de RPC e monitoramento — consulte Prontidão para Produção.

Is this page helpful?

Índice

Editar Página
© 2026 Fundação Solana. Todos os direitos reservados.