Compreender Cysic: A Aurora da Aceleração de Hardware e o Surgimento da Mineração ZK

IntermediárioAug 14, 2024
Este artigo introduz o fluxo de trabalho do sistema de prova ZK e explora os desafios e estratégias de otimização para acelerar as computações MSM e NTT.
Compreender Cysic: A Aurora da Aceleração de Hardware e o Surgimento da Mineração ZK

Em abril, Vitalik participou da Cúpula de Blockchain de Hong Kong e fez um discurso intitulado "Alcançando os Limites do Design de Protocolo", onde destacou o potencial de ZK-SNARKs na rota do Danksharding do Ethereum e discutiu o papel promissor de chips ASIC na aceleração dos processos ZK. Anteriormente, o co-fundador da Scroll, Zhang Ye, sugeriu que as aplicações potenciais do ZK poderiam ser ainda maiores em setores tradicionais do que no Web3, com demanda significativa em áreas como computação confiável, bancos de dados, hardware verificável, autenticação de conteúdo e zkML. Se a geração de prova ZK em tempo real se tornar viável, isso poderá levar a mudanças transformadoras tanto no Web3 quanto nas indústrias tradicionais. No entanto, do ponto de vista da eficiência e do custo, a adoção generalizada do ZK ainda está um pouco distante.

Em 2022, as principais empresas de capital de risco a16z e Paradigm divulgaram relatórios enfatizando a importância da aceleração de hardware ZK. A Paradigm chegou ao ponto de prever que os ganhos futuros dos mineradores ZK poderiam rivalizar com os dos mineradores de Bitcoin ou Ethereum, com soluções de aceleração de hardware baseadas em GPU, FPGA e ASIC prontas para capturar um mercado significativo. Após o surgimento de ZK Rollups mainstream como Scroll e Starknet, a aceleração de hardware se tornou um tópico quente e o interesse aumentou com o lançamento iminente de projetos como Cysic.

Dada a grande demanda por ZK, é provável que os pools de mineração de ZK e os modelos de geração de ZKP em tempo real possam dar origem a uma nova indústria. Neste mercado em ascensão, os fabricantes de hardware ZK com fortes capacidades e vantagem de pioneiros podem potencialmente se tornar os próximos Bitmain, dominando o campo de aceleração de hardware. A Cysic se destaca como um dos jogadores mais promissores neste espaço. A equipe ganhou prêmios notáveis da plataforma de competição de tecnologia ZKP, ZPrize, e começou a mentoria para o ZPrize em 2023. Seu roteiro inclui pools de mineração ZK ToB (business-to-business) e hardware ZK-Depin ToC (business-to-consumer), atraindo investimentos substanciais de principais VCs como Polychain, ABCDE, OKX Ventures e Hashkey, resultando em quase $20 milhões de financiamento.

À medida que a Cysic se prepara para lançar a sua testnet no final de julho e abrir a sua piscina de mineração ZK, as discussões sobre a empresa estão a aquecer em várias comunidades. Este artigo tem como objetivo apresentar mais pessoas aos conceitos de produto da Cysic e ao modelo de negócios, ao mesmo tempo que fornece uma visão geral acessível dos princípios de aceleração de hardware ZK. Nas secções seguintes, iremos esboçar brevemente os aspectos chave da Cysic, tornando mais fácil para os leitores compreenderem.

Compreensão dos Sistemas de Prova de Conhecimento Zero: Uma Perspetiva de Fluxo de Trabalho

O sistema de prova ZK (Zero-Knowledge) é intrincado, mas podemos simplificar a sua compreensão, quebrando-o através das suas funções e fluxo de trabalho. Aqui está uma visão geral básica de como um sistema projetado para aplicar ZK a computações comuns funciona: Primeiro, o utilizador interage com o sistema ZK através de uma interface front-end, submetendo o conteúdo que desejam provar. O front-end converte então este conteúdo para um formato adequado para processamento pelo sistema de prova ZK. O sistema utiliza um sistema de prova ou estrutura específica (como Halo2 ou Plonk) para gerar uma Prova ZK. Este processo inclui vários passos-chave:

  1. Definir o Problema: O primeiro passo é identificar o conteúdo específico que precisa ser comprovado. Por exemplo, o Provador pode afirmar saber ou possuir certos dados, como afirmar: "Eu sei uma solução N para a equação F(x)=w," sem revelar o valor real de N.
  2. Problemas de conversão aritmética e satisfação de restrições (CSP): Após o Prover enviar o conteúdo, o sistema cria um modelo ou programa matemático especializado que representa com precisão o conteúdo a ser provado. Em seguida, é convertido em um formato que o sistema de prova pode processar. Por exemplo, a afirmação 'Eu conheço uma solução N para a equação F(x)=w' é transformada de sua equação matemática original em uma forma representada por circuitos lógicos Gate e polinômios.

  1. Compilar em ZKP: Em seguida, o sistema seleciona um sistema de prova adequado, como Halo ou Plonk, e compila o conteúdo previamente gerado em um programa ZKP. O Prover então usa este programa para gerar uma prova, que o Verificador verifica se é válida.

Para sistemas como zkEVM, comumente usados em soluções de camada 2 do Ethereum, os contratos inteligentes são primeiro compilados em bytecode EVM (Máquina Virtual Ethereum). Cada opcode é então convertido em circuitos lógicos de portas ou restrições polinomiais antes de serem processados ​​pelo sistema de prova ZK na parte de trás.

