Simple Science

Ciência de ponta explicada de forma simples

# Informática# Criptografia e segurança

Repensando a Execução de Contratos Inteligentes na Blockchain

Uma nova abordagem para melhorar o processamento de contratos inteligentes em sistemas de blockchain.

― 7 min ler


Reformulando o DesempenhoReformulando o Desempenhodos ContratosInteligentesvelocidade dos contratos inteligentes.Novo método aumenta a eficiência e a
Índice

A tecnologia blockchain mudou a forma como as Transações digitais são feitas, permitindo transparência e segurança sem precisar de uma autoridade central. Essa inovação também levou ao desenvolvimento de Contratos Inteligentes, que permitem a Execução automática de acordos assim que certas condições são atendidas. No entanto, muitos sistemas de blockchain atuais enfrentam desafios como lentidão nas velocidades de processamento e atrasos nas confirmações de transações, o que pode torná-los menos atrativos para aplicações complexas.

O Problema com os Blockchains Atuais

Muitos sistemas de blockchain existentes têm dificuldade com velocidades de transação baixas e alta latência. Isso acontece principalmente porque cada nó na rede precisa chegar a um Consenso sobre a ordem das transações e realizar a execução. Quando muitas transações acontecem ao mesmo tempo, isso pode levar a lentidões notáveis, especialmente em operações complexas como as que são vistas em aplicativos populares como CryptoKitties. Nesse jogo, os usuários criam e negociam gatinhos digitais, mas os processos intrincados envolvidos podem entupir a rede.

Para melhorar o Desempenho desses sistemas, os pesquisadores têm buscado formas de processar transações de forma concorrente. No entanto, muitos dos métodos propostos vêm com seus próprios problemas, como a necessidade de coordenação extensa entre os nós e o risco de paralisações operacionais, conhecidas como livelocks.

Necessidade de Execução Aprimorada de Contratos Inteligentes

Essa necessidade de melhoria na execução de contratos inteligentes impulsiona a busca por soluções que possam lidar com múltiplas transações ao mesmo tempo, mantendo o sistema seguro e eficiente. As abordagens atuais para melhorar o desempenho muitas vezes complicam ainda mais as coisas em vez de simplificá-las.

O objetivo é encontrar um equilíbrio onde os contratos inteligentes possam ser executados em paralelo, reduzindo os gargalos causados pelos métodos tradicionais. Isso envolve separar o processo de consenso do processo de execução, permitindo que funcionem de forma independente. Ao fazer isso, o sistema pode alcançar maior capacidade e menor latência.

Nova Abordagem para Execução de Contratos Inteligentes

O artigo apresenta um novo método para executar contratos inteligentes de forma eficiente. Esse método faz uma clara distinção entre nós que alcançam consenso e nós que executam transações.

Principais Características do Novo Paradigma

  1. Separação de Funções: O sistema proposto divide as funções dos nós em nós de consenso e nós de execução. Os nós de consenso garantem que as transações sejam organizadas, enquanto os nós de execução lidam com o processamento das transações. Essa divisão permite que ambos os processos ocorram simultaneamente sem interferências.

  2. Sem Coordenação Necessária: Cada nó de execução pode realizar suas funções de forma independente assim que uma transação é atribuída a ele. Isso minimiza a necessidade de coordenação entre os nós, reduzindo assim as chances de atrasos e problemas operacionais como livelocks.

  3. Escalabilidade: O novo método requer apenas um número menor de nós em cada grupo de execução em comparação com métodos existentes, que muitas vezes precisam de muitos nós para manter um certo nível de segurança. Como resultado, o tamanho do grupo pode ser minimizado enquanto ainda se mantém o sistema efetivo e seguro.

  4. Execução Paralela e Assíncrona: Ao permitir que múltiplas transações sejam processadas simultaneamente, o sistema pode lidar com mais operações sem desacelerações significativas. Transações simples podem ser executadas rapidamente enquanto transações complexas são tratadas sem bloquear as mais simples.

Implementando a Nova Abordagem

A implementação desse novo método pode ser feita de duas formas principais:

  1. Aplicação em Sistemas Existentes: A abordagem pode ser integrada a sistemas de blockchain estabelecidos como o Ethereum. Essa integração pode aumentar a capacidade do Ethereum para execução paralela e assíncrona sem exigir hard forks ou mudanças significativas em sua estrutura existente.

  2. Desenvolvimento de um Novo Blockchain: Um novo blockchain independente pode ser construído usando esse paradigma. Esse blockchain utilizaria um protocolo de consenso avançado projetado especificamente para esse tipo de modelo de execução, garantindo alta capacidade e eficiência.

