Você deve ter notado que quase todos os desenvolvedores estão participando e retweetando a Cerimônia KZG, então o que é a Cerimônia KZG?

Em termos simples, KZG Ceremony é a configuração de confiança do compromisso EIP-4844 KZG, e EIP-4844 é o pré-lançamento do sharding completo do Ethereum.

1. Sharding: uma solução de longo prazo para escalar Ethereum

  • Embora os rollups dimensionem o Ethereum a partir da camada de execução, o sharding melhora a escalabilidade e a capacidade do Ethereum do ponto de vista da disponibilidade de dados.

  • O gráfico de tendências abaixo mostra que o tamanho médio do bloco flutua em torno de 90kb, apesar da rápida iteração do Ethereum nos últimos anos. Embora os rollups eliminem notavelmente o congestionamento da rede, o desempenho geral ainda é restrito pela capacidade de armazenamento de dados da Camada 1.

  • Considerando a segurança e a complexidade da implementação, o sharding é dividido em múltiplas fases, que incluem proto-danksharding e danksharding. Todo o processo pode levar vários anos.

  • Dado o esquema de armazenamento atual, apenas alguns hardwares de alto desempenho são capazes de participar como nós. Após a implementação do sharding, os nós não são obrigados a armazenar todo o conteúdo dos dados históricos, o que aproveita a segurança do Ethereum ao diminuir o limite para se tornar um nó (um custo de armazenamento de dados mais baixo e um maior grau de descentralização).

2. EIP-4844: Retorno notável de curto prazo, um pré-lançamento do sharding completo do Ethereum

EIP-4844 = Proto-Danksharding;

Como a implementação completa do sharding ainda é muito complexa e pode levar anos, o proto-danksharding é o melhor plano intermediário para reduzir o congestionamento do Ethereum no curto prazo.

2.1 Resumo do proto-danksharding

Proto-Danksharding introduz um novo tipo de transação chamado transação de transporte de blob. Beneficiando-se desta atualização, os rollups podem usar “blob” para transferir dados para L1 e armazená-los provisoriamente a um custo relativamente menor. O tamanho de um blob é muito maior que os dados de chamada atuais.

Sobre blob:

  • Cada transação pode transportar no máximo 2 blobs

  • Cada bloco normalmente carrega 8 blobs, que têm capacidade de 1 MB.

Um bloco pode conter 16 blobs, o que resulta em um tamanho de bloco de 2 MB.

  • Um blob não é armazenado permanentemente como registro de histórico como calldata.

  • No projeto do proto-danksharding, os nós ainda precisam baixar o conteúdo completo dos dados e verificar a disponibilidade dos dados.

2.2 Transação de transporte de blob em profundidade

Funcionalidade

A funcionalidade de um blob de dados é semelhante à calldata, que permite que o rollup transfira dados de transação e provas para L1.

Custo

A intenção original do blob é oferecer suporte a alto TPS em rollups. Em comparação com calldata, que usa armazenamento on-chain, esse blob de dados só é baixado e armazenado por um período de tempo. Portanto, os gastos com gás para rollups para garantir a disponibilidade de dados serão previsivelmente mais baixos.

Capacidade

O tamanho de cada blob é 125kB.

2.3 O valor e o desafio da transação de transporte de blobs

Valor

É certo que o surgimento de blobs faz com que os dados de transação se tornem uma espécie de cache, o que reduz ainda mais a necessidade de hardware de armazenamento para os nós e reduz a taxa de gás, fornecendo ao Ethereum armazenamento extra de dados.

Desafio: vamos calcular os requisitos de hardware

O fato é que o tamanho atual do bloco gira em torno de 90kB, mas o tamanho de um blob pode chegar a 125kB

De acordo com o design do EIP-4844, o tamanho de cada slot é normalmente de 1 MB, o que significa que o tamanho total dos dados pode ser calculado da seguinte forma:

1 MB/bloco * 5 blocos/min * 43.200 min/mês * 12 meses/ano = 2,47 TB por ano

É óbvio que o incremento anual de dados é muito maior do que o total de dados Ethereum, o que infere que este plano ingênuo de armazenamento de dados não é eficiente.

O que pode ser otimizado?

Em curto prazo, cada nó ainda precisa armazenar todo o conteúdo dos dados históricos, mas a camada de consenso é implementada com um esquema de que os dados do blob serão excluídos em um determinado período de tempo (30 dias ou 1 ano, a ser definido)