É importante notar que zk-SNARKs (Zero-Knowledge Succinct Non-Interactive Argument of Knowledge) são a tecnologia de ZKP mais comumente usada na blockchain hoje. Muitos ZK Rollups aproveitam a concisão dos SNARKs em vez de sua propriedade de conhecimento zero. A concisão refere-se à capacidade do ZKP de comprimir grandes quantidades de dados em algumas centenas de bytes, reduzindo significativamente os custos de verificação. Isso resulta em uma assimetria entre a carga de trabalho do Provador e do Verificador: embora seja custoso para o Provador gerar o ZKP, é relativamente barato para o Verificador verificá-lo. Ao explorar essa assimetria, um cenário com um Provador e vários Verificadores pode reduzir significativamente o custo total do lado do Verificador. Esse modelo é particularmente vantajoso para a verificação descentralizada, como previsto pelas soluções Layer 2 do Ethereum.

No entanto, este modelo de transferência de custos de verificação para o processo de geração de ZKP não é uma solução milagrosa. Para projetos de ZK Rollup, o alto custo de geração de ZKP inevitavelmente será repassado para a experiência do usuário e taxas de transação, o que poderia dificultar a adoção a longo prazo de ZK Rollups. Apesar do potencial do ZK na verificação descentralizada e sem confiança, as condições econômicas atuais não suportam a implementação em grande escala de zkEVM, zkVM, ZK Rollups ou ZK bridges devido às restrições de tempo associadas à geração de provas. Isso levou ao surgimento de projetos de aceleração de ZK como Cysic, Ingonyama e Irreducible, cada um trabalhando para reduzir o custo de geração de ZKP sob diferentes perspectivas. Na próxima seção, discutiremos brevemente os principais custos computacionais e técnicas de aceleração para a geração de ZKP, e por que a Cysic tem um potencial significativo no espaço de aceleração de ZK.

Desafios Computacionais: MSM e NTT

É amplamente conhecido que gerar provas em sistemas ZK é demorado para o Prover. No protocolo ZK-SNARK, um Verifier pode ser capaz de verificar uma prova em apenas um segundo, mas o Prover pode levar meio dia ou até um dia inteiro para gerar essa prova. Para otimizar o uso de computações ZKP, é necessário converter o formato de computação da programação clássica para um formato ZK-friendly.

Atualmente, existem dois métodos principais para alcançar isso: um envolve escrever circuitos usando estruturas de sistemas de prova como o Halo2, enquanto o outro envolve o uso de linguagens específicas de domínio (DSLs) como Cairo ou Circom, para traduzir cálculos para um formato intermediário que pode então ser submetido ao sistema de prova. O sistema de prova gera provas de conhecimento zero (ZK) com base nesses circuitos ou nos formatos intermediários compilados pelas DSLs. Quanto mais complexas forem as operações, mais tempo leva para gerar a prova. Além disso, algumas operações são inerentemente desfavoráveis a ZK e exigem esforço adicional para implementar. Por exemplo, funções de hash como SHA ou Keccak são desfavoráveis a ZKP, o que significa que usá-las aumenta o tempo de geração de prova. Mesmo operações que são baratas para executar em computadores clássicos podem não ser eficientes para ZKP.

Excluindo essas tarefas hostis ao ZK, os gargalos no processo de geração de provas são bastante semelhantes em diferentes sistemas de prova. Existem duas tarefas computacionais principais que consomem a maioria dos recursos na geração de provas ZK: MSM (Multi-Scalar Multiplication) e NTT (Number Theoretic Transform). Estas duas tarefas podem representar 80-95% do tempo de geração da prova, dependendo do esquema de compromisso ZKP e da implementação específica. MSM envolve a realização de multiplicação multi-escalar em curvas elípticas, enquanto NTT é um FFT (Fast Fourier Transform) em campos finitos usados para acelerar a multiplicação polinomial. Diferentes combinações dessas tarefas podem resultar em distribuições de carga variáveis entre FFT e MSM. Por exemplo, Stark usa FRI, um esquema de compromisso baseado em hash que não envolve MSM, ao contrário dos esquemas baseados em curva elíptica como KZG ou IPA. Geralmente, quanto mais operações FFT necessárias, menos operações de MSM e vice-versa.

Estratégias de Otimização

As operações de MSM são caracterizadas por acesso à memória previsível, o que permite uma alta paralelização, mas exige recursos de memória significativos. No entanto, o MSM também apresenta desafios de escalabilidade; mesmo com paralelização, ainda pode ser lento. Embora a aceleração de hardware possa ajudar a acelerar o MSM, requer recursos substanciais de memória e computação paralela.

NTT, por outro lado, envolve acesso aleatório à memória, tornando-o menos adequado para aceleração de hardware e desafiador de lidar em sistemas distribuídos. Isso ocorre porque a natureza de acesso aleatório do NTT frequentemente requer acesso a dados de outros nós em um ambiente distribuído. Quando a interação de rede é necessária, o desempenho pode sofrer dramaticamente.

Portanto, o acesso e movimento dos dados armazenados tornam-se grandes gargalos, limitando a capacidade de paralelizar as operações NTT. A maioria dos esforços para acelerar o NTT foca em gerenciar como a computação interage com a memória.

Na verdade, a maneira mais simples de lidar com o gargalo de eficiência do MSM e NTT é eliminar completamente essas operações. Algoritmos recentemente propostos, como o Hyperplonk, modificam o Plonk para remover as operações NTT, tornando o Hyperplonk mais fácil de acelerar, embora introduza novos gargalos. Outros exemplos incluem o protocolo de verificação de soma computacionalmente caro ou o algoritmo STARK, que elimina o MSM mas adiciona um cálculo significativo de hash através do seu protocolo FRI.

ZK Aceleração de Hardware e o Objetivo Final da Cysic

Embora as otimizações de software e algorítmicas sejam essenciais e valiosas, elas têm limitações claras. Para otimizar completamente a eficiência da geração de ZKP, a aceleração de hardware é crucial, assim como as ASICs e GPUs eventualmente dominaram os mercados de mineração de BTC e ETH.

A questão então passa a ser: qual é o melhor hardware para acelerar a geração de ZKP? Atualmente, várias opções de hardware estão disponíveis para aceleração de ZK, como GPUs, FPGAs ou ASICs, cada um com seu próprio conjunto de vantagens e desvantagens.

