ZK Rollups: Elefante na Sala

IntermediárioMay 28, 2024
As provas de conhecimento zero têm o potencial de criar um ecossistema de blockchain mais privado e escalável. No entanto, muitos aspectos do conhecimento zero são mal compreendidos ou diferem das implementações comumente percebidas. Este artigo analisa as provas de conhecimento zero a partir de duas perspetivas principais: conhecimento zero e concisão. Quando as provas de conhecimento zero e os ZK rollups amadurecerem tecnologicamente, certamente oferecerão melhores soluções para abordar o trilema do blockchain.
ZK Rollups: Elefante na Sala
Encaminhe o Título Original ‘[Série ZK - 1] ZK Rollups: Elefante na Sala’ Sumário - Embora as provas de conhecimento zero (ZKPs) prometam um ecossistema de blockchain mais privado e escalável, muitos aspectos do ZK são mal compreendidos ou implementados de forma diferente do que comumente percebido. - As ZKPs têm dois aspectos principais: “Conhecimento Zero” e “Succinctness”. Embora não esteja incorreto, a maioria dos ZK rollups utiliza apenas a propriedade de concisão; os dados da transação e as informações da conta não são completamente mantidos em conhecimento zero nem privados. - Os ZK rollups podem não ser uma escolha ideal como pilha de desenvolvimento para todos os tipos de DApps. Por exemplo, a geração de ZKPs pode atuar como um gargalo para a finalidade rápida, diminuindo o desempenho de jogos Web3, enquanto os métodos de garantia de disponibilidade de dados baseados em publicação de diferenças de estado podem prejudicar o serviço de protocolos de empréstimo DeFi. Figura 1: ZK é uma boa palavra da moda (Fonte: imgflip) O estado atual da indústria de blockchain pode ser comparado à era do Conhecimento Zero (ZK). Em toda parte que você olha, o ZK é proeminente… Está se tornando cada vez mais raro encontrar projetos de blockchain de próxima geração que não incorporam o ZK em seus nomes. Do ponto de vista técnico, não há como negar que o ZK é uma tecnologia promissora capaz de contribuir para um ecossistema de blockchain mais escalável e privado. No entanto, devido ao complexo background técnico do ZK, muitos investidores, tanto varejistas quanto institucionais, frequentemente se veem investindo em projetos de ZK com base na "crença" de que parece legal, novo e pode resolver o trilema do blockchain — sem compreender completamente como a tecnologia ZK beneficia cada projeto. Nesta série ZK, exploraremos tanto as verdades inconvenientes (desvantagens) quanto as aplicações benéficas dos ZK rollups. Primeiro, descompactaremos as duas propriedades principais das provas de ZK (ZKPs) para blockchains: “conhecimento zero” e “concisão”; então, discutiremos como um grande número de ZK rollups atualmente em serviço não utiliza realmente o aspecto de “conhecimento zero”. Em seguida, examinaremos as áreas onde a aplicação de ZK rollup é mais prejudicial do que benéfica, evitando problemas conhecidos como complexidade de implementação. Finalmente, destacaremos projetos exemplares que incorporam efetivamente os princípios do ZK e realmente demonstram benefícios tangíveis provenientes do uso da tecnologia ZK. Recapitulação: Ciclo de Vida da Transação em ZK Rollups Os rollups são uma solução de escalonamento que aborda as restrições de throughput dos L1s executando pacotes de transações off-chain e armazenando dados de resumo do estado mais recente do L2 no L1. Entre eles, os ZK rollups se destacam por sua capacidade de retirar fundos prontamente, enviando provas de validade para a computação off-chain no-chain. Antes de mergulharmos em questões com ZK rollups, vamos recapitular brevemente seu ciclo de vida da transação. Figura 2: Ciclo de vida da transação em ZK rollups (Fonte: Presto Research) - Cada usuário L2 gera e envia sua transação ao sequenciador. - O sequenciador agrega e ordena várias transações, calcula o novo estado do rollup executando-as off-chain. Posteriormente, o sequenciador compromete este novo estado do rollup ao contrato inteligente do estado on-chain na forma de um “lote”, junto com os dados da transação L2 correspondente comprimidos em blobs para garantir a disponibilidade de dados. - O lote é enviado ao provador, e o provador cria uma prova de validade (ou ZKP) da execução do lote. Esta prova de validade é então enviada ao contrato inteligente do verificador L1 junto com os dados extras (ou seja, a raiz do estado anterior) que ajudam o verificador a reconhecer o que está verificando. - Após o contrato verificador verificar que a prova é válida, o estado do rollup é atualizado e as transações L2 no lote comprometido são consideradas como finalizadas. (Obs.: Esta explicação é uma versão simplificada do processo completo de ZK rollup, e cada uma das implementações pode variar dependendo do protocolo. Pode haver mais entidades em L2s se separarmos os papéis; como agregadores, executores e proponentes. Os níveis de pedaços de dados também podem diferir, como blocos, pedaços e lotes, dependendo de seus usos. A explicação acima pressupõe uma situação em que um sequenciador centralizado possui forte autoridade para executar transações e também produz um formato de pedaço de dados unificado como lotes.) Ao contrário dos rollups otimistas, graças às ZKPs (por exemplo, ZK-SNARKs ou ZK-STARKs), os ZK rollups podem verificar a correção da execução de milhares de transações apenas verificando uma prova simples, sem repetir todas elas. Então, o que é esse ZKP, e que características ele tem? Duas Propriedades das ZKPs: Conhecimento Zero e Concisão Como o nome sugere, ZKP é basicamente uma prova. Uma prova pode ser qualquer coisa que possa respaldar suficientemente a alegação do comprovante. Digamos que Bob (comprovante) queira convencer Alice (verificador) sobre a autoridade de seu computador portátil. A maneira mais fácil de provar isso é: Bob simplesmente diz a Alice a senha, e Alice digita a senha no laptop e verifica se Bob tem autoridade. No entanto, este processo de verificação é insatisfatório tanto para Alice quanto para Bob. Se Bob tiver definido uma senha muito longa e complicada, seria muito desafiador para Alice digitá-la corretamente (assumindo que Alice não pode copiar e colar). Mais realisticamente, Bob pode relutar em divulgar sua senha para Alice a fim de provar sua autoridade. E se houver um processo de verificação onde Alice pode verificar rapidamente a autoridade do computador, sem que Bob tenha que revelar sua senha? Por exemplo, Bob pode apenas tocar o dedo para desbloquear o laptop com o Touch ID na frente de Alice, como na Figura 3 (observe que este não é um exemplo perfeito para ZKP). É aqui que tanto Alice quanto Bob podem se beneficiar das duas propriedades-chave das ZKPs: a propriedade de conhecimento zero e a propriedade de concisão. Figura 3: Intuição de alto nível de Conhecimento Zero e Concisão (Fonte: imgflip) Conhecimento Zero A propriedade “conhecimento zero” refere-se a um caso em que a prova gerada pelo comprovante não revela nada sobre a testemunha secreta (ou seja, dados privados), deixando o verificador sem saber nada sobre os dados, exceto a validade da prova. Em blockchain, essa propriedade pode ser utilizada para preservar a privacidade dos usuários individuais. Se ZKPs são aplicados para cada transação, os usuários podem provar a legitimidade de suas ações (ou seja, provar que um usuário tem fundos suficientes para fazer uma transação) sem expor os detalhes de suas transações (por exemplo, transferências, atualizações de saldo da conta, implantações de contratos inteligentes e execuções de contratos inteligentes) ao público. Concisão A outra propriedade “concisão” refere-se à capacidade de ZK de gerar uma prova curta e rápida de verificar a reivindicação de um grande tamanho. Em outras palavras, é a consolidação de algo grande em algo compacto. Em blockchain, isso é especialmente utilizado em rollups. Com ZKPs, os comprovantes em L2s podem reivindicar a execução correta das transações, enviando uma prova concisa para o verificador em L1 (a validade de TBs de transações pode ser representada com 10~100 KB de prova). Os verificadores então podem confirmar facilmente a validade das execuções em um curto espaço de tempo (ou seja, 10ms~1s) verificando a prova concisa em vez de repetir todas as transações. ZK Rollup é Ótimo, mas Não Significa Privacidade As características ZKP mencionadas são bem utilizadas nos ZK rollups. Embora os verificadores não possam inferir os dados originais da transação dos ZKPs recebidos do comprovante, verificar a prova concisa permite que eles validem eficientemente a reivindicação do comprovante (ou seja, o novo estado L2). Isso dito, a afirmação de que os ZK rollups em sua iteração atual aderem plenamente às propriedades de conhecimento zero e concisão é enganosa. Isso pode ser verdade quando focado exclusivamente na interação entre o comprovante e o verificador, mas também existem outras componentes nos ZK rollups, como sequenciador, comprovante e nós de rollup. O “princípio de conhecimento zero” é garantido para eles também? O desafio em alcançar privacidade total com ZKPs em qualquer ZK rollups surge da possível comprometimento se outras partes permanecerem públicas enquanto algumas são tornadas privadas pelo ZK. Pense no ciclo de vida da transação em ZK rollups — a privacidade é mantida quando a transação é enviada de um usuário para sequenciadores? E para os provadores? Ou a privacidade das informações da conta individual é preservada quando o lote L2 é enviado para a camada DA? Nenhum dos cenários atualmente é verdadeiro. Figura 4: Vazamento de privacidade em ZK rollups (Fonte: Presto Research) Na maioria dos ZK rollups mainstream, o sequenciador ou o comprovante (ou algumas outras entidades centralizadas com forte autoridade) têm visibilidade clara dos detalhes da transação, que incluem quantias de transferência, atualizações de saldo da conta, implantações de contratos e execuções de contratos. Como exemplo fácil, você pode observar facilmente todos os detalhes mencionados visitando qualquer um dos exploradores de blocos ZK rollup. Além disso, considere uma situação em que o sequenciador centralizado está de alguma forma inoperante e outro nó de rollup tenta restaurar o estado do rollup. Ele pegará os dados L2 publicamente publicados da camada DA (que é o L1 Ethereum na maioria dos casos) e reconstruirá o estado L2. Nesse processo, qualquer nó capaz de repetir as transações L2 armazenadas na camada DA pode recuperar as informações sobre o status da conta de cada usuário. Assim, o termo “conhecimento zero” é implementado de forma fragmentada nos ZK rollups atuais. Embora isso não possa ser considerado como incorreto, é evidente que difere da noção comumente percebida de que “ZK significa conhecimento zero e é igual a total privacidade”. A novidade dos ZK rollups atuais é alavancar a propriedade de “concisão” em vez de “conhecimento zero”, que é executar as transações off-chain e gerar provas concisas para verificadores verificar a validade da execução de uma forma rápida e escalável sem reexecutá-las. Por esse motivo, alguns ZK rollups, como Starknet, se referem a si mesmos como “Rollups de Validade” para evitar confusão, enquanto outros que garantem verdadeira privacidade ZK, como Aztec, se rotulam como rollups ZK-ZK. Pondere a Praticidade dos ZK Rollups Como mencionado anteriormente, a privacidade ZK não está totalmente implementada na maioria dos ZK rollups. Então, qual deveria ser nosso próximo objetivo? Alcançar privacidade total da transação implantando totalmente o ZK em todas as partes do rollup? Na verdade, este não é um problema simples. Além da necessidade de avanços tecnológicos significativos para amadurecer ainda mais a tecnologia, permanecem questões polêmicas para o ZK em termos de ideologia (por exemplo, uso ilegal de transações privadas) e praticidade (por exemplo, é realmente útil?). Dado que debater a moralidade da privacidade total da transação está além do escopo deste artigo, vamos focar nossa atenção nos dois pontos de praticidade dos ZK rollups encontrados por projetos de blockchain. Ponto #1: A geração de ZKPs pode ser um gargalo para a finalidade rápida Vamos primeiro discutir sobre a praticidade dos ZK rollups em si. O ponto de venda mais convincente dos ZK rollups é o curto atraso na retirada de ativos devido à “rápida finalidade” das transações graças ao ZKPs. TPS aprimorado e baixas taxas de transação são um bônus. O setor que mais alavanca efetivamente as características dos ZK rollups é o gaming, uma vez que depósitos e retiradas de moedas de jogo ocorrem com muita frequência, e há um volume elevado de transações em jogo geradas a cada segundo. Mas os ZK rollups realmente podem ser considerados como a pilha ideal para jogos? Para isso, precisamos pensar um pouco mais sobre o conceito de “rápida finalidade” nos ZK rollups. Imagine uma situação em que um usuário está desfrutando de um jogo Web3 executado em uma pilha baseada em ZK rollup. O usuário negocia um item de jogo por uma moeda de jogo e tenta retirar esse ativo do jogo. Para retirar o ativo, a transação do jogo tem que ser finalizada; isso significa que a transação tem que ser incluída no novo compromisso de estado do rollup, o ZKP correspondente deve ser enviado para o L1, e há uma espera para que a prova seja finalizada no L1 Ethereum para garantir que a transação não possa ser revertida. Se todos esses processos ocorressem instantaneamente, então sim, poderíamos alcançar a “confirmação instantânea da transação” para a qual os ZK rollups são frequentemente promovidos, permitindo que o usuário retire o ativo imediatamente. No entanto, a realidade está longe disso. De acordo com estatísticas fornecidas pela L2beat sobre o tempo de finalidade para diferentes ZK rollups, o Era zkSync leva cerca de 2 horas, o Linea leva 3 horas, e o Starknet tem uma média de cerca de 8 horas. Isso ocorre porque leva tempo para gerar um ZKP de um comprovante, e leva tempo adicional para incluir mais transações em um único lote (ou seja, uma única prova) para reduzir o custo das taxas de transação. Em outras palavras, a velocidade de geração e envio das provas é um gargalo potencial para alcançar a rápida finalidade nos ZK rollups, o que pode diminuir a experiência do usuário nos jogos Web3. Figura 5: A geração de ZKP pode ser um gargalo potencial para a finalidade rápida nos ZK rollups (Fonte: imgflip) Por outro lado, as cadeias otimizadas para jogos como Ronin (alimenta jogos Web3 como Pixels e Axie Infinity) garantem finalidade super rápida sacrificando descentralização e segurança. Ronin não é uma cadeia baseada em ZK ou rollup: é uma blockchain EVM que roda sob o algoritmo de consenso PoA (Prova de Autoridade) + DPoS (Prova de Participação Delegada). Ele seleciona 22 validadores com base na quantidade de participação delegada, e esses validadores simplesmente geram e validam blocos de maneira PoA (ou seja, processo de votação apenas entre os 22 validadores). Portanto, as transações são finalizadas rapidamente em Ronin, pois quase não há atraso para que as transações sejam incluídas no bloco e demore para serem validadas. Após o hardfork Shillin, leva uma média de apenas 6 segundos para finalizar cada transação. Ronin alcança tudo isso sem ZKP. E sim, é claro, Ronin também tem desvantagens. Ser governado por validadores centralizados o torna relativamente mais vulnerável a um ataque de 51%. Além disso, como não utiliza o Ethereum como camada de liquidação, não pode herdar a segurança do Ethereum. Também existem riscos de segurança associados ao uso de uma ponte entre cadeias. Mas pense na perspectiva dos usuários: eles se importarão com isso? Os ZK rollups atuais sem sequenciamento descentralizado também sofrem do problema de ponto único de falha (SPOF). O Ethereum lhes oferece segurança, pois reduz a probabilidade de reversão de transações, mas se o sequenciador