Para benefício a longo prazo, o EIP-4444 precisa ser implementado, o que indica que os nós não são mais necessários para armazenar dados completos. Em vez disso, é adotado um novo mecanismo, que permite aos nós armazenar apenas partes dos dados por um determinado tempo, referindo-se ao chamado esquema de expiração do histórico.

2.4 Compromisso KZG

Compromisso KZG é um esquema de compromisso polinomial adotado pelo proto-danksharding EIP-4844

A Cerimônia KZG é o processo de configuração de confiança para o Compromisso KZG, que atrai mais de 30.000 participantes.

2.4.1 Qual é o compromisso da KZG

KZG é uma abreviatura de Aniket Kate, Gregory M. Zaverucha e Ian Goldberg, que publicou o ensaio de compromisso polinomial “Compromissos de tamanho constante para polinômios e suas aplicações” em 2010. O compromisso KZG é amplamente aplicado no estilo plonk zk-snark protocolo.

Referindo-se ao diagrama da apresentação de Dankrad, a raiz KZG é semelhante à raiz Merkle, exceto que a raiz KZG se compromete com um polinômio, onde cada posição está neste polinômio. Com base no cenário de proto-danksharding, a raiz KZG confirma um conjunto de dados, onde cada ponto de dados pode ser verificado como parte de todo o conjunto.

Uma visão rápida de como o compromisso da KZG funciona internamente

  • Provador: Responsável por calcular o comprometimento. Para a consideração de segurança, um provador não pode modificar o polinômio dado, e o compromisso só é válido para o polinômio atual;

  • Verificador: Responsável por verificar o compromisso enviado pelo provador.

2.4.2 Cerimônia KZG (configuração confiável)

O processo da Cerimônia KZG

Todos podem participar como participantes da cerimônia KZG e contribuir com o segredo. O segredo recém-adicionado será misturado com a saída anterior para formar um novo resultado e, finalmente, gerar um SRS para a configuração de confiança de compromisso KZG. (Confira o diagrama fornecido por Vitalik para uma melhor compreensão)

Configuração de confiança

  • A Cerimônia KZG é uma configuração de confiança multiparticipante amplamente usada chamada power-of-tau;

  • Esta configuração segue o modelo de confiança 1 de N, o que significa que não importa quantos participantes contribuam para o processo de geração da configuração final, desde que uma pessoa mantenha o seu segredo, a validade da configuração pode ser garantida.

Significado da Cerimônia KZG

  • O valor da configuração de confiança do compromisso KZG pode ser interpretado da seguinte forma: para gerar um parâmetro que é necessário para cada execução do protocolo criptográfico

  • Quando o provador calcula o compromisso, o compromisso KZG C = f(s)g1, onde f é a função de avaliação e s é o resultado final da configuração de confiança KZG. Portanto, o segredo final gerado pela atual cerimônia KZG é crucial para a próxima implementação do sharding.

2.4.3 Vantagem do Compromisso KZG

  • Custo

  • O compromisso KZG tem menor complexidade e pode ser verificado de forma eficiente.

  • Nenhuma prova extra é necessária, o que leva a um custo menor e dispensa a exigência de largura de banda.

  • Custo ainda mais baixo aproveitando a pré-compilação de avaliação de pontos.

  • Segurança

  • Se a falha ocorrer, apenas o blob correspondente ao compromisso atual será infectado e não haverá mais efeito em cadeia.

  • Compatibilidade

  • O compromisso da KZG é mais favorável ao DAS, o que evita redundância no desenvolvimento.

2.5 O benefício do EIP-4844

Rolar

Conforme mostrado na imagem abaixo, o rollup precisa enviar o delta do estado e o hash versionado do compromisso KZG por meio de calldata (zk-rollup ainda precisa carregar o zkp).

Após a implementação do EIP-4844, os caros calldata carregam apenas alguns pequenos dados, como delta de estado e compromissos, enquanto os grandes dados, como lote de transações, são colocados no blob.

  • reduzir o custo;

  • reduzir o uso do espaço de armazenamento em bloco.

Melhoria da segurança

  • Disponibilidade de dados: Blob é armazenado na cadeia de beacon, que compartilha a mesma segurança do Ethereum L1.

  • Dados históricos: os nós armazenam blobs apenas por um determinado período de tempo, e o rollup da camada 2 é responsável pelo armazenamento permanente dos dados, o que indica que a segurança dos dados históricos depende do rollup.