Comparação de hardware GPU, FPGA e ASIC

Para entender melhor as diferenças nos processos de desenvolvimento em hardware GPU, FPGA e ASIC, vamos considerar um exemplo simples: implementar a multiplicação paralela.

  • GPU: Usando o SDK CUDA, os desenvolvedores podem escrever código que aproveita a computação paralela, semelhante à escrita de código nativo.
  • FPGA: Os desenvolvedores precisam aprender uma linguagem de descrição de hardware (HDL) para controlar conexões de nível de hardware e implementar algoritmos paralelos.
  • ASIC: A disposição do transistor do chip é fixa durante a fase de design e não pode ser modificada posteriormente.

Cada opção de hardware tem seus pontos fortes e fracos, tornando-os adequados para diferentes estágios de desenvolvimento da tecnologia ZK. O objetivo da Cysic é se tornar a solução definitiva para aceleração de hardware ZK, utilizando uma estratégia em fases:

  1. GPU: Desenvolva um SDK para fornecer soluções para aplicações ZK e integrar recursos de GPU em toda a rede.
  2. FPGA: Aproveite a flexibilidade do FPGA para criar rapidamente aceleração de hardware ZK personalizada.
  3. ASIC: Desenvolver independentemente hardware ZK Depin baseado em ASIC.
  4. A Cysic Network irá integrar toda a capacidade de computação da ZK Depin e GPU como uma plataforma SAAS/pool de mineração para fornecer soluções de computação e verificação para toda a indústria ZK.

Vamos explorar estes vários sub-campos para entender melhor as distinções entre as soluções de aceleração ZK e a abordagem de desenvolvimento da Cysic.

ZK Pool de Mineração e Plataforma SaaS: Rede Cysic

Tanto o Scroll quanto o Polygon zkEVM propuseram o conceito de um "Prover descentralizado" em seus roteiros, o que essencialmente significa a construção de pools de mineração ZK. Esta abordagem orientada pelo mercado ajuda os projetos ZK Rollup a reduzir sua carga de trabalho, incentivando os mineiros e operadores de pools de mineração a otimizar continuamente as soluções de aceleração ZK. O roteiro da Cysic inclui o desenvolvimento de um pool de mineração ZK e uma plataforma SaaS chamada Cysic Network, que integrará o poder computacional da Cysic e atrairá recursos de terceiros por meio de incentivos de mineração, incluindo GPUs inativas e dispositivos zk DePIN de propriedade do consumidor. Todo o fluxo de trabalho de verificação funciona da seguinte forma:

  1. Submissão de tarefas: A equipe do projeto zk envia uma tarefa de geração de prova para um agente, que encaminha a tarefa para a rede de verificação. Inicialmente, esses agentes serão operados pela Cysic, mas posteriormente, o staking de ativos permitirá a qualquer pessoa se tornar um agente.
  2. Geração de Prova: O Prover aceita a tarefa e usa hardware para gerar a prova de conhecimento zero. O Prover deve apostar tokens para participar e será recompensado após concluir a tarefa.
  3. Validação: O Comitê de Validadores verifica a validade da prova e vota nela. Uma vez alcançado um número certo de votos, a prova é considerada válida. Os validadores juntam-se ao comitê apostando tokens, participando na votação e ganhando recompensas. Este processo pode incorporar o conceito AVS da EigenLayer para reutilizar as instalações existentes de reposicionamento.

O processo de interação detalhado é o seguinte

Neste processo, certas ações, como staking de ativos, distribuição de incentivos e submissão de tarefas, requerem uma plataforma dedicada suportada pela infraestrutura blockchain. Para atender a essa necessidade, a Cysic Network desenvolveu uma cadeia pública dedicada com um algoritmo de consenso único chamado Proof of Compute (PoC). Este algoritmo utiliza a função VRF e o desempenho histórico do Prover, como disponibilidade de dispositivo, número de provas submetidas, precisão da prova, etc., para selecionar os produtores de blocos responsáveis pela criação de blocos (esses blocos provavelmente registram informações do dispositivo e distribuem incentivos de tokens). Além do pool de mineração ZK e da plataforma SaaS, a Cysic fez extensas implantações em soluções de aceleração ZK com base em hardware diferente. Vamos explorar as conquistas da Cysic em tecnologia de GPU, FPGA e ASIC.

GPU, FPGA e ASIC: Uma Comparação

A essência da aceleração de hardware ZK (Zero-Knowledge) consiste em maximizar a paralelização dos cálculos-chave. Do ponto de vista do hardware, as CPUs são projetadas para obter máxima flexibilidade e uso geral. No entanto, uma parte significativa da área do chip da CPU é dedicada a funções de controle e vários níveis de cache, o que limita suas capacidades de computação paralela. Em contraste, uma proporção maior da área do chip de uma GPU é alocada para computação, permitindo suporte ao processamento paralelo em grande escala. As GPUs agora estão amplamente disponíveis, e bibliotecas como Nvidia CUDA permitem que os desenvolvedores aproveitem o paralelismo da GPU sem precisar de um conhecimento profundo do hardware subjacente. O SDK CUDA fornece uma estrutura para acelerar os cálculos de MSM (Multiplicação Multiescalar) e NTT (Transformada Teórica Numérica) usando as bibliotecas CUDA ZK.