Resumo

ZK Rollups: Elefante na Sala

IntermediárioMay 28, 2024
As provas de conhecimento zero têm o potencial de criar um ecossistema de blockchain mais privado e escalável. No entanto, muitos aspectos do conhecimento zero são mal compreendidos ou diferem das implementações comumente percebidas. Este artigo analisa as provas de conhecimento zero a partir de duas perspetivas principais: conhecimento zero e concisão. Quando as provas de conhecimento zero e os ZK rollups amadurecerem tecnologicamente, certamente oferecerão melhores soluções para abordar o trilema do blockchain.
ZK Rollups: Elefante na Sala

Resumo

Encaminhe o Título Original ‘[Série ZK - 1] ZK Rollups: Elefante na Sala’ Sumário - Embora as provas de conhecimento zero (ZKPs) prometam um ecossistema de blockchain mais privado e escalável, muitos aspectos do ZK são mal compreendidos ou implementados de forma diferente do que comumente percebido. - As ZKPs têm dois aspectos principais: “Conhecimento Zero” e “Succinctness”. Embora não esteja incorreto, a maioria dos ZK rollups utiliza apenas a propriedade de concisão; os dados da transação e as informações da conta não são completamente mantidos em conhecimento zero nem privados. - Os ZK rollups podem não ser uma escolha ideal como pilha de desenvolvimento para todos os tipos de DApps. Por exemplo, a geração de ZKPs pode atuar como um gargalo para a finalidade rápida, diminuindo o desempenho de jogos Web3, enquanto os métodos de garantia de disponibilidade de dados baseados em publicação de diferenças de estado podem prejudicar o serviço de protocolos de empréstimo DeFi. Figura 1: ZK é uma boa palavra da moda (Fonte: imgflip) O estado atual da indústria de blockchain pode ser comparado à era do Conhecimento Zero (ZK). Em toda parte que você olha, o ZK é proeminente… Está se tornando cada vez mais raro encontrar projetos de blockchain de próxima geração que não incorporam o ZK em seus nomes. Do ponto de vista técnico, não há como negar que o ZK é uma tecnologia promissora capaz de contribuir para um ecossistema de blockchain mais escalável e privado. No entanto, devido ao complexo background técnico do ZK, muitos investidores, tanto varejistas quanto institucionais, frequentemente se veem investindo em projetos de ZK com base na "crença" de que parece legal, novo e pode resolver o trilema do blockchain — sem compreender completamente como a tecnologia ZK beneficia cada projeto. Nesta série ZK, exploraremos tanto as verdades inconvenientes (desvantagens) quanto as aplicações benéficas dos ZK rollups. Primeiro, descompactaremos as duas propriedades principais das provas de ZK (ZKPs) para blockchains: “conhecimento zero” e “concisão”; então, discutiremos como um grande número de ZK rollups atualmente em serviço não utiliza realmente o aspecto de “conhecimento zero”. Em seguida, examinaremos as áreas onde a aplicação de ZK rollup é mais prejudicial do que benéfica, evitando problemas conhecidos como complexidade de implementação. Finalmente, destacaremos projetos exemplares que incorporam efetivamente os princípios do ZK e realmente demonstram benefícios tangíveis provenientes do uso da tecnologia ZK. Recapitulação: Ciclo de Vida da Transação em ZK Rollups Os rollups são uma solução de escalonamento que aborda as restrições de throughput dos L1s executando pacotes de transações off-chain e armazenando dados de resumo do estado mais recente do L2 no L1. Entre eles, os ZK rollups se destacam por sua capacidade de retirar fundos prontamente, enviando provas de validade para a computação off-chain no-chain. Antes de mergulharmos em questões com ZK rollups, vamos recapitular brevemente seu ciclo de vida da transação. Figura 2: Ciclo de vida da transação em ZK rollups (Fonte: Presto Research) - Cada usuário L2 gera e envia sua transação ao sequenciador. - O sequenciador agrega e ordena várias transações, calcula o novo estado do rollup executando-as off-chain. Posteriormente, o sequenciador compromete este novo estado do rollup ao contrato inteligente do estado on-chain na forma de um “lote”, junto com os dados da transação L2 correspondente comprimidos em blobs para garantir a disponibilidade de dados. - O lote é enviado ao provador, e o provador cria uma prova de validade (ou ZKP) da execução do lote. Esta prova de validade é então enviada ao contrato inteligente do verificador L1 junto com os dados extras (ou seja, a raiz do estado anterior) que ajudam o verificador a reconhecer o que está verificando. - Após o contrato verificador verificar que a prova é válida, o estado do rollup é atualizado e as transações L2 no lote comprometido são consideradas como finalizadas. (Obs.: Esta explicação é uma versão simplificada do processo completo de ZK rollup, e cada uma das implementações pode variar dependendo do protocolo. Pode haver mais entidades em L2s se separarmos os papéis; como agregadores, executores e proponentes. Os níveis de pedaços de dados também podem diferir, como blocos, pedaços e lotes, dependendo de seus usos. A explicação acima pressupõe uma situação em que um sequenciador centralizado possui forte autoridade para executar transações e também produz um formato de pedaço de dados unificado como lotes.) Ao contrário dos rollups otimistas, graças às ZKPs (por exemplo, ZK-SNARKs ou ZK-STARKs), os ZK rollups podem verificar a correção da execução de milhares de transações apenas verificando uma prova simples, sem repetir todas elas. Então, o que é esse ZKP, e que características ele tem? Duas Propriedades das ZKPs: Conhecimento Zero e Concisão Como o nome sugere, ZKP é basicamente uma prova. Uma prova pode ser qualquer coisa que possa respaldar suficientemente a alegação do comprovante. Digamos que Bob (comprovante) queira convencer Alice (verificador) sobre a autoridade de seu computador portátil. A maneira mais fácil de provar isso é: Bob simplesmente diz a Alice a senha, e Alice digita a senha no laptop e verifica se Bob tem autoridade. No entanto, este processo de verificação é insatisfatório tanto para Alice quanto para Bob. Se Bob tiver definido uma senha muito longa e complicada, seria muito desafiador para Alice digitá-la corretamente (assumindo que Alice não pode copiar e colar). Mais realisticamente, Bob pode relutar em divulgar sua senha para Alice a fim de provar sua autoridade. E se houver um processo de verificação onde Alice pode verificar rapidamente a autoridade do computador, sem que Bob tenha que revelar sua senha? Por exemplo, Bob pode apenas tocar o dedo para desbloquear o laptop com o Touch ID na frente de Alice, como na Figura 3 (observe que este não é um exemplo perfeito para ZKP). É aqui que tanto Alice quanto Bob podem se beneficiar das duas propriedades-chave das ZKPs: a propriedade de conhecimento zero e a propriedade de concisão. Figura 3: Intuição de alto nível de Conhecimento Zero e Concisão (Fonte: imgflip) Conhecimento Zero A propriedade “conhecimento zero” refere-se a um caso em que a prova gerada pelo comprovante não revela nada sobre a testemunha secreta (ou seja, dados privados), deixando o verificador sem saber nada sobre os dados, exceto a validade da prova. Em blockchain, essa propriedade pode ser utilizada para preservar a privacidade dos usuários individuais. Se ZKPs são aplicados para cada transação, os usuários podem provar a legitimidade de suas ações (ou seja, provar que um usuário tem fundos suficientes para fazer uma transação) sem expor os detalhes de suas transações (por exemplo, transferências, atualizações de saldo da conta, implantações de contratos inteligentes e execuções de contratos inteligentes) ao público. Concisão A outra propriedade “concisão” refere-se à capacidade de ZK de gerar uma prova curta e rápida de verificar a reivindicação de um grande tamanho. Em outras palavras, é a consolidação de algo grande em algo compacto. Em blockchain, isso é especialmente utilizado em rollups. Com ZKPs, os comprovantes em L2s podem reivindicar a execução correta das transações, enviando uma prova concisa para o verificador em L1 (a validade de TBs de transações pode ser representada com 10~100 KB de prova). Os verificadores então podem confirmar facilmente a validade das execuções em um curto espaço de tempo (ou seja, 10ms~1s) verificando a prova concisa em vez de repetir todas as transações. ZK Rollup é Ótimo, mas Não Significa Privacidade As características ZKP mencionadas são bem utilizadas nos ZK rollups. Embora os verificadores não possam inferir os dados originais da transação dos ZKPs recebidos do comprovante, verificar a prova concisa permite que eles validem eficientemente a reivindicação do comprovante (ou seja, o novo estado L2). Isso dito, a afirmação de que os ZK rollups em sua iteração atual aderem plenamente às propriedades de conhecimento zero e concisão é enganosa. Isso pode ser verdade quando focado exclusivamente na interação entre o comprovante e o verificador, mas também existem outras componentes nos ZK rollups, como sequenciador, comprovante e nós de rollup. O “princípio de conhecimento zero” é garantido para eles também? O desafio em alcançar privacidade total com ZKPs em qualquer ZK rollups surge da possível comprometimento se outras partes permanecerem públicas enquanto algumas são tornadas privadas pelo ZK. Pense no ciclo de vida da transação em ZK rollups — a privacidade é mantida quando a transação é enviada de um usuário para sequenciadores? E para os provadores? Ou a privacidade das informações da conta individual é preservada quando o lote L2 é enviado para a camada DA? Nenhum dos cenários atualmente é verdadeiro. Figura 4: Vazamento de privacidade em ZK rollups (Fonte: Presto Research) Na maioria dos ZK rollups mainstream, o sequenciador ou o comprovante (ou algumas outras entidades centralizadas com forte autoridade) têm visibilidade clara dos detalhes da transação, que incluem quantias de transferência, atualizações de saldo da conta, implantações de contratos e execuções de contratos. Como exemplo fácil, você pode observar facilmente todos os detalhes mencionados visitando qualquer um dos exploradores de blocos ZK rollup. Além disso, considere uma situação em que o sequenciador centralizado está de alguma forma inoperante e outro nó de rollup tenta restaurar o estado do rollup. Ele pegará os dados L2 publicamente publicados da camada DA (que é o L1 Ethereum na maioria dos casos) e reconstruirá o estado L2. Nesse processo, qualquer nó capaz de repetir as transações L2 armazenadas na camada DA pode recuperar as informações sobre o status da conta de cada usuário. Assim, o termo “conhecimento zero” é implementado de forma fragmentada nos ZK rollups atuais. Embora isso não possa ser considerado como incorreto, é evidente que difere da noção comumente percebida de que “ZK significa conhecimento zero e é igual a total privacidade”. A novidade dos ZK rollups atuais é alavancar a propriedade de “concisão” em vez de “conhecimento zero”, que é executar as transações off-chain e gerar provas concisas para verificadores verificar a validade da execução de uma forma rápida e escalável sem reexecutá-las. Por esse motivo, alguns ZK rollups, como Starknet, se referem a si mesmos como “Rollups de Validade” para evitar confusão, enquanto outros que garantem verdadeira privacidade ZK, como Aztec, se rotulam como rollups ZK-ZK. Pondere a Praticidade dos ZK Rollups Como mencionado anteriormente, a privacidade ZK não está totalmente implementada na maioria dos ZK rollups. Então, qual deveria ser nosso próximo objetivo? Alcançar privacidade total da transação implantando totalmente o ZK em todas as partes do rollup? Na verdade, este não é um problema simples. Além da necessidade de avanços tecnológicos significativos para amadurecer ainda mais a tecnologia, permanecem questões polêmicas para o ZK em termos de ideologia (por exemplo, uso ilegal de transações privadas) e praticidade (por exemplo, é realmente útil?). Dado que debater a moralidade da privacidade total da transação está além do escopo deste artigo, vamos focar nossa atenção nos dois pontos de praticidade dos ZK rollups encontrados por projetos de blockchain. Ponto #1: A geração de ZKPs pode ser um gargalo para a finalidade rápida Vamos primeiro discutir sobre a praticidade dos ZK rollups em si. O ponto de venda mais convincente dos ZK rollups é o curto atraso na retirada de ativos devido à “rápida finalidade” das transações graças ao ZKPs. TPS aprimorado e baixas taxas de transação são um bônus. O setor que mais alavanca efetivamente as características dos ZK rollups é o gaming, uma vez que depósitos e retiradas de moedas de jogo ocorrem com muita frequência, e há um volume elevado de transações em jogo geradas a cada segundo. Mas os ZK rollups realmente podem ser considerados como a pilha ideal para jogos? Para isso, precisamos pensar um pouco mais sobre o conceito de “rápida finalidade” nos ZK rollups. Imagine uma situação em que um usuário está desfrutando de um jogo Web3 executado em uma pilha baseada em ZK rollup. O usuário negocia um item de jogo por uma moeda de jogo e tenta retirar esse ativo do jogo. Para retirar o ativo, a transação do jogo tem que ser finalizada; isso significa que a transação tem que ser incluída no novo compromisso de estado do rollup, o ZKP correspondente deve ser enviado para o L1, e há uma espera para que a prova seja finalizada no L1 Ethereum para garantir que a transação não possa ser revertida. Se todos esses processos ocorressem instantaneamente, então sim, poderíamos alcançar a “confirmação instantânea da transação” para a qual os ZK rollups são frequentemente promovidos, permitindo que o usuário retire o ativo imediatamente. No entanto, a realidade está longe disso. De acordo com estatísticas fornecidas pela L2beat sobre o tempo de finalidade para diferentes ZK rollups, o Era zkSync leva cerca de 2 horas, o Linea leva 3 horas, e o Starknet tem uma média de cerca de 8 horas. Isso ocorre porque leva tempo para gerar um ZKP de um comprovante, e leva tempo adicional para incluir mais transações em um único lote (ou seja, uma única prova) para reduzir o custo das taxas de transação. Em outras palavras, a velocidade de geração e envio das provas é um gargalo potencial para alcançar a rápida finalidade nos ZK rollups, o que pode diminuir a experiência do usuário nos jogos Web3. Figura 5: A geração de ZKP pode ser um gargalo potencial para a finalidade rápida nos ZK rollups (Fonte: imgflip) Por outro lado, as cadeias otimizadas para jogos como Ronin (alimenta jogos Web3 como Pixels e Axie Infinity) garantem finalidade super rápida sacrificando descentralização e segurança. Ronin não é uma cadeia baseada em ZK ou rollup: é uma blockchain EVM que roda sob o algoritmo de consenso PoA (Prova de Autoridade) + DPoS (Prova de Participação Delegada). Ele seleciona 22 validadores com base na quantidade de participação delegada, e esses validadores simplesmente geram e validam blocos de maneira PoA (ou seja, processo de votação apenas entre os 22 validadores). Portanto, as transações são finalizadas rapidamente em Ronin, pois quase não há atraso para que as transações sejam incluídas no bloco e demore para serem validadas. Após o hardfork Shillin, leva uma média de apenas 6 segundos para finalizar cada transação. Ronin alcança tudo isso sem ZKP. E sim, é claro, Ronin também tem desvantagens. Ser governado por validadores centralizados o torna relativamente mais vulnerável a um ataque de 51%. Além disso, como não utiliza o Ethereum como camada de liquidação, não pode herdar a segurança do Ethereum. Também existem riscos de segurança associados ao uso de uma ponte entre cadeias. Mas pense na perspectiva dos usuários: eles se importarão com isso? Os ZK rollups atuais sem sequenciamento descentralizado também sofrem do problema de ponto único de falha (SPOF). O Ethereum lhes oferece segurança, pois reduz a probabilidade de reversão de transações, mas se o sequenciador
Comece agora
Registe-se e ganhe um cupão de
100 USD
!