Custo

O recurso de baixo custo da transação de transporte de blob pode otimizar o custo geral em x10 a x50.

Enquanto isso, o EIP-4844 introduz uma taxa de blob

  • O gás e o blob terão preços e limites de gás ajustáveis ​​separados;

  • A unidade de preço de um blob é o gás, a quantidade de gás irá flutuar de acordo com o tráfego da rede, que visa manter o número que cada bloco carrega (8 em média).

Implementação de pré-compilação

A execução do EVM só pode visualizar o comprometimento de um blob gerado pelo provador e não pode acessar os dados do blob diretamente. Portanto, o rollup precisa usar o esquema de pré-compilação para verificar a validade do compromisso.

Existem dois algoritmos de pré-compilação mencionados no EIP-4844

  • Pré-compilação de avaliação de ponto

  • Prove que vários compromissos estão comprometidos com o mesmo conjunto de dados.

  • A pré-compilação de avaliação de ponto é adotada principalmente por zk-rollup, o rollup precisa fornecer dois compromissos, compromisso KZG e compromisso zk-rollup

  • Quanto ao rollup otimista, a maioria deles adotou a prova de fraude de múltiplas rodadas, e a rodada final à prova de fraude contém um tamanho de dados menor, o que significa que eles também podem usar a pré-compilação de avaliação de pontos por um custo menor.

  • Pré-compilação de verificação de blob

  • Prove que o hash versionado é válido para o blob correspondente

  • O rollup otimista precisa de acesso a dados completos ao enviar à prova de fraude, portanto, é racional verificar a validade do hash versionado e, em seguida, a verificação à prova de fraude.

3. Danksharding: Um passo crucial para a fragmentação completa

Dimensionamento

Graças ao novo design de tipo de transação do proto-danksharding, que introduz um blob de dados, cada bloco agora possui um cache extra de 1 MB. Esse número crescerá de 16 a 32 vezes após a implementação do danksharding.

Disponibilidade de dados: armazenamento e verificação de dados de alto desempenho

Comparado ao proto-danksharding, onde os nós são obrigados a armazenar todo o conteúdo dos dados históricos, o danksharding permite que os nós armazenem dados apenas após a amostragem.

O

Aproveitando a tecnologia de codificação de eliminação, a proposta de danksharding torna mais fácil (cada nó só precisa baixar partes dos dados) para os nós descobrirem a perda de dados.

Segurança: Quase a mesma

Como os nós não são mais necessários para armazenar todo o conteúdo dos dados históricos, a segurança não é apoiada por apenas um único nó, mas depende de vários nós que armazenam partes dos dados e podem ser posteriormente compostos e recuperar os dados completos.

Embora um esquema de dependência de ponto único seja mais seguro do que uma dependência multiponto, o número de nós na rede Ethereum é muito mais que suficiente, o que é qualificado para atingir o objetivo de garantir a disponibilidade de dados.

Novo desafio: a maior exigência para construtores de blocos

Embora os validadores baixem e armazenem apenas partes dos dados completos, o construtor de blocos ainda precisa fazer upload do conteúdo completo dos dados, que é o blob que contém todos os dados da transação.

De acordo com o diagrama dos slides de Dankrad, podemos ver como PBS (separação proponente/construtor), que foi originalmente projetado para anti-MEV, ajuda a reduzir o requisito de largura de banda durante a construção de blocos.

4. Outro esquema de fragmentação: fragmentação de estado dinâmico do Shardeum

Shardeum é um blockchain L1 compatível com EVM, que usa fragmentação de estado dinâmico para melhorar a escalabilidade e a segurança. Entretanto, a rede shardeum é capaz de garantir um maior nível de descentralização.

Fragmentação de estado dinâmico

Vantagens

Os benefícios mais intuitivos da fragmentação de estado dinâmico são o dimensionamento linear. Cada nó contém um intervalo de endereços diferente e há uma sobreposição significativa entre os endereços cobertos pelos nós. O algoritmo de fragmentação agrupa nós dinamicamente, o que significa que nós recém-adicionados na rede Shardeum funcionam imediatamente para aumentar o TPS

Implementação