O FPGA (Field-Programmable Gate Array) adota uma abordagem diferente, composta por matrizes de numerosas unidades de processamento pequenas. Para programar um FPGA, os desenvolvedores devem usar uma linguagem de descrição de hardware (HDL) especializada, que é então compilada em combinações de circuitos de transistores. Essencialmente, o FPGA implementa algoritmos específicos diretamente por meio de circuitos de transistores, evitando o processo de compilação do sistema de instruções tradicional. Essa abordagem oferece muito mais personalização e flexibilidade em comparação às GPUs. Atualmente, os preços do FPGA são cerca de um terço dos preços das GPUs, e eles podem ser mais de dez vezes mais eficientes em termos de energia. Essa vantagem em eficiência energética é parcialmente porque as GPUs precisam ser conectadas a um dispositivo host, que normalmente consome muita energia. O FPGA pode adicionar mais módulos de computação para atender às demandas de MSM e NTT sem aumentar o consumo de energia, o que o torna particularmente adequado para cenários de prova de conhecimento zero (ZK) que são computacionalmente intensivos, exigem alto throughput de dados e precisam de tempos de resposta baixos. No entanto, o maior desafio do FPGA é a escassez de desenvolvedores com a experiência em programação necessária. Para as equipes de projetos ZK, montar uma equipe com conhecimento em criptografia e engenharia FPGA é extremamente desafiador.

ASIC (Circuito Integrado Específico de Aplicações) é o mais especializado dos três, implementando essencialmente um programa inteiramente em hardware. Uma vez que um ASIC é projetado, a configuração de hardware é fixa e não pode ser alterada, o que significa que ele só pode executar tarefas específicas. As vantagens do FPGA na aceleração de MSM e NTT também se aplicam ao ASIC, mas porque o ASIC é projetado para uma aplicação específica, ele oferece a maior eficiência e o menor consumo de energia entre todas as opções de hardware. Para os circuitos ZK mainstream hoje, a Cysic visa alcançar tempos de prova de 1-5 segundos, que apenas o ASIC pode oferecer. Embora esses benefícios sejam muito atraentes, a tecnologia ZK está evoluindo rapidamente e os ciclos de design e produção do ASIC geralmente levam de 1 a 2 anos e custam entre US$10 milhões e US$20 milhões. Portanto, a produção em larga escala deve esperar até que a tecnologia ZK se estabilize para evitar a produção de chips que se tornem rapidamente obsoletos.

Para enfrentar esses desafios, a Cysic fez investimentos abrangentes em todas as três categorias de hardware: GPU, FPGA e ASIC. Na aceleração de GPU, a Cysic adaptou-se ao surgimento de vários novos sistemas de prova ZK através do seu SDK de aceleração CUDA auto-desenvolvido. Ao consolidar os recursos da comunidade, a Cysic conectou dezenas de milhares de GPUs de primeira linha em sua rede de computação GPU, alcançando melhorias de velocidade de 50% a 80% ou mais em comparação com as estruturas de código aberto mais recentes. No espaço FPGA, a Cysic desenvolveu soluções que estabelecem padrões globais de desempenho para módulos de árvore MSM, NTT e Poseidon Merkle, cobrindo os componentes mais críticos da computação ZK. Estas soluções foram testadas em protótipos e validadas por vários projetos líderes da ZK. O SolarMSM proprietário da Cysic pode completar cálculos MSM em escala 2^30 em apenas 0,195 segundos, enquanto o SolarNTT pode executar cálculos NTT em escala 2^30 em 0,218 segundos, tornando-os os resultados de aceleração de hardware FPGA de melhor desempenho atualmente disponíveis.

No campo ASIC, embora a adoção generalizada de ZK ASICs ainda possa estar um pouco distante, a Cysic já se posicionou neste mercado emergente desenvolvendo seus próprios chips e dispositivos ZK DePIN. Para atrair os utilizadores consumidores e atender aos diversos requisitos de desempenho e custo de diferentes projetos ZK, a Cysic planeia introduzir dois produtos de hardware ZK: ZK Air e ZK Pro.

  • ZK Air: Este dispositivo é compacto, semelhante em tamanho a um banco de energia ou um carregador de laptop, permitindo que usuários comuns o conectem via interface Type-C a laptops, iPads ou até mesmo smartphones. Ele fornece suporte computacional para projetos específicos da ZK enquanto ganha recompensas para o usuário. Apesar de seu tamanho pequeno, o poder computacional do ZK Air excede o das GPUs de consumo, tornando-o capaz de acelerar tarefas de geração de provas ZK de menor escala.
  • ZK Pro: Projetado para aplicações mais intensivas, o ZK Pro se assemelha a plataformas de mineração tradicionais e oferece poder de computação equivalente a um servidor multi-GPU. Ele acelera significativamente a geração de provas ZK para projetos de grande escala, como ZK-Rollup e ZKML (Zero-Knowledge Machine Learning).

Através desses dois dispositivos, a Cysic visa criar uma rede ZK-DePIN estável e confiável. Tanto o ZK Air quanto o ZK Pro estão atualmente em desenvolvimento, com lançamento previsto para 2025. Além disso, a Rede Cysic permitirá que os usuários consumidores ingressem no mercado de aceleração de hardware ZK com barreiras de entrada muito baixas. Aliado à alta demanda por poder computacional das equipes de projetos ZK, isso poderia desencadear uma nova onda de entusiasmo semelhante ao boom da mineração de Bitcoin, potencialmente levando a um crescimento explosivo no mercado de computação ZK.

Referência

https://medium.com/amber-group/need-for-speed-zero-knowledge-1e29d4a82fcdhttps://figmentcapital.medium.com/accelerating-zero-knowledge-proofs-cfc806de611b

Aviso Legal:

  1. Este artigo é reimpresso deGeek Web3Os direitos autorais pertencem aos autores originais, [Nickqiao & Wuyue]. Se houver alguma objeção à reprodução, por favor entre em contato com o Gate Aprenderequipe e a equipe irá processá-lo prontamente de acordo com os procedimentos relevantes.
  2. Aviso Legal: As opiniões expressas neste artigo são exclusivamente as dos autores e não constituem qualquer conselho de investimento.
  3. Outras versões do artigo foram traduzidas pela equipe Gate Learn. Os artigos traduzidos não podem ser copiados, distribuídos ou plagiados sem mencionar Gate.io.

