Um contrato inteligente é um código que corre numa blockchain. É executado automaticamente quando as condições são cumpridas. Sem advogado, sem notário, sem fiduciário. O código é o acordo. Se enviar 1 ETH para um contrato que promete enviar um token de volta, o contrato ou cumpre a promessa ou a transação falha. Não há meio-termo e ninguém a quem recorrer. Essa finalidade é o objetivo. É também o risco. As falhas nos contratos inteligentes já causaram prejuízos de centenas de milhões de dólares. O ataque hacker à DAO em 2016 drenou 60 milhões de dólares. O congelamento da carteira Parity bloqueou 150 milhões de dólares. Código é lei, e a lei pode ter falhas.
A Ethereum introduziu os contratos inteligentes em 2015. A solidão é a linguagem mais comum. Os programadores escrevem o contrato, testam-no numa rede de testes, auditam-no e implementam-no. Uma vez implementado, o contrato é imutável, a menos que inclua um mecanismo de atualização. Este mecanismo de atualização representa um risco de centralização. Se uma única carteira puder alterar o contrato, este não será verdadeiramente descentralizado. A maioria dos principais protocolos DeFi utiliza carteiras multisig ou votações de governação para controlar as atualizações. O equilíbrio entre imutabilidade e capacidade de atualização é uma das principais tensões no design de contratos inteligentes.
Elementos essenciais dos contratos inteligentes
- Autoexecutável — executa automaticamente quando as condições são satisfeitas.
- Imutável — não pode ser alterado após a implementação, a menos que seja concebido para tal.
- Transparente — o código é público na blockchain.
- Auditável — qualquer pessoa pode rever a lógica.
Leia o contrato antes de interagir com ele. Se não conseguir ler o código, arranje alguém que o consiga. Ou seguir protocolos que tenham sido auditados e testados em situações reais.
Comments
No comments yet. Be the first to share a thought.
Leave a comment