A complexidade da implementação da fragmentação de estado dinâmico é mais difícil do que a fragmentação estática. A equipe técnica da Shardeum pesquisou profundamente as tecnologias de sharding. As conquistas anteriores de P&D feitas pela equipe Shardeum (anteriormente tecnologia Shardus) também fazem contribuições significativas, que são capazes de mostrar a escala linear da fragmentação dinâmica de estado em um estágio inicial de desenvolvimento.

Resumo

produtos

Referindo-se à ideia de dividir e conquistar, o sharding de estado dinâmico do Shardeum divide a carga de trabalho de cálculo e armazenamento, o que permite um maior nível de paralelização. Portanto, a rede é capaz de acomodar mais nós, o que melhora ainda mais o rendimento e o nível de descentralização.

Equipe

A equipe Shardeum possui forte experiência em marketing e capacidade narrativa. Eles também têm um conhecimento profundo dos detalhes técnicos, especialmente da fragmentação dinâmica de estado.

Tecnologia

A equipe técnica é capaz de projetar um esquema de fragmentação apropriado e um algoritmo de consenso eficiente (Prova de Participação + Prova de Quorum) com base em sua compreensão do cenário, o que coloca o dimensionamento e o rendimento como a primeira consideração e garante a segurança e o nível de descentralização o mais longe possível.

Progresso

Betanet foi lançada em 2023–02–02.

5. A perspectiva

  • Sharding é uma solução de escalonamento de longo prazo para Ethereum, tem um valor enorme e um significado profundo para toda a rede. É pior prestar muita atenção, pois a implementação do sharding é um processo de iteração. Todas as propostas atuais, incluindo proto-danksharding e danksharding, podem ser atualizadas/alteradas.

  • Embora seja importante compreender o método geral de implementação da fragmentação, também vale a pena prestar atenção às propostas técnicas, como PBS, DAS, mercado de taxas multidimensional, etc., que surgem durante o processo. Poderão existir muitos projetos pendentes que acompanhem esses regimes.

  • É importante saber que fragmentação é um termo geral que descreve um conjunto de tecnologias de escalonamento e que existem diferentes esquemas de aplicação dependendo de cenários específicos. Por exemplo, o design do danksharding pode caber apenas no Ethereum e provavelmente pode levar a um efeito negativo se aplicado em outros L1s, já que a segurança precisa ser garantida por uma grande quantidade de nós na rede.

  • Uma combinação racional de fragmentação e outras soluções de dimensionamento pode alcançar um efeito multiplicador. A atual proposta de danksharding não funcionará sozinha. Em vez disso, rollups e danksharding se complementam para melhorar melhor a escalabilidade e capacidade do Ethereum.

Referência

https://notes.ethereum.org/@dankrad/kzg_commitments_in_proofs

https://notes.ethereum.org/@dankrad/new_sharding

https://vitalik.ca/general/2022/03/14/trustedsetup.html

https://notes.ethereum.org/@vbuterin/proto_danksharding_fa#Porque usar o hash do KZG diretamente

https://ethresear.ch/t/easy-proof-of-equivalence-between-multiple-polynomial-commitment-schemes-to-the-same-data/8188

https://dankradfeist.de/ethereum/2020/06/16/kate-polynomial-commitments.html

https://eips.ethereum.org/EIPS/eip-4844

https://www.eip4844.com/

https://biquanlibai.notion.site/Data-Availability-caa896aae59d489b98f2448f17b01640

https://ethresear.ch/t/a-design-of-decentralized-zk-rollups-based-on-eip-4844/12434

Sobre Foresight Ventures

A Foresight Ventures se dedica a apoiar a inovação disruptiva do blockchain nas próximas décadas. Gerenciamos vários fundos: um fundo de capital de risco, um fundo secundário de gestão ativa, um FOF multiestratégia e um fundo secundário de mercado privado, com AUM superior a US$ 400 milhões. A Foresight Ventures adere à crença de “mentalidade única, independente, agressiva e de longo prazo” e fornece amplo suporte para empresas do portfólio dentro de um ecossistema em crescimento. Nossa equipe é composta por veteranos das principais empresas financeiras e de tecnologia como Sequoia Capital, CICC, Google, Bitmain e muitas outras.

Site: https://www.foresightventures.com/

Twitter: https://twitter.com/ForesightVen

Médio: https://foresightventures.medium.com

Subpilha: https://foresightventures.substack.com

Discord: https://discord.com/invite/maEG3hRdE3

Linktree: https://linktr.ee/foresightventures