Contratos inteligentes da Arweave

SmartWeave

SmartWeave é uma plataforma de contratação inteligente construída sobre a rede Arweave. Ele permite que usuários e desenvolvedores construam programas cuja execução é confiável e descentralizada. Um dos recursos exclusivos do SmartWeave é o processo de avaliação preguiçosa, que remove o ônus do processamento de contratos inteligentes dos nós e o move para os usuários. Isso significa que, em vez de executar cada pedaço de código em todas as máquinas da rede, os estados do contrato são calculados localmente nas máquinas que os solicitam. Isso tem vários efeitos:

  • Contratos inteligentes podem ser escritos em linguagens de programação comuns mais acessíveis (, como JavaScript ).
  • Os programas podem ser executados com quantias arbitrárias de computação sem incorrer em taxas adicionais de rede.
  • O código de contrato inteligente precisa ser confiável por nós na rede. Isso permite que contratos inteligentes sejam escritos sem restrições de segurança – apenas usuários que confiam no desenvolvedor de um contrato executam seu código.

Como os contratos funcionam no SmartWeave

Os contratos SmartWeave funcionam da seguinte maneira:

  1. Quando um desenvolvedor publica um contrato, o código fonte do programa e seu estado inicial são armazenados nas transações da Arweave.
  2. Quando um usuário deseja interagir com um contrato SmartWeave, ele grava suas entradas no programa em uma nova transação Arweave.
  3. Então, quando um usuário deseja calcular o estado atual do contrato, ele consulta a rede usando GraphQL para encontrar o código fonte do contrato, o estado inicial e todas as transações de interação do usuário.
  4. Depois que uma lista das transações em interação é gerada, o cliente SmartWeave executa as entradas sequencialmente usando o código fonte. Transações inválidas são simplesmente ignoradas e a execução passa para a próxima interação. Opcionalmente, vários serviços de cache podem ser usados para acelerar esse processo — com a troca de que algum nível de confiança deve ser delegado.

SmartWeave como um sistema operacional

O SmartWeave foi projetado para ser simples e modular. O padrão Cliente SmartWeave permite acesso total a um mecanismo JavaScript local para execução. O JavaScript foi escolhido por se tornar uma linguagem de programação ‘ universal ’ conhecida por muitos e para a qual muitas outras linguagens podem ser compiladas ( por exemplo, usando WASM ). Isso permite que o ambiente SmartWeave suporte inúmeras linguagens com facilidade. Por exemplo, uwu e Clareza são compiláveis e executados no ambiente SmartWeave. Além disso, a flexibilidade da pilha permite a integração com diferentes serviços de cache para acelerar o tempo de computação no estado do contrato.