Compreender Cysic: A Aurora da Aceleração de Hardware e o Surgimento da Mineração ZK

IntermediárioAug 14, 2024
Este artigo introduz o fluxo de trabalho do sistema de prova ZK e explora os desafios e estratégias de otimização para acelerar as computações MSM e NTT.
Compreender Cysic: A Aurora da Aceleração de Hardware e o Surgimento da Mineração ZK

Em abril, Vitalik participou da Cúpula de Blockchain de Hong Kong e fez um discurso intitulado "Alcançando os Limites do Design de Protocolo", onde destacou o potencial de ZK-SNARKs na rota do Danksharding do Ethereum e discutiu o papel promissor de chips ASIC na aceleração dos processos ZK. Anteriormente, o co-fundador da Scroll, Zhang Ye, sugeriu que as aplicações potenciais do ZK poderiam ser ainda maiores em setores tradicionais do que no Web3, com demanda significativa em áreas como computação confiável, bancos de dados, hardware verificável, autenticação de conteúdo e zkML. Se a geração de prova ZK em tempo real se tornar viável, isso poderá levar a mudanças transformadoras tanto no Web3 quanto nas indústrias tradicionais. No entanto, do ponto de vista da eficiência e do custo, a adoção generalizada do ZK ainda está um pouco distante.

Em 2022, as principais empresas de capital de risco a16z e Paradigm divulgaram relatórios enfatizando a importância da aceleração de hardware ZK. A Paradigm chegou ao ponto de prever que os ganhos futuros dos mineradores ZK poderiam rivalizar com os dos mineradores de Bitcoin ou Ethereum, com soluções de aceleração de hardware baseadas em GPU, FPGA e ASIC prontas para capturar um mercado significativo. Após o surgimento de ZK Rollups mainstream como Scroll e Starknet, a aceleração de hardware se tornou um tópico quente e o interesse aumentou com o lançamento iminente de projetos como Cysic.

Dada a grande demanda por ZK, é provável que os pools de mineração de ZK e os modelos de geração de ZKP em tempo real possam dar origem a uma nova indústria. Neste mercado em ascensão, os fabricantes de hardware ZK com fortes capacidades e vantagem de pioneiros podem potencialmente se tornar os próximos Bitmain, dominando o campo de aceleração de hardware. A Cysic se destaca como um dos jogadores mais promissores neste espaço. A equipe ganhou prêmios notáveis da plataforma de competição de tecnologia ZKP, ZPrize, e começou a mentoria para o ZPrize em 2023. Seu roteiro inclui pools de mineração ZK ToB (business-to-business) e hardware ZK-Depin ToC (business-to-consumer), atraindo investimentos substanciais de principais VCs como Polychain, ABCDE, OKX Ventures e Hashkey, resultando em quase $20 milhões de financiamento.

À medida que a Cysic se prepara para lançar a sua testnet no final de julho e abrir a sua piscina de mineração ZK, as discussões sobre a empresa estão a aquecer em várias comunidades. Este artigo tem como objetivo apresentar mais pessoas aos conceitos de produto da Cysic e ao modelo de negócios, ao mesmo tempo que fornece uma visão geral acessível dos princípios de aceleração de hardware ZK. Nas secções seguintes, iremos esboçar brevemente os aspectos chave da Cysic, tornando mais fácil para os leitores compreenderem.

Compreensão dos Sistemas de Prova de Conhecimento Zero: Uma Perspetiva de Fluxo de Trabalho

O sistema de prova ZK (Zero-Knowledge) é intrincado, mas podemos simplificar a sua compreensão, quebrando-o através das suas funções e fluxo de trabalho. Aqui está uma visão geral básica de como um sistema projetado para aplicar ZK a computações comuns funciona: Primeiro, o utilizador interage com o sistema ZK através de uma interface front-end, submetendo o conteúdo que desejam provar. O front-end converte então este conteúdo para um formato adequado para processamento pelo sistema de prova ZK. O sistema utiliza um sistema de prova ou estrutura específica (como Halo2 ou Plonk) para gerar uma Prova ZK. Este processo inclui vários passos-chave:

  1. Definir o Problema: O primeiro passo é identificar o conteúdo específico que precisa ser comprovado. Por exemplo, o Provador pode afirmar saber ou possuir certos dados, como afirmar: "Eu sei uma solução N para a equação F(x)=w," sem revelar o valor real de N.
  2. Problemas de conversão aritmética e satisfação de restrições (CSP): Após o Prover enviar o conteúdo, o sistema cria um modelo ou programa matemático especializado que representa com precisão o conteúdo a ser provado. Em seguida, é convertido em um formato que o sistema de prova pode processar. Por exemplo, a afirmação 'Eu conheço uma solução N para a equação F(x)=w' é transformada de sua equação matemática original em uma forma representada por circuitos lógicos Gate e polinômios.

  1. Compilar em ZKP: Em seguida, o sistema seleciona um sistema de prova adequado, como Halo ou Plonk, e compila o conteúdo previamente gerado em um programa ZKP. O Prover então usa este programa para gerar uma prova, que o Verificador verifica se é válida.

Para sistemas como zkEVM, comumente usados em soluções de camada 2 do Ethereum, os contratos inteligentes são primeiro compilados em bytecode EVM (Máquina Virtual Ethereum). Cada opcode é então convertido em circuitos lógicos de portas ou restrições polinomiais antes de serem processados ​​pelo sistema de prova ZK na parte de trás.

É importante notar que zk-SNARKs (Zero-Knowledge Succinct Non-Interactive Argument of Knowledge) são a tecnologia de ZKP mais comumente usada na blockchain hoje. Muitos ZK Rollups aproveitam a concisão dos SNARKs em vez de sua propriedade de conhecimento zero. A concisão refere-se à capacidade do ZKP de comprimir grandes quantidades de dados em algumas centenas de bytes, reduzindo significativamente os custos de verificação. Isso resulta em uma assimetria entre a carga de trabalho do Provador e do Verificador: embora seja custoso para o Provador gerar o ZKP, é relativamente barato para o Verificador verificá-lo. Ao explorar essa assimetria, um cenário com um Provador e vários Verificadores pode reduzir significativamente o custo total do lado do Verificador. Esse modelo é particularmente vantajoso para a verificação descentralizada, como previsto pelas soluções Layer 2 do Ethereum.

