Um smart contract é um código autoexecutável armazenado em uma rede blockchain que realiza automaticamente um acordo quando suas condições são atendidas, sem precisar de um intermediário. Os smart contracts impulsionam apps, DeFi, NFTs e DAOs ao aplicar regras de forma transparente e confiável. Os smart contracts não são específicos de uma única rede; Ethereum e outras blockchains compatíveis com EVM, Solana, Cardano, Polkadot e Sui executam smart contracts, cada uma usando sua própria linguagem de programação e modelo de execução. Como um smart contract vive onchain, ele funciona sem intermediários, suas regras são visíveis para qualquer pessoa que queira verificá-las e, uma vez implantado, geralmente não pode ser alterado. Os smart contracts são os blocos de construção por trás da maioria dos apps blockchain, incluindo protocolos DeFi, stablecoins, NFTs e DAOs.
Aviso: Este guia tem fins educacionais apenas. Não é aconselhamento financeiro, não é uma solicitação e não se destina ao público do Reino Unido. Interagir com smart contracts é arriscado e não é adequado para todos os usuários.
Como funcionam os smart contracts
Um desenvolvedor escreve um contrato e o implanta em uma blockchain uma única vez. A partir desse momento, qualquer pessoa pode interagir com ele, e ele executa sua lógica sempre que suas condições são acionadas — por exemplo, liberando tokens quando um pagamento é recebido, ou permitindo que um usuário saque fundos após uma determinada altura de bloco. Duas propriedades definem os smart contracts em todas as redes que os suportam: a execução é automática e não precisa de intermediários, e o código é imutável por padrão, portanto um bug é permanente a menos que o contrato tenha sido especificamente projetado para ser atualizável.
Executar um smart contract também tem um custo. Cada rede cobra uma taxa de rede para processar a computação e o armazenamento que um contrato utiliza — chamada de "gas" no Ethereum e na maioria das redes EVM, e com nomes e modelos de taxas diferentes em outros lugares (taxas por transação da Solana, taxas por transação mais unidades de execução de script da Cardano, taxas baseadas em peso da Polkadot). A mecânica é diferente, mas o princípio é o mesmo: executar código em blockchains consome recursos de rede, e alguém precisa pagar por isso.
Um breve histórico dos smart contracts
A ideia por trás dos smart contracts é anterior a qualquer blockchain. O cientista da computação e estudioso de direito Nick Szabo cunhou o termo "smart contract" em 1994 e o desenvolveu em um ensaio de 1996, descrevendo um protocolo de transação computadorizado que executa os termos de um acordo, comparando o conceito a uma máquina de venda automática que entrega um produto de forma confiável ao receber o pagamento, sem necessidade de confiar na outra parte (escrita original de Szabo, conforme referenciada em históricos do conceito). Na época, não existia nenhuma plataforma capaz de executar esse tipo de código de forma minimamente confiável e resistente a adulterações, então a ideia permaneceu amplamente teórica por duas décadas.
O Bitcoin, lançado em 2009, introduziu uma blockchain, mas apenas uma linguagem de script limitada (Bitcoin Script), que intencionalmente não é Turing-completa — ela pode aplicar condições de gasto como requisitos de múltiplas assinaturas e timelocks, mas não pode executar programas arbitrários de uso geral. O Bitcoin Script controla como os fundos existentes podem ser gastos; ele não consegue expressar lógica aberta sobre o que acontece a seguir, portanto o Bitcoin não é considerado uma plataforma de smart contracts de uso geral.
O Ethereum, lançado em 30 de julho de 2015, foi a primeira grande blockchain construída especificamente para executar smart contracts de uso geral, por meio da Ethereum Virtual Machine (EVM), um runtime compartilhado que cada nó Ethereum executa de forma idêntica (ethereum.org, History of Ethereum). Isso tornou o Ethereum programável de uma forma que as blockchains anteriores não eram, e é por isso que a maior parte da terminologia de smart contracts — gas (também conhecido como taxas de rede), contas de contrato, Solidity — tem origem lá. Nos anos seguintes, outras redes construíram seus próprios ambientes de smart contracts usando diferentes linguagens e modelos de execução, incluindo Solana (2020), os scripts Plutus da Cardano (2021), os contratos ink! da Polkadot e os objetos baseados em Move da Sui (2023), estendendo o conceito muito além de uma única rede.
Onde os smart contracts são executados?
O runtime e a linguagem que um smart contract utiliza dependem inteiramente da rede em que ele é implantado. Algumas redes rastreiam o estado como saldos de contas que os contratos leem e escrevem (modelo de contas do Ethereum); outras rastreiam o estado como outputs discretos e gastáveis (modelo eUTXO da Cardano, uma extensão do modelo UTXO do Bitcoin) ou como objetos de propriedade individual (modelo centrado em objetos da Sui). Essas diferenças afetam como os contratos são escritos e como podem ser compostos, mas não a garantia básica: código que é executado automaticamente e, uma vez implantado, é difícil ou impossível de alterar.
Desenvolvedores escrevem e implantam smart contracts; qualquer pessoa com as ferramentas certas e tokens nativos suficientes da rede para cobrir os custos de implantação pode fazê-lo, e a implantação não requer permissão da rede subjacente. Uma vez que um contrato está ativo, qualquer pessoa pode interagir com ele — geralmente por meio da interface de um app, em vez de escrever código diretamente. Uma pessoa que troca tokens, cria um NFT ou vota em uma DAO está acionando a execução de um smart contract, normalmente sem precisar entender a linguagem ou o runtime subjacente.
Padrões de tokens
Muitos ativos descritos como "tokens" são smart contracts que seguem um padrão compartilhado, o que permite que carteiras e apps interajam com qualquer token compatível da mesma forma. No Ethereum e em outras redes EVM, o ERC-20 é o padrão para tokens fungíveis, incluindo a maioria das stablecoins e utility tokens, e o ERC-721 é o padrão para NFTs, onde cada token é único. Outras redes têm seus próprios equivalentes — o padrão de token SPL da Solana, por exemplo — construídos para seus respectivos modelos de execução.
O que os smart contracts impulsionam?
Em todos os ecossistemas, os smart contracts são o motor por trás dos apps: protocolos DeFi para empréstimos, financiamentos e negociações; marketplaces de NFTs e ativos digitais; e DAOs cujas regras de governança vivem em código, em vez de nas políticas internas de uma empresa. A implementação específica varia por rede, mas o padrão subjacente — código que aplica um acordo sem intermediários — é consistente.
Por que os smart contracts existem?
Os smart contracts existem para eliminar a necessidade de um intermediário confiável para fazer cumprir um acordo. Em vez de depender de um banco, um agente de custódia ou um operador de plataforma para guardar fundos e seguir um conjunto de regras, as regras são codificadas diretamente e executadas da mesma forma para todos que interagem com o contrato. Essa é a propriedade que torna possível as finanças programáveis e autocustodiadas, a propriedade digital e a governança blockchain em escala — independentemente de qual rede hospeda o código.
Aprovações de tokens e segurança
Usar um app geralmente significa conceder a um smart contract uma aprovação de token — permissão para movimentar um token específico em seu nome. Isso é normal, mas também é um vetor de ataque comum, porque um contrato malicioso pode solicitar uma aprovação que permite mover mais do que o usuário pretendia. Uma aprovação de token pode ser limitada a um valor específico ou ilimitada. A extensão MetaMask exibe o escopo completo da aprovação de token — incluindo o endereço do contrato e se a aprovação é limitada ou ilimitada — antes de assinar, o que permite ao usuário revisá-la primeiro. Nosso guia sobre aprovações de tokens explica como revisá-las e revogá-las.
Riscos dos smart contracts
Bugs são permanentes: código imutável com uma falha geralmente não pode ser corrigido após a implantação.
Auditorias reduzem, mas não eliminam o risco: contratos auditados já foram explorados.
Contratos maliciosos existem em todas as redes que os suportam, não apenas em uma.
Perguntas frequentes sobre contratos inteligentes
Um smart contract é um código autoexecutável armazenado em uma rede que roda automaticamente quando suas condições são atendidas, sem a necessidade de um intermediário.
Não. O Ethereum foi a primeira grande plataforma de contratos inteligentes de uso geral, lançada em 2015, mas os smart contracts agora funcionam em diversas redes, incluindo Solana, Cardano, Polkadot e Sui, cada uma com sua própria linguagem e modelo de execução.
A rede blockchain determina em qual linguagem de programação um determinado smart contract é escrito. Ethereum e outras redes EVM utilizam principalmente Solidity ou Vyper; Solana usa Rust, frequentemente com o framework Anchor; Cardano usa Plutus (baseado em Haskell); as parachains da Polkadot usam ink! (baseado em Rust); e Sui usa Move.
Por padrão, não — o código implantado é imutável. Alguns contratos são desenvolvidos especificamente com mecanismos de atualização, mas isso adiciona complexidade e seus próprios riscos.
A tecnologia é bem estabelecida em diversas redes, mas contratos individuais podem conter bugs ou ser maliciosos. Revisar as aprovações de tokens e usar apenas apps auditados reduz os riscos.
A execução de código em redes blockchain consome recursos computacionais dos validadores ou mineradores da rede, por isso as redes cobram uma taxa de rede por isso. A estrutura de taxas varia de acordo com a rede, mas o princípio — pagar pela computação que você usa — é comum a todas elas.
Assine Alpha e receba o alpha de mercado direto na sua caixa de entrada
Traduzido por IA. Pode conter erros. Por favor, verifique sempre as informações.
Avalie a tradução
Este artigo foi escrito por:
MetaMask
A MetaMask, anteriormente Consensys Software Inc, é a maior plataforma financeira self-custodial do mundo, oferecendo às pessoas um único lugar para guardar, gastar, economizar e fazer seu dinheiro crescer em ativos cripto e tradicionais. A empresa está construindo a plataforma de consumo onde isso acontece, reunindo pagamentos, poupança, investimentos e ativos digitais em uma experiência integrada e fluida. Tendo crescido a partir da carteira self-custodial mais amplamente utilizada do mundo, a MetaMask oferece aos usuários controle direto sobre seu dinheiro e ativos, com alcance em aproximadamente 190 países. A MetaMask desempenhou um papel fundamental no crescimento do Ethereum desde 2016. Hoje, a MetaMask está no centro da economia blockchain, construindo o sistema operacional para o Open Money e colocando as pessoas em total controle de suas vidas financeiras.