Estudo de Caso: CryptoKitties

Uma aplicação prática do novo método de execução pode ser vista no jogo CryptoKitties. As complexidades dos algoritmos genéticos subjacentes do jogo frequentemente levam a atrasos no processamento das transações. Ao aplicar o novo paradigma de execução de contratos inteligentes, o processamento das transações de CryptoKitties poderia ser significativamente melhorado.

Nesse contexto, o sistema pode lidar com a execução de transações de uma maneira que permite os cálculos complexos exigidos pelo jogo sem afetar o processamento de transações mais simples.

Vantagens Sobre Abordagens Tradicionais

O sistema proposto apresenta várias vantagens sobre abordagens tradicionais de sharding de blockchain:

  1. Desempenho Melhorado: A separação do consenso da execução leva a uma melhor capacidade de transação. A capacidade de processar transações simples e complexas simultaneamente significa que os usuários podem esperar tempos de confirmação mais rápidos.

  2. Prevenção de Livelock: Ao contrário de sistemas anteriores que lutaram contra livelocks, esse novo método é projetado para evitar tais problemas totalmente. Ao eliminar a necessidade de coordenação entre os nós, as transações podem ser processadas sem medo de que uma transação bloqueie outra.

  3. Menores Requisitos de Recursos: Como o novo método requer menos nós para alcançar o mesmo nível de segurança, há menos pressão sobre os recursos da rede. Essa eficiência se traduz em economia de custos para usuários e operadores.

Desafios e Considerações

Apesar de suas inúmeras vantagens, a abordagem proposta traz alguns desafios. Por um lado, os desenvolvedores precisam considerar as dependências em seus contratos inteligentes, o que pode exigir novas estratégias ou ferramentas para facilitar esse processo. Além disso, enquanto os incentivos monetários dentro do sistema podem ajudar a desencorajar ataques de negação de serviço, eles não podem remover completamente a possibilidade de tais vulnerabilidades.

Direções Futuras

O trabalho apresentado abre caminhos para mais pesquisas e desenvolvimento. Esforços futuros podem incluir:

  • Ferramentas para Desenvolvimento de Contratos Inteligentes: Criar ferramentas que simplifiquem a identificação de dependências para desenvolvedores de contratos poderia agilizar a adoção do novo método de execução.

  • Testes de Desempenho Adicionais: Avaliações contínuas do sistema em vários cenários do mundo real ajudarão a refinar suas capacidades e aumentar ainda mais sua eficiência.

Conclusão

A introdução de um novo paradigma para executar contratos inteligentes representa um grande avanço na resolução dos desafios enfrentados pelos sistemas de blockchain atuais. Ao separar efetivamente o consenso da execução, o método proposto permite tempos de processamento mais rápidos, melhor escalabilidade e experiências do usuário aprimoradas.

À medida que a tecnologia blockchain continua a evoluir, soluções como essa desempenharão um papel fundamental na promoção de suas aplicações e na garantia de uma adoção mais ampla em vários setores.

Fonte original

Título: Parallel and Asynchronous Smart Contract Execution

Resumo: Today's blockchains suffer from low throughput and high latency, which impedes their widespread adoption of more complex applications like smart contracts. In this paper, we propose a novel paradigm for smart contract execution. It distinguishes between consensus nodes and execution nodes: different groups of execution nodes can execute transactions in parallel; meanwhile, consensus nodes can asynchronously order transactions and process execution results. Moreover, it requires no coordination among execution nodes and can effectively prevent livelocks. We show two ways of applying this paradigm to blockchains. First, we show how we can make Ethereum support parallel and asynchronous contract execution \emph{without hard-forks}. Then, we propose a new public, permissionless blockchain. Our benchmark shows that, with a fast consensus layer, it can provide a high throughput even for complex transactions like Cryptokitties gene mixing. It can also protect simple transactions from being starved by complex transactions.

Autores: Jian Liu, Peilun Li, Raymond~Cheng, N. Asokan, Dawn Song

Última atualização: 2023-06-08 00:00:00

Idioma: English

Fonte URL: https://arxiv.org/abs/2306.05007

Fonte PDF: https://arxiv.org/pdf/2306.05007

Licença: https://creativecommons.org/licenses/by/4.0/

Alterações: Este resumo foi elaborado com a assistência da AI e pode conter imprecisões. Para obter informações exactas, consulte os documentos originais ligados aqui.

Obrigado ao arxiv pela utilização da sua interoperabilidade de acesso aberto.

Mais de autores

Artigos semelhantes