No entanto, este modelo de transferência de custos de verificação para o processo de geração de ZKP não é uma solução milagrosa. Para projetos de ZK Rollup, o alto custo de geração de ZKP inevitavelmente será repassado para a experiência do usuário e taxas de transação, o que poderia dificultar a adoção a longo prazo de ZK Rollups. Apesar do potencial do ZK na verificação descentralizada e sem confiança, as condições econômicas atuais não suportam a implementação em grande escala de zkEVM, zkVM, ZK Rollups ou ZK bridges devido às restrições de tempo associadas à geração de provas. Isso levou ao surgimento de projetos de aceleração de ZK como Cysic, Ingonyama e Irreducible, cada um trabalhando para reduzir o custo de geração de ZKP sob diferentes perspectivas. Na próxima seção, discutiremos brevemente os principais custos computacionais e técnicas de aceleração para a geração de ZKP, e por que a Cysic tem um potencial significativo no espaço de aceleração de ZK.

Desafios Computacionais: MSM e NTT

É amplamente conhecido que gerar provas em sistemas ZK é demorado para o Prover. No protocolo ZK-SNARK, um Verifier pode ser capaz de verificar uma prova em apenas um segundo, mas o Prover pode levar meio dia ou até um dia inteiro para gerar essa prova. Para otimizar o uso de computações ZKP, é necessário converter o formato de computação da programação clássica para um formato ZK-friendly.

Atualmente, existem dois métodos principais para alcançar isso: um envolve escrever circuitos usando estruturas de sistemas de prova como o Halo2, enquanto o outro envolve o uso de linguagens específicas de domínio (DSLs) como Cairo ou Circom, para traduzir cálculos para um formato intermediário que pode então ser submetido ao sistema de prova. O sistema de prova gera provas de conhecimento zero (ZK) com base nesses circuitos ou nos formatos intermediários compilados pelas DSLs. Quanto mais complexas forem as operações, mais tempo leva para gerar a prova. Além disso, algumas operações são inerentemente desfavoráveis a ZK e exigem esforço adicional para implementar. Por exemplo, funções de hash como SHA ou Keccak são desfavoráveis a ZKP, o que significa que usá-las aumenta o tempo de geração de prova. Mesmo operações que são baratas para executar em computadores clássicos podem não ser eficientes para ZKP.

Excluindo essas tarefas hostis ao ZK, os gargalos no processo de geração de provas são bastante semelhantes em diferentes sistemas de prova. Existem duas tarefas computacionais principais que consomem a maioria dos recursos na geração de provas ZK: MSM (Multi-Scalar Multiplication) e NTT (Number Theoretic Transform). Estas duas tarefas podem representar 80-95% do tempo de geração da prova, dependendo do esquema de compromisso ZKP e da implementação específica. MSM envolve a realização de multiplicação multi-escalar em curvas elípticas, enquanto NTT é um FFT (Fast Fourier Transform) em campos finitos usados para acelerar a multiplicação polinomial. Diferentes combinações dessas tarefas podem resultar em distribuições de carga variáveis entre FFT e MSM. Por exemplo, Stark usa FRI, um esquema de compromisso baseado em hash que não envolve MSM, ao contrário dos esquemas baseados em curva elíptica como KZG ou IPA. Geralmente, quanto mais operações FFT necessárias, menos operações de MSM e vice-versa.

Estratégias de Otimização

As operações de MSM são caracterizadas por acesso à memória previsível, o que permite uma alta paralelização, mas exige recursos de memória significativos. No entanto, o MSM também apresenta desafios de escalabilidade; mesmo com paralelização, ainda pode ser lento. Embora a aceleração de hardware possa ajudar a acelerar o MSM, requer recursos substanciais de memória e computação paralela.

NTT, por outro lado, envolve acesso aleatório à memória, tornando-o menos adequado para aceleração de hardware e desafiador de lidar em sistemas distribuídos. Isso ocorre porque a natureza de acesso aleatório do NTT frequentemente requer acesso a dados de outros nós em um ambiente distribuído. Quando a interação de rede é necessária, o desempenho pode sofrer dramaticamente.

Portanto, o acesso e movimento dos dados armazenados tornam-se grandes gargalos, limitando a capacidade de paralelizar as operações NTT. A maioria dos esforços para acelerar o NTT foca em gerenciar como a computação interage com a memória.

Na verdade, a maneira mais simples de lidar com o gargalo de eficiência do MSM e NTT é eliminar completamente essas operações. Algoritmos recentemente propostos, como o Hyperplonk, modificam o Plonk para remover as operações NTT, tornando o Hyperplonk mais fácil de acelerar, embora introduza novos gargalos. Outros exemplos incluem o protocolo de verificação de soma computacionalmente caro ou o algoritmo STARK, que elimina o MSM mas adiciona um cálculo significativo de hash através do seu protocolo FRI.

ZK Aceleração de Hardware e o Objetivo Final da Cysic

Embora as otimizações de software e algorítmicas sejam essenciais e valiosas, elas têm limitações claras. Para otimizar completamente a eficiência da geração de ZKP, a aceleração de hardware é crucial, assim como as ASICs e GPUs eventualmente dominaram os mercados de mineração de BTC e ETH.

A questão então passa a ser: qual é o melhor hardware para acelerar a geração de ZKP? Atualmente, várias opções de hardware estão disponíveis para aceleração de ZK, como GPUs, FPGAs ou ASICs, cada um com seu próprio conjunto de vantagens e desvantagens.

Comparação de hardware GPU, FPGA e ASIC

Para entender melhor as diferenças nos processos de desenvolvimento em hardware GPU, FPGA e ASIC, vamos considerar um exemplo simples: implementar a multiplicação paralela.

  • GPU: Usando o SDK CUDA, os desenvolvedores podem escrever código que aproveita a computação paralela, semelhante à escrita de código nativo.
  • FPGA: Os desenvolvedores precisam aprender uma linguagem de descrição de hardware (HDL) para controlar conexões de nível de hardware e implementar algoritmos paralelos.
  • ASIC: A disposição do transistor do chip é fixa durante a fase de design e não pode ser modificada posteriormente.

Cada opção de hardware tem seus pontos fortes e fracos, tornando-os adequados para diferentes estágios de desenvolvimento da tecnologia ZK. O objetivo da Cysic é se tornar a solução definitiva para aceleração de hardware ZK, utilizando uma estratégia em fases:

  1. GPU: Desenvolva um SDK para fornecer soluções para aplicações ZK e integrar recursos de GPU em toda a rede.
  2. FPGA: Aproveite a flexibilidade do FPGA para criar rapidamente aceleração de hardware ZK personalizada.
  3. ASIC: Desenvolver independentemente hardware ZK Depin baseado em ASIC.
  4. A Cysic Network irá integrar toda a capacidade de computação da ZK Depin e GPU como uma plataforma SAAS/pool de mineração para fornecer soluções de computação e verificação para toda a indústria ZK.

Vamos explorar estes vários sub-campos para entender melhor as distinções entre as soluções de aceleração ZK e a abordagem de desenvolvimento da Cysic.

ZK Pool de Mineração e Plataforma SaaS: Rede Cysic

Tanto o Scroll quanto o Polygon zkEVM propuseram o conceito de um "Prover descentralizado" em seus roteiros, o que essencialmente significa a construção de pools de mineração ZK. Esta abordagem orientada pelo mercado ajuda os projetos ZK Rollup a reduzir sua carga de trabalho, incentivando os mineiros e operadores de pools de mineração a otimizar continuamente as soluções de aceleração ZK. O roteiro da Cysic inclui o desenvolvimento de um pool de mineração ZK e uma plataforma SaaS chamada Cysic Network, que integrará o poder computacional da Cysic e atrairá recursos de terceiros por meio de incentivos de mineração, incluindo GPUs inativas e dispositivos zk DePIN de propriedade do consumidor. Todo o fluxo de trabalho de verificação funciona da seguinte forma:

  1. Submissão de tarefas: A equipe do projeto zk envia uma tarefa de geração de prova para um agente, que encaminha a tarefa para a rede de verificação. Inicialmente, esses agentes serão operados pela Cysic, mas posteriormente, o staking de ativos permitirá a qualquer pessoa se tornar um agente.
  2. Geração de Prova: O Prover aceita a tarefa e usa hardware para gerar a prova de conhecimento zero. O Prover deve apostar tokens para participar e será recompensado após concluir a tarefa.
  3. Validação: O Comitê de Validadores verifica a validade da prova e vota nela. Uma vez alcançado um número certo de votos, a prova é considerada válida. Os validadores juntam-se ao comitê apostando tokens, participando na votação e ganhando recompensas. Este processo pode incorporar o conceito AVS da EigenLayer para reutilizar as instalações existentes de reposicionamento.

O processo de interação detalhado é o seguinte

Neste processo, certas ações, como staking de ativos, distribuição de incentivos e submissão de tarefas, requerem uma plataforma dedicada suportada pela infraestrutura blockchain. Para atender a essa necessidade, a Cysic Network desenvolveu uma cadeia pública dedicada com um algoritmo de consenso único chamado Proof of Compute (PoC). Este algoritmo utiliza a função VRF e o desempenho histórico do Prover, como disponibilidade de dispositivo, número de provas submetidas, precisão da prova, etc., para selecionar os produtores de blocos responsáveis pela criação de blocos (esses blocos provavelmente registram informações do dispositivo e distribuem incentivos de tokens). Além do pool de mineração ZK e da plataforma SaaS, a Cysic fez extensas implantações em soluções de aceleração ZK com base em hardware diferente. Vamos explorar as conquistas da Cysic em tecnologia de GPU, FPGA e ASIC.

GPU, FPGA e ASIC: Uma Comparação

A essência da aceleração de hardware ZK (Zero-Knowledge) consiste em maximizar a paralelização dos cálculos-chave. Do ponto de vista do hardware, as CPUs são projetadas para obter máxima flexibilidade e uso geral. No entanto, uma parte significativa da área do chip da CPU é dedicada a funções de controle e vários níveis de cache, o que limita suas capacidades de computação paralela. Em contraste, uma proporção maior da área do chip de uma GPU é alocada para computação, permitindo suporte ao processamento paralelo em grande escala. As GPUs agora estão amplamente disponíveis, e bibliotecas como Nvidia CUDA permitem que os desenvolvedores aproveitem o paralelismo da GPU sem precisar de um conhecimento profundo do hardware subjacente. O SDK CUDA fornece uma estrutura para acelerar os cálculos de MSM (Multiplicação Multiescalar) e NTT (Transformada Teórica Numérica) usando as bibliotecas CUDA ZK.

O FPGA (Field-Programmable Gate Array) adota uma abordagem diferente, composta por matrizes de numerosas unidades de processamento pequenas. Para programar um FPGA, os desenvolvedores devem usar uma linguagem de descrição de hardware (HDL) especializada, que é então compilada em combinações de circuitos de transistores. Essencialmente, o FPGA implementa algoritmos específicos diretamente por meio de circuitos de transistores, evitando o processo de compilação do sistema de instruções tradicional. Essa abordagem oferece muito mais personalização e flexibilidade em comparação às GPUs. Atualmente, os preços do FPGA são cerca de um terço dos preços das GPUs, e eles podem ser mais de dez vezes mais eficientes em termos de energia. Essa vantagem em eficiência energética é parcialmente porque as GPUs precisam ser conectadas a um dispositivo host, que normalmente consome muita energia. O FPGA pode adicionar mais módulos de computação para atender às demandas de MSM e NTT sem aumentar o consumo de energia, o que o torna particularmente adequado para cenários de prova de conhecimento zero (ZK) que são computacionalmente intensivos, exigem alto throughput de dados e precisam de tempos de resposta baixos. No entanto, o maior desafio do FPGA é a escassez de desenvolvedores com a experiência em programação necessária. Para as equipes de projetos ZK, montar uma equipe com conhecimento em criptografia e engenharia FPGA é extremamente desafiador.

ASIC (Circuito Integrado Específico de Aplicações) é o mais especializado dos três, implementando essencialmente um programa inteiramente em hardware. Uma vez que um ASIC é projetado, a configuração de hardware é fixa e não pode ser alterada, o que significa que ele só pode executar tarefas específicas. As vantagens do FPGA na aceleração de MSM e NTT também se aplicam ao ASIC, mas porque o ASIC é projetado para uma aplicação específica, ele oferece a maior eficiência e o menor consumo de energia entre todas as opções de hardware. Para os circuitos ZK mainstream hoje, a Cysic visa alcançar tempos de prova de 1-5 segundos, que apenas o ASIC pode oferecer. Embora esses benefícios sejam muito atraentes, a tecnologia ZK está evoluindo rapidamente e os ciclos de design e produção do ASIC geralmente levam de 1 a 2 anos e custam entre US$10 milhões e US$20 milhões. Portanto, a produção em larga escala deve esperar até que a tecnologia ZK se estabilize para evitar a produção de chips que se tornem rapidamente obsoletos.

Para enfrentar esses desafios, a Cysic fez investimentos abrangentes em todas as três categorias de hardware: GPU, FPGA e ASIC. Na aceleração de GPU, a Cysic adaptou-se ao surgimento de vários novos sistemas de prova ZK através do seu SDK de aceleração CUDA auto-desenvolvido. Ao consolidar os recursos da comunidade, a Cysic conectou dezenas de milhares de GPUs de primeira linha em sua rede de computação GPU, alcançando melhorias de velocidade de 50% a 80% ou mais em comparação com as estruturas de código aberto mais recentes. No espaço FPGA, a Cysic desenvolveu soluções que estabelecem padrões globais de desempenho para módulos de árvore MSM, NTT e Poseidon Merkle, cobrindo os componentes mais críticos da computação ZK. Estas soluções foram testadas em protótipos e validadas por vários projetos líderes da ZK. O SolarMSM proprietário da Cysic pode completar cálculos MSM em escala 2^30 em apenas 0,195 segundos, enquanto o SolarNTT pode executar cálculos NTT em escala 2^30 em 0,218 segundos, tornando-os os resultados de aceleração de hardware FPGA de melhor desempenho atualmente disponíveis.

No campo ASIC, embora a adoção generalizada de ZK ASICs ainda possa estar um pouco distante, a Cysic já se posicionou neste mercado emergente desenvolvendo seus próprios chips e dispositivos ZK DePIN. Para atrair os utilizadores consumidores e atender aos diversos requisitos de desempenho e custo de diferentes projetos ZK, a Cysic planeia introduzir dois produtos de hardware ZK: ZK Air e ZK Pro.

  • ZK Air: Este dispositivo é compacto, semelhante em tamanho a um banco de energia ou um carregador de laptop, permitindo que usuários comuns o conectem via interface Type-C a laptops, iPads ou até mesmo smartphones. Ele fornece suporte computacional para projetos específicos da ZK enquanto ganha recompensas para o usuário. Apesar de seu tamanho pequeno, o poder computacional do ZK Air excede o das GPUs de consumo, tornando-o capaz de acelerar tarefas de geração de provas ZK de menor escala.
  • ZK Pro: Projetado para aplicações mais intensivas, o ZK Pro se assemelha a plataformas de mineração tradicionais e oferece poder de computação equivalente a um servidor multi-GPU. Ele acelera significativamente a geração de provas ZK para projetos de grande escala, como ZK-Rollup e ZKML (Zero-Knowledge Machine Learning).

Através desses dois dispositivos, a Cysic visa criar uma rede ZK-DePIN estável e confiável. Tanto o ZK Air quanto o ZK Pro estão atualmente em desenvolvimento, com lançamento previsto para 2025. Além disso, a Rede Cysic permitirá que os usuários consumidores ingressem no mercado de aceleração de hardware ZK com barreiras de entrada muito baixas. Aliado à alta demanda por poder computacional das equipes de projetos ZK, isso poderia desencadear uma nova onda de entusiasmo semelhante ao boom da mineração de Bitcoin, potencialmente levando a um crescimento explosivo no mercado de computação ZK.

Referência

https://medium.com/amber-group/need-for-speed-zero-knowledge-1e29d4a82fcdhttps://figmentcapital.medium.com/accelerating-zero-knowledge-proofs-cfc806de611b

Aviso Legal:

  1. Este artigo é reimpresso deGeek Web3Os direitos autorais pertencem aos autores originais, [Nickqiao & Wuyue]. Se houver alguma objeção à reprodução, por favor entre em contato com o Gate Aprenderequipe e a equipe irá processá-lo prontamente de acordo com os procedimentos relevantes.
  2. Aviso Legal: As opiniões expressas neste artigo são exclusivamente as dos autores e não constituem qualquer conselho de investimento.
  3. Outras versões do artigo foram traduzidas pela equipe Gate Learn. Os artigos traduzidos não podem ser copiados, distribuídos ou plagiados sem mencionar Gate.io.
Comece agora
Registe-se e ganhe um cupão de
100 USD
!