O Estado dos Clientes Light no Ethereum

PrincipianteJan 12, 2024
Este artigo explora alguns desafios existentes (e progressos) no estado dos clientes Ethereum light enquanto enfatiza a importância de alcançar a falta de confiança sem comprometer a experiência do utilizador.
O Estado dos Clientes Light no Ethereum

O que se segue baseia-se num Twitter Spaces recente, com entusiastas de clientes leves Phil Ngo, Gajinder Singh (Lodestar), Guillaume Ballet (Geth) e Matt Garnett (EF).

Na Lodestar, somos defensores de longa data de clientes leves, software que se conecta a nós completos para interagir com a cadeia de blocos. Como uma alternativa amiga dos recursos e sem confiança para executar o seu próprio nó completo, os clientes leves reduzem a necessidade de confiar em terceiros. Embora não confirmem blocos, são valiosos em termos de acesso direto a dados de blockchain sem confiança.

No entanto, apesar de todo o seu valor teórico, ainda há trabalho para tornar os clientes leves uma parte padrão da interação com o Ethereum. Abaixo, vamos nos aprofundar em alguns desafios existentes (e progresso) enquanto enfatizamos a importância da falta de confiança sem prejudicar a experiência do utilizador.

O que são clientes ligeiros?

A maneira mais descentralizada e confiável de interagir com o Ethereum é executar um nó completo. Mas esta não é uma tarefa fácil — envolve manter uma cópia independente da cadeia de blocos e acesso instantâneo e direto à rede peer-to-peer do Ethereum, que exige memória, armazenamento e CPU substanciais, tornando-a inviável para muitos utilizadores. Isso tudo para não mencionar que, em muitos casos, é desnecessário validar toda a cadeia.

As soluções para este problema, como a apátrida, estão a anos de se tornarem realidade. Por enquanto, sacrificar alguns benefícios de executar um nó completo para funcionar com requisitos mínimos de hardware é uma solução promissora sobre a qual estamos otimistas.

Na verdade, publicamos um artigo sobre clientes ligeiros no ano passado, a defender eles como uma solução para alguns dos nossos problemas.

Para este fim, os clientes leves desempenham um papel fundamental nos sistemas blockchain, oferecendo aos utilizadores que não querem executar nós completos acesso seguro ao Ethereum sem sincronizar toda a rede.

Em vez de armazenar dados locais de blockchain e verificar as alterações de forma autónoma, os clientes leves adquirem os dados de que precisam de um fornecedor, que poderia conectar-se diretamente a um nó completo. Estes dados são depois processados pelo nó de luz, permitindo-lhe confirmar que faz parte da cadeia canónica e manter-se atualizado.

O Ethereum não é o único ecossistema a trabalhar ativamente em clientes ligeiros.

Os desafios dos clientes ligeiros

Como todos sabemos, a execução de um nó completo envolve tarefas intensivas em recursos e limitações relativas às capacidades do dispositivo e aos requisitos computacionais. Embora os clientes leves possam parecer uma alternativa simples, historicamente, têm sido difíceis de implementar.

No entanto, a fusão alterou fundamentalmente o que significa ser um cliente leve no Ethereum, tanto em termos de como eles vão funcionar como do que vão oferecer. O hard fork Altair introduziu o comité de sincronização, ou seja, uma maneira útil de obter um consenso leve sobre o que é o chefe da cadeia. Em essência, esta é uma integração mais nativa de clientes leves no protocolo.

Com prova de participação, agora temos um protocolo de cliente leve onde pode basicamente escolher qualquer parte da cadeia, construir uma prova e fazer um mergulho profundo. Isso não estava disponível anteriormente, tornando todo o espaço mais interessante e incentivando mais pessoas a construir em torno de clientes leves.

Lodestar provador
Uma das coisas em que a equipa da Lodestar tem trabalhado é um provador. Ou seja, usar a sincronização leve do cliente para verificar os dados do lado da execução, portanto, verificar as informações que está a receber de um fornecedor (como o Infura) está correto.

A esperança é que coisas assim adicionem outra camada de segurança e um pouco mais de descentralização ao protocolo. Este também é apenas um primeiro passo. Precisamos de exemplos mais concretos do que pode ser construído com este potencial.

O que nos impede de usar clientes leves hoje?

A resposta a isto tem menos a ver com o lado técnico e mais com a adoção dos POCs e da infraestrutura que temos (por exemplo, a Biblioteca Prover).

Precisamos de acrescentar mais capacidades de prova relativamente a transações e recibos, o que exigiria que passássemos para a codificação SSZ das transações, mas fora isso, em termos de protocolo, estamos lá.

Podemos realmente usar esta tecnologia agora! Em termos de UX, porém, precisamos de chegar a um local onde o cliente leve esteja apenas a funcionar em segundo plano e não perturbe os utilizadores ou exija passos adicionais deles.

É claro que é difícil forçar a adoção de algo num espaço descentralizado, mas deveríamos estar a pensar em como usar incentivos para promover isso e como podemos fazer com que a MetaMask, Rainbow, etc, considere isso também.

A mudança de Merkle para Verkle trees

Alterar a estrutura de dados para maior eficiência — passar da configuração da árvore Merkle Patricia para as árvores Verkle mais novas é um divirador de jogo para clientes leves que, de outra forma, teriam dificuldades com tamanhos de prova pesados.

A introdução das árvores Verkle aborda esta preocupação através de uma nova estrutura de dados. Através da sua utilização inovadora de técnicas baseadas em polinómios, as árvores Verkle reduzem substancialmente o tamanho das provas necessárias para a verificação, tornando o processo mais gerível e simplificado para clientes leves.

“A ideia é que graças ao Verkle, tem pequenas provas. E por causa disso, pode fornecer aos clientes leves, vamos chamá-los de clientes apátridas, uma maneira de verificar tudo o que foi dado para que haja menos confiança envolvida.”

Esta atualização significa uma mudança fundamental na forma como os clientes leves interagem com os dados da Ethereum, aumentando a sua capacidade de verificar eficientemente o estado da cadeia de blocos sem comprometer a segurança ou a confiança.

Isso não só beneficia os atuais clientes leves, mas também prepara o cenário para futuras inovações, criando um espaço onde os utilizadores podem lidar com o Ethereum de forma mais suave, segura e eficiente.

Os clientes leves devem ser padronizados em L1 e L2?

Este é um tópico um tanto controverso que está atualmente em debate. De acordo com Guillaume, “Acho que ainda não devemos harmonizar a estrutura de dados porque os L2s estão a experimentar, são as pessoas que se movem com rapidez e quebra, e o L1 é mais cauteloso e um pouco mais conservador.”

A verdade é que provavelmente precisamos de mais tempo para considerar a normalização. O que faz sentido em relação ao tempo é uma questão em aberto, mas talvez estejamos cinco a dez anos antes que a comunidade possa sequer pensar num processo de harmonização.

Este atraso é indiscutivelmente justificado pela natureza complexa das camadas Ethereum e pelo desafio de implementar mudanças devido às tecnologias e designs já existentes. O resultado final: devemos esperar por um momento mais adequado para quaisquer esforços potenciais de normalização, permitindo uma infraestrutura Ethereum mais madura e estabilizada.

O Light Client Summit @ DevConnect 🇹 🇷

Os construtores de Ethereum de todo o mundo vão reunir-se em Istambul, Turquia, na próxima semana para o DevConnect — Junte-se a nós para a terceira iteração do Light Client Summit, com apresentações e discussão sobre a direção do desenvolvimento de clientes leves!

Não consegue? Fique ligado no Twitter, participe da conversa no Telegram ou entre em ação via Discord #light -clients.

Lodestar

Lodestar é o mais novo cliente de consenso Ethereum construído com TypeScript e mantido pela ChainSafe. O nosso cliente de código aberto e as nossas bibliotecas tornam o desenvolvimento no Ethereum acessível ao maior grupo de programadores do mundo. Com foco em clientes leves, o Lodestar visa melhorar a usabilidade de dados de blockchain verificáveis para todos os tipos de dispositivos e seus usuários.

Contribuir para a diversidade do cliente. Execute o Lodestar com o nosso guia de início rápido. Tem uma pergunta? Par pelo nosso Discord 👋

Isenção de responsabilidade:

  1. Este artigo foi reimpresso de [chainsafe]. Todos os direitos de autor pertencem ao autor original [Colin A]. Se houver objeções a esta reimpressão, contacte a equipa do Gate Learn, e eles tratarão disso imediatamente.
  2. Isenção de responsabilidade: As opiniões e opiniões expressas neste artigo são exclusivamente do autor e não constituem nenhum conselho de investimento.
  3. As traduções do artigo para outras línguas são feitas pela equipa do Gate Learn. A menos que mencionado, é proibido copiar, distribuir ou plagiar os artigos traduzidos.
今すぐ始める
登録して、
$100
のボーナスを獲得しよう!
アカウント作成