As origens dos contratos inteligentes podem ser rastreadas até o fim dos anos 90, quando Nick Szabo propôs o conceito de contratos inteligentes baseados em blockchain no artigo "Formalizing and Protecting Partnerships on Public Networks", publicado na revista First Monday.
Nas Linhas de Frente: Contratos Inteligentes
Blogs Shaun Aghili, DBA, CIA, CRMA, CISA jul 28, 2021
As origens dos contratos inteligentes podem ser rastreadas até o fim dos anos 90, quando Nick Szabo propôs o conceito de contratos inteligentes baseados em blockchain no artigo "Formalizing and Protecting Partnerships on Public Networks", publicado na revista First Monday. Um contrato inteligente é um programa descentralizado e seguro que usa um mecanismo de blockchain como framework padrão de execução descentralizada, devido aos seus principais benefícios de privacidade. Ele representa um acordo que é automaticamente executável, semanticamente correto, seguro e aplicável.
Em outras palavras, um contrato inteligente é um protocolo eletrônico que implanta e faz cumprir os termos contratuais. O seu principal objetivo é o cumprimento com as condições do contrato sem a necessidade de intermediários financeiros, como um banco. Seus outros objetivos econômicos incluem a redução de custos de compliance e outros custos de transação relacionados. Os auditores internos devem compreender e analisar como suas organizações projetam e usam tais sistemas.
Os contratos inteligentes têm muitos usos, incluindo:
- E-commerce. Contratos inteligentes podem ser usados para facilitar o comércio entre compradores e vendedores sem a necessidade de terceiros. O pagamento será liberado pelo contrato inteligente para o vendedor quando o comprador tiver confirmado o recebimento das mercadorias ou serviços.
- Internet of Things e propriedade inteligente. Os contratos inteligentes permitem que nodes na Internet compartilhem ou acessem propriedades digitais sem a necessidade de um terceiro confiável.
- Gestão de direitos digitais. Contratos inteligentes podem ser aplicados a tarefas de gestão de direitos digitais, como direitos de propriedade de música, usando a tecnologia blockchain. Por exemplo, contratos inteligentes podem exigir pagamentos aos proprietários da música sempre que sua música for usada para fins comerciais. A distribuição do pagamento entre os diversos proprietários da música também pode ser assegurada.
Outros usos possíveis de contratos inteligentes incluem votação eletrônica, pagamentos de hipotecas, processamento de sinistros de seguros, monitoramento da cadeia de suprimentos e gestão de identidade. Ao projetar um sistema descentralizado e distribuído, a organização deve considerar algumas características dos contratos inteligentes.
Os contratos inteligentes são imutáveis. Uma vez que um contrato inteligente é implantado, ele não pode mais ser modificado. Dessa forma, se houver uma falha na lógica de um aplicativo de contrato, essa falha não poderá ser corrigida por um patch de software.
Os contratos inteligentes são transparentes. Os registros armazenados no blockchain são acessíveis a todos e, como o contrato inteligente é um componente do blockchain, o código-fonte do contrato inteligente pode ser visualizado por qualquer pessoa. Portanto, os contratos inteligentes não devem implantar métodos e algoritmos que precisem ser mantidos em segredo.
As informações relacionadas aos contratos inteligentes estão sempre disponíveis. Além dos códigos do contrato inteligente, todos os usuários do blockchain podem visualizar o valor que a variável do contrato mantém, seus dados históricos e todas as transações relacionadas ao contrato. Dessa forma, os contratos inteligentes não devem ser usados para armazenar dados privados e registros protegidos.
Os auditores internos devem revisar se estão em vigor controles adequados aos contratos inteligentes. Os desenvolvedores devem usar estratégias defensivas de programação, como verificação de protocolos, mensuração da cobertura de teste, aplicação da integração contínua e realização de auditorias de segurança no contrato, para garantir que os usuários não possam explorar bugs e vulnerabilidades.
Além disso, os desenvolvedores devem considerar o uso de um "kill switch", que é um trecho de código que desativa permanentemente um contrato inteligente com defeito. A implantação de uma opção de inativação do contrato inteligente poderia garantir que todos os fundos envolvidos no contrato inteligente sejam transmitidos ao proprietário do contrato e evitar que os usuários lidem com o referido contrato no futuro. No entanto, mesmo se um contrato inteligente for inativado, o código e seus detalhes permanecerão no blockchain.
Contratos inteligentes são um método confiável e econômico de implantar e gerenciar os contratos de uma organização. Sua transparência e autonomia podem reduzir efetivamente os tempos de processamento e automatizar ainda mais as tarefas que antes exigiam interação humana. Conforme as tarefas de aquisição e gestão de contratos da organização se tornam cada vez mais automatizadas, os auditores internos devem aprender mais sobre os atributos, usos e potenciais vulnerabilidades de código dos contratos inteligentes.