Comprendre Cysic: L'aube de l'accélération matérielle et l'émergence du minage ZK

IntermédiaireAug 14, 2024
Cet article présente le flux de travail du système de preuve ZK et explore les défis et les stratégies d'optimisation pour accélérer les calculs MSM et NTT.
Comprendre Cysic: L'aube de l'accélération matérielle et l'émergence du minage ZK

En avril, Vitalik a assisté au Sommet de la Blockchain à Hong Kong et a prononcé un discours intitulé “Atteindre les limites de la conception de protocole”, où il a mis en lumière le potentiel des ZK-SNARKs dans la feuille de route de Danksharding d'Ethereum et a discuté du rôle prometteur des puces ASIC dans l'accélération des processus ZK. Plus tôt, le co-fondateur de Scroll, Zhang Ye, a suggéré que les applications potentielles de ZK pourraient être encore plus grandes dans les secteurs traditionnels que dans Web3, avec une demande significative dans des domaines tels que l'informatique de confiance, les bases de données, le matériel vérifiable, l'authentification de contenu et zkML. Si la génération de preuves ZK en temps réel devient réalisable, cela pourrait entraîner des changements transformateurs à la fois dans Web3 et dans les industries traditionnelles. Cependant, du point de vue de l'efficacité et du coût, l'adoption généralisée de ZK est encore loin.

En 2022, les principales sociétés de capital-risque a16z et Paradigm ont publié des rapports soulignant l'importance de l'accélération matérielle ZK. Paradigm est allé jusqu'à prédire que les futurs gains des mineurs ZK pourraient rivaliser avec ceux des mineurs Bitcoin ou Ethereum, les solutions d'accélération matérielle basées sur GPU, FPGA et ASIC étant prêtes à capturer une part de marché importante. À la suite de l'essor de ZK Rollups grand public tels que Scroll et Starknet, l'accélération matérielle est devenue un sujet brûlant, et l'intérêt s'est intensifié avec le lancement imminent de projets tels que Cysic.

Compte tenu de la forte demande pour ZK, il est probable que les pools de minage ZK et les modèles SaaS de génération de ZKP en temps réel pourraient donner naissance à une nouvelle industrie. Dans ce marché émergent, les fabricants de matériel ZK avec de solides capacités et un avantage de premier arrivé pourraient potentiellement devenir le prochain Bitmain, dominant le domaine de l'accélération matérielle. Cysic se distingue comme l'un des acteurs les plus prometteurs dans cet espace. L'équipe a remporté des prix remarquables de la plateforme de concours technologique ZKP ZPrize et a commencé à encadrer ZPrize en 2023. Leur feuille de route comprend des pools de minage ZK ToB (entreprise à entreprise) et du matériel ZK-Depin ToC (entreprise à consommateur), attirant des investissements substantiels de grands VC tels que Polychain, ABCDE, OKX Ventures et Hashkey, pour un montant total de près de 20 millions de dollars.

Alors que Cysic se prépare à lancer son testnet à la fin du mois de juillet et à ouvrir son pool de minage ZK, les discussions sur l'entreprise se multiplient au sein de différentes communautés. Cet article vise à présenter davantage de personnes aux concepts produits de Cysic et à son modèle économique tout en fournissant un aperçu accessible des principes d'accélération matérielle ZK. Dans les sections suivantes, nous présenterons brièvement les aspects clés de Cysic, ce qui facilitera la compréhension des lecteurs.

Comprendre les systèmes de preuve ZK : Une perspective de flux de travail

Le système de preuve ZK (Zero-Knowledge) est complexe, mais nous pouvons simplifier sa compréhension en le décomposant à travers ses fonctions et son flux de travail. Voici un aperçu de base de la façon dont un système conçu pour appliquer ZK aux calculs ordinaires fonctionne : Tout d'abord, l'utilisateur interagit avec le système ZK via une interface frontale, soumettant le contenu qu'il souhaite prouver. L'interface frontale convertit ensuite ce contenu dans un format adapté au traitement par le système de preuve ZK. Le système utilise un système de preuve spécifique ou un cadre (comme Halo2 ou Plonk) pour générer une preuve ZK. Ce processus comprend plusieurs étapes clés :

  1. Définition du problème: La première étape consiste à identifier le contenu spécifique qui doit être prouvé. Par exemple, le Prover peut prétendre connaître ou posséder certaines données, en déclarant, par exemple, "Je connais une solution N à l'équation F(x)=w", sans révéler la valeur réelle de N.
  2. Conversion arithmétique et problèmes de satisfaction de contraintes (CSP) : Après que le prouveur soumet le contenu, le système crée un modèle mathématique spécialisé ou un programme qui représente précisément le contenu à prouver. Celui-ci est ensuite converti dans un format que le système de preuve peut traiter. Par exemple, l'énoncé « Je connais une solution N à l'équation F(x) = w » est transformé de son équation mathématique originale en une forme représentée par des circuits logiques et des polynômes.

  1. Compilation en ZKP: Ensuite, le système sélectionne un système de preuve approprié, comme Halo ou Plonk, et compile le contenu précédemment généré dans un programme ZKP. Le Prover utilise ensuite ce programme pour générer une preuve, que le Vérificateur vérifie pour en assurer la validité.

Pour des systèmes comme zkEVM, couramment utilisés dans les solutions de couche 2 d'Ethereum, les contrats intelligents sont d'abord compilés en bytecode de la machine virtuelle Ethereum (EVM). Chaque opcode est ensuite converti en circuits de logique Gate ou en contraintes polynomiales avant d'être traité plus loin par le système de preuve ZK en back-end.

Il est important de noter que les zk-SNARKs (Zero-Knowledge Succinct Non-Interactive Argument of Knowledge) sont la technologie de preuve de connaissance nulle la plus couramment utilisée dans la blockchain aujourd'hui. De nombreux ZK Rollups exploitent la concision des SNARKs plutôt que leur propriété de connaissance nulle. La concision fait référence à la capacité de la preuve de connaissance nulle à comprimer de grandes quantités de données en quelques centaines d'octets, réduisant ainsi considérablement les coûts de vérification. Cela crée une asymétrie entre la charge de travail du Prouveur et du Vérificateur : alors qu'il est coûteux pour le Prouveur de générer la preuve de connaissance nulle, il est relativement peu coûteux pour le Vérificateur de la vérifier. En exploitant cette asymétrie, un scénario avec un Prouveur et plusieurs Vérificateurs peut considérablement réduire le coût global du côté du Vérificateur. Ce modèle est particulièrement avantageux pour la vérification décentralisée, telle que prévue par les solutions de couche 2 d'Ethereum.

Cependant, ce modèle de déchargement des coûts de vérification sur le processus de génération de preuves à divulgation n'est pas une solution miracle. Pour les projets ZK Rollup, le coût élevé de la génération de preuves à divulgation sera inévitablement répercuté sur l'expérience utilisateur et les frais de transaction, ce qui pourrait entraver l'adoption à long terme des ZK Rollups. Malgré le potentiel de ZK dans la vérification sans confiance et décentralisée, les conditions économiques actuelles ne favorisent pas la mise en œuvre à grande échelle de zkEVM, zkVM, ZK Rollups ou ZK bridges en raison des contraintes temporelles associées à la génération de preuves. Cela a conduit à l'émergence de projets d'accélération ZK tels que Cysic, Ingonyama et Irreducible, chacun travaillant à réduire le coût de génération de preuves à divulgation sous différents angles. Dans la section suivante, nous discuterons brièvement des coûts computationnels principaux et des techniques d'accélération pour la génération de preuves à divulgation, et pourquoi Cysic détient un potentiel significatif dans l'espace d'accélération ZK.

Défis informatiques : MSM et NTT

Il est largement connu que la génération de preuves dans les systèmes ZK est chronophage pour le Prover. Dans le protocole ZK-SNARK, un Vérificateur pourrait être en mesure de vérifier une preuve en seulement une seconde, mais cela pourrait prendre au Prover une demi-journée ou même une journée entière pour générer cette preuve. Pour optimiser l'utilisation des calculs ZKP, il est nécessaire de convertir le format de calcul de la programmation classique en un format compatible avec ZK.

Il existe actuellement deux méthodes principales pour y parvenir : l'une consiste à écrire des circuits à l'aide de cadres de système de preuve tels que Halo2, tandis que l'autre consiste à utiliser des langages spécifiques à un domaine (DSL) tels que Cairo ou Circom, pour traduire les calculs dans un format intermédiaire qui peut ensuite être soumis au système de preuve. Le système de preuve génère des preuves ZK basées sur ces circuits ou les formats intermédiaires compilés par les DSL. Plus les opérations sont complexes, plus il faut de temps pour générer la preuve. De plus, certaines opérations sont intrinsèquement incompatibles avec les ZK et nécessitent des efforts supplémentaires pour être mises en œuvre. Par exemple, les fonctions de hachage comme SHA ou Keccak sont incompatibles avec les ZKP, ce qui signifie que leur utilisation augmente le temps de génération de la preuve. Même les opérations qui sont peu coûteuses à exécuter sur des ordinateurs classiques peuvent ne pas être efficaces pour les ZKP.

À l'exclusion de ces tâches incompatibles avec ZK, les goulots d'étranglement dans le processus de génération de preuves sont assez similaires dans différents systèmes de preuves. Il existe deux tâches computationnelles principales qui consomment la plupart des ressources dans la génération de preuves ZK : MSM (Multiplication multi-scalaire) et NTT (Transformée théorique des nombres). Ces deux tâches peuvent représenter 80 à 95 % du temps de génération de preuves, selon le schéma d'engagement de ZKP et l'implémentation spécifique. MSM implique la multiplication multi-scalaire sur les courbes elliptiques, tandis que NTT est une FFT (Transformée de Fourier rapide) sur des corps finis utilisée pour accélérer la multiplication polynomiale. Différentes combinaisons de ces tâches peuvent entraîner des distributions de charge variables entre FFT et MSM. Par exemple, Stark utilise FRI, un schéma d'engagement basé sur le hachage qui n'implique pas MSM, contrairement aux schémas basés sur les courbes elliptiques comme KZG ou IPA. En général, plus il y a d'opérations FFT requises, moins il y a d'opérations MSM, et vice versa.

Stratégies d'optimisation

Les opérations MSM se caractérisent par un accès mémoire prévisible, ce qui permet une forte parallélisation mais exige des ressources mémoire importantes. Cependant, le MSM présente également des défis en termes de scalabilité ; même avec la parallélisation, il peut encore être lent. Bien que l'accélération matérielle puisse aider à accélérer le MSM, elle exige des ressources mémoire et de calcul parallèle substantielles.

D'autre part, NTT implique un accès aléatoire à la mémoire, ce qui le rend moins adapté à l'accélération matérielle et difficile à gérer dans les systèmes distribués. Cela est dû au fait que la nature d'accès aléatoire de NTT nécessite souvent d'accéder aux données d'autres nœuds dans un environnement distribué. Lorsque l'interaction réseau est nécessaire, les performances peuvent en souffrir considérablement.

Par conséquent, l'accès et le déplacement des données stockées deviennent des goulots d'étranglement majeurs, limitant la capacité de paralléliser les opérations NTT. La plupart des efforts pour accélérer la NTT se concentrent sur la gestion de l'interaction de la computation avec la mémoire.

En fait, le moyen le plus simple de résoudre le goulot d'étranglement de l'MSM et de la NTT est d'éliminer ces opérations complètement. Certains nouveaux algorithmes proposés, comme Hyperplonk, modifient Plonk pour supprimer les opérations NTT, ce qui rend Hyperplonk plus facile à accélérer, bien qu'il introduise de nouveaux goulots d'étranglement. D'autres exemples incluent le protocole de vérification de somme coûteux en calcul ou l'algorithme STARK, qui élimine l'MSM mais ajoute un calcul de hachage significatif grâce à son protocole FRI.

Accélération matérielle ZK et objectif ultime de Cysic

Alors que les optimisations logicielles et algorithmiques sont essentielles et précieuses, elles ont des limites claires. Pour optimiser pleinement l'efficacité de la génération de preuves sans divulgation de connaissance (ZKP), l'accélération matérielle est cruciale, tout comme les ASIC et les GPU ont finalement dominé les marchés miniers du BTC et de l'ETH.

La question qui se pose alors est la suivante : quel est le meilleur matériel pour accélérer la génération de preuves à divulgation nulle de connaissance (ZKP) ? Actuellement, plusieurs options matérielles sont disponibles pour accélérer les ZK, telles que les GPU, les FPGA ou les ASIC, chacun ayant ses propres avantages et inconvénients.

Comparaison du matériel GPU, FPGA et ASIC

Pour mieux comprendre les différences dans les processus de développement à travers le GPU, le FPGA et le matériel ASIC, considérons un exemple simple : la mise en œuvre de la multiplication parallèle.

  • GPU: En utilisant le kit de développement logiciel CUDA, les développeurs peuvent écrire du code qui tire parti du calcul parallèle, similaire à l'écriture de code natif.
  • FPGA: Les développeurs doivent apprendre un langage de description matériel (HDL) pour contrôler les connexions de niveau matériel et mettre en œuvre des algorithmes parallèles.
  • ASIC: La disposition des transistors de la puce est fixée lors de la phase de conception et ne peut pas être modifiée ultérieurement.

Chaque option matérielle a ses points forts et ses faiblesses, les rendant adaptées à différentes étapes du développement de la technologie ZK. L'objectif de Cysic est de devenir la solution ultime pour l'accélération matérielle ZK, en utilisant une stratégie progressive :

  1. GPU : Développer un SDK pour fournir des solutions pour les applications ZK et intégrer les ressources GPU à travers le réseau.
  2. FPGA: Utilisez la flexibilité des FPGA pour créer rapidement une accélération matérielle ZK personnalisée.
  3. ASIC: Développer indépendamment le matériel ZK Depin basé sur ASIC.
  4. Cysic Network intégrera toute la puissance de calcul de ZK Depin et des GPU en tant que plateforme SAAS/pool de minage pour fournir des solutions de calcul et de vérification pour l'ensemble de l'industrie ZK.

Explorons ces différents sous-domaines pour mieux comprendre les distinctions entre les solutions d'accélération ZK et l'approche de développement de Cysic.

ZK Mineur Pool et Plateforme SaaS: Réseau Cysic

Both Scroll and Polygon zkEVM ont proposé le concept d'un "Prover décentralisé" dans leurs feuilles de route, ce qui signifie essentiellement la construction de pools de minage ZK. Cette approche axée sur le marché aide les projets ZK Rollup à réduire leur charge de travail tout en incitant les mineurs et les opérateurs de pools de minage à optimiser continuellement les solutions d'accélération ZK. La feuille de route de Cysic comprend le développement d'un pool de minage ZK et d'une plateforme SaaS appelée Cysic Network, qui intégrera la puissance de calcul de Cysic et attirera des ressources tierces grâce à des incitations minières, notamment des GPU inutilisés et des appareils zk DePIN appartenant aux consommateurs. Le flux de travail de vérification complet fonctionne comme suit:

  1. Soumission de tâche : L'équipe du projet zk soumet une tâche de génération de preuve à un agent, qui transmet la tâche au réseau de vérification. Initialement, ces agents seront exploités par Cysic, mais plus tard, le jalonnement d'actifs permettra à n'importe qui de devenir un agent.
  2. Génération de preuve: Le prouveur accepte la tâche et utilise du matériel pour générer la preuve ZK. Le prouveur doit miser des jetons pour participer et sera récompensé après avoir terminé la tâche.
  3. Validation: Le comité des validateurs vérifie la validité de la preuve et vote dessus. Une fois qu'un certain nombre de votes est atteint, la preuve est considérée comme valide. Les validateurs rejoignent le comité en misant des jetons, en participant au vote et en gagnant des récompenses. Ce processus peut incorporer le concept AVS d'EigenLayer pour réutiliser les installations de restaking existantes.

Le processus d'interaction détaillé est le suivant

Dans ce processus, certaines actions, telles que le jalonnement d'actifs, la distribution d'incitations et la soumission de tâches, nécessitent une plateforme dédiée prise en charge par l'infrastructure blockchain. Pour répondre à ce besoin, Cysic Network a développé une chaîne publique dédiée avec un algorithme de consensus unique appelé Preuve de Calcul (PoC). Cet algorithme utilise la fonction VRF et les performances historiques du vérificateur, telles que la disponibilité de l'appareil, le nombre de preuves soumises, la précision de la preuve, etc., pour sélectionner les producteurs de blocs responsables de la création de blocs (ces blocs enregistrent probablement des informations sur l'appareil et distribuent des incitations en jetons). Outre le pool de minage ZK et la plateforme SaaS, Cysic a effectué de vastes déploiements dans des solutions d'accélération ZK basées sur différents matériels. Explorons les réalisations de Cysic dans la technologie GPU, FPGA et ASIC.

GPU, FPGA et ASIC : Une comparaison

L'essence de l'accélération matérielle ZK (Zero-Knowledge) réside dans la maximisation de la parallélisation des calculs clés. D'un point de vue matériel, les CPU sont conçus pour une flexibilité maximale et une utilisation générale. Cependant, une partie significative de la zone de puce du CPU est dédiée aux fonctions de contrôle et à différents niveaux de cache, ce qui limite ses capacités de calcul parallèle. En revanche, une plus grande proportion de la zone de puce d'un GPU est allouée au calcul, ce qui lui permet de prendre en charge un traitement parallèle à grande échelle. Les GPU sont désormais largement disponibles, et des bibliothèques comme Nvidia CUDA permettent aux développeurs de tirer parti du parallélisme GPU sans avoir besoin d'une connaissance approfondie du matériel sous-jacent. Le kit de développement logiciel CUDA offre un cadre pour accélérer les calculs MSM (Multiplication Multi-Scalaire) et NTT (Transformation Théorique des Nombres) en utilisant les bibliothèques CUDA ZK.

Les FPGA (Field-Programmable Gate Array) adoptent une approche différente, comprenant des ensembles de nombreuses petites unités de traitement. Pour programmer un FPGA, les développeurs doivent utiliser un langage de description matériel spécialisé (HDL), qui est ensuite compilé en combinaisons de circuits de transistors. Fondamentalement, le FPGA met en œuvre des algorithmes spécifiques directement à travers des circuits de transistors, contournant le processus de compilation du système d'instructions traditionnel. Cette approche offre une personnalisation et une flexibilité bien plus grandes par rapport aux GPU. Actuellement, les prix des FPGA sont d'environ un tiers des prix des GPU, et ils peuvent être plus de dix fois plus économes en énergie. Cet avantage en matière d'efficacité énergétique s'explique en partie par le fait que les GPU doivent être connectés à un dispositif hôte, qui consomme généralement beaucoup d'énergie. Les FPGA peuvent ajouter plus de modules de calcul pour répondre aux exigences de MSM et de NTT sans augmenter la consommation d'énergie, ce qui les rend particulièrement adaptés aux scénarios de preuve de ZK qui sont intensifs en calcul, nécessitent un débit de données élevé et des temps de réponse courts. Cependant, le plus grand défi avec les FPGA est la rareté des développeurs ayant l'expérience de programmation nécessaire. Pour les équipes de projet ZK, assembler une équipe possédant à la fois une expertise en cryptographie et des connaissances en ingénierie FPGA est extrêmement difficile.

ASIC (circuit intégré spécifique à une application) est le plus spécialisé des trois, implémentant essentiellement un programme entièrement en matériel. Une fois qu'un ASIC est conçu, la configuration matérielle est fixe et ne peut pas être modifiée, ce qui signifie qu'il ne peut effectuer que des tâches spécifiques. Les avantages des FPGA dans l'accélération de MSM et NTT s'appliquent également à ASIC, mais parce qu'ASIC est conçu pour une application spécifique, il offre la plus grande efficacité et la plus faible consommation d'énergie parmi toutes les options matérielles. Pour les circuits ZK grand public d'aujourd'hui, Cysic vise à atteindre des temps de preuve de 1 à 5 secondes, que seul ASIC peut fournir. Bien que ces avantages soient très attrayants, la technologie ZK évolue rapidement, et les cycles de conception et de production d'ASIC prennent généralement 1 à 2 ans et coûtent entre 10 et 20 millions de dollars. Par conséquent, la production à grande échelle doit attendre que la technologie ZK se stabilise pour éviter de produire des puces qui deviennent rapidement obsolètes.

Pour relever ces défis, Cysic a investi de manière exhaustive dans les trois catégories de matériel : GPU, FPGA et ASIC. En matière d'accélération GPU, Cysic s'est adapté à l'émergence de divers nouveaux systèmes de preuve ZK grâce à son kit de développement CUDA accéléré développé en interne. En consolidant les ressources de la communauté, Cysic a connecté des dizaines de milliers de GPU de premier ordre à son réseau informatique GPU, ce qui permet d'obtenir des améliorations de vitesse de 50 % à 80 %, voire plus, par rapport aux derniers frameworks open source. Dans l'espace FPGA, Cysic a développé des solutions qui établissent des références mondiales en matière de performances pour les modules MSM, NTT et l'arbre Merkle Poseidon, couvrant les composants les plus critiques du calcul ZK. Ces solutions ont été testées et validées en prototype par plusieurs projets ZK de premier plan. Le SolarMSM exclusif de Cysic peut effectuer des calculs MSM à l'échelle de 2^30 en seulement 0,195 seconde, tandis que le SolarNTT peut effectuer des calculs NTT à l'échelle de 2^30 en 0,218 seconde, ce qui en fait les résultats d'accélération matérielle FPGA les plus performants actuellement disponibles.

Dans le domaine des ASIC, bien que l'adoption généralisée des ASICs ZK puisse encore prendre du temps, Cysic s'est déjà positionné sur ce marché émergent en développant ses propres puces et dispositifs ZK DePIN. Afin de répondre aux besoins des utilisateurs et de satisfaire aux exigences de performance et de coût différentes des différents projets ZK, Cysic prévoit de lancer deux produits matériels ZK : ZK Air et ZK Pro.

  • ZK Air : Ce dispositif est compact, similaire en taille à une batterie externe ou à un chargeur d'ordinateur portable, ce qui permet aux utilisateurs quotidiens de le connecter via une interface de type C à des ordinateurs portables, des iPads ou même des smartphones. Il fournit un support de calcul pour des projets ZK spécifiques tout en permettant à l'utilisateur de gagner des récompenses. Malgré sa petite taille, la puissance de calcul de ZK Air dépasse celle des GPU grand public, ce qui le rend capable d'accélérer des tâches de génération de preuves ZK à plus petite échelle.
  • ZK Pro: Conçu pour des applications plus intensives, ZK Pro ressemble à des plates-formes minières traditionnelles et offre une puissance de calcul équivalente à un serveur multi-GPU. Il accélère considérablement la génération de preuves ZK pour des projets à grande échelle tels que ZK-Rollup et ZKML (Zero-Knowledge Machine Learning).

Grâce à ces deux dispositifs, Cysic vise à créer un réseau ZK-DePIN stable et fiable. À l'heure actuelle, à la fois ZK Air et ZK Pro sont en cours de développement, avec une sortie prévue en 2025. De plus, le réseau Cysic permettra aux utilisateurs grand public d'entrer sur le marché de l'accélération matérielle ZK avec des barrières à l'entrée très faibles. Associée à la forte demande de puissance de calcul des équipes de projet ZK, cela pourrait déclencher une nouvelle vague d'enthousiasme similaire au boom du minage de Bitcoin, potentiellement entraînant une croissance explosive sur le marché de l'informatique ZK.

Référence

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

Avertissement:

  1. Cet article est repris de Geek Web3. Les droits d'auteur appartiennent aux auteurs originaux, [Nickqiao & Wuyue]. Si vous avez des objections à la reproduction, veuillez contacter le Gate Learnéquipe, et l'équipe le traitera rapidement selon les procédures pertinentes.
  2. Avertissement : Les points de vue et opinions exprimés dans cet article sont uniquement ceux des auteurs et ne constituent aucun conseil en investissement.
  3. D'autres versions linguistiques de l'article ont été traduites par l'équipe Gate Learn. Les articles traduits ne peuvent être copiés, distribués ou plagiés sans mentionner Gate.io.

Comprendre Cysic: L'aube de l'accélération matérielle et l'émergence du minage ZK

IntermédiaireAug 14, 2024
Cet article présente le flux de travail du système de preuve ZK et explore les défis et les stratégies d'optimisation pour accélérer les calculs MSM et NTT.
Comprendre Cysic: L'aube de l'accélération matérielle et l'émergence du minage ZK

En avril, Vitalik a assisté au Sommet de la Blockchain à Hong Kong et a prononcé un discours intitulé “Atteindre les limites de la conception de protocole”, où il a mis en lumière le potentiel des ZK-SNARKs dans la feuille de route de Danksharding d'Ethereum et a discuté du rôle prometteur des puces ASIC dans l'accélération des processus ZK. Plus tôt, le co-fondateur de Scroll, Zhang Ye, a suggéré que les applications potentielles de ZK pourraient être encore plus grandes dans les secteurs traditionnels que dans Web3, avec une demande significative dans des domaines tels que l'informatique de confiance, les bases de données, le matériel vérifiable, l'authentification de contenu et zkML. Si la génération de preuves ZK en temps réel devient réalisable, cela pourrait entraîner des changements transformateurs à la fois dans Web3 et dans les industries traditionnelles. Cependant, du point de vue de l'efficacité et du coût, l'adoption généralisée de ZK est encore loin.

En 2022, les principales sociétés de capital-risque a16z et Paradigm ont publié des rapports soulignant l'importance de l'accélération matérielle ZK. Paradigm est allé jusqu'à prédire que les futurs gains des mineurs ZK pourraient rivaliser avec ceux des mineurs Bitcoin ou Ethereum, les solutions d'accélération matérielle basées sur GPU, FPGA et ASIC étant prêtes à capturer une part de marché importante. À la suite de l'essor de ZK Rollups grand public tels que Scroll et Starknet, l'accélération matérielle est devenue un sujet brûlant, et l'intérêt s'est intensifié avec le lancement imminent de projets tels que Cysic.

Compte tenu de la forte demande pour ZK, il est probable que les pools de minage ZK et les modèles SaaS de génération de ZKP en temps réel pourraient donner naissance à une nouvelle industrie. Dans ce marché émergent, les fabricants de matériel ZK avec de solides capacités et un avantage de premier arrivé pourraient potentiellement devenir le prochain Bitmain, dominant le domaine de l'accélération matérielle. Cysic se distingue comme l'un des acteurs les plus prometteurs dans cet espace. L'équipe a remporté des prix remarquables de la plateforme de concours technologique ZKP ZPrize et a commencé à encadrer ZPrize en 2023. Leur feuille de route comprend des pools de minage ZK ToB (entreprise à entreprise) et du matériel ZK-Depin ToC (entreprise à consommateur), attirant des investissements substantiels de grands VC tels que Polychain, ABCDE, OKX Ventures et Hashkey, pour un montant total de près de 20 millions de dollars.

Alors que Cysic se prépare à lancer son testnet à la fin du mois de juillet et à ouvrir son pool de minage ZK, les discussions sur l'entreprise se multiplient au sein de différentes communautés. Cet article vise à présenter davantage de personnes aux concepts produits de Cysic et à son modèle économique tout en fournissant un aperçu accessible des principes d'accélération matérielle ZK. Dans les sections suivantes, nous présenterons brièvement les aspects clés de Cysic, ce qui facilitera la compréhension des lecteurs.

Comprendre les systèmes de preuve ZK : Une perspective de flux de travail

Le système de preuve ZK (Zero-Knowledge) est complexe, mais nous pouvons simplifier sa compréhension en le décomposant à travers ses fonctions et son flux de travail. Voici un aperçu de base de la façon dont un système conçu pour appliquer ZK aux calculs ordinaires fonctionne : Tout d'abord, l'utilisateur interagit avec le système ZK via une interface frontale, soumettant le contenu qu'il souhaite prouver. L'interface frontale convertit ensuite ce contenu dans un format adapté au traitement par le système de preuve ZK. Le système utilise un système de preuve spécifique ou un cadre (comme Halo2 ou Plonk) pour générer une preuve ZK. Ce processus comprend plusieurs étapes clés :

  1. Définition du problème: La première étape consiste à identifier le contenu spécifique qui doit être prouvé. Par exemple, le Prover peut prétendre connaître ou posséder certaines données, en déclarant, par exemple, "Je connais une solution N à l'équation F(x)=w", sans révéler la valeur réelle de N.
  2. Conversion arithmétique et problèmes de satisfaction de contraintes (CSP) : Après que le prouveur soumet le contenu, le système crée un modèle mathématique spécialisé ou un programme qui représente précisément le contenu à prouver. Celui-ci est ensuite converti dans un format que le système de preuve peut traiter. Par exemple, l'énoncé « Je connais une solution N à l'équation F(x) = w » est transformé de son équation mathématique originale en une forme représentée par des circuits logiques et des polynômes.

  1. Compilation en ZKP: Ensuite, le système sélectionne un système de preuve approprié, comme Halo ou Plonk, et compile le contenu précédemment généré dans un programme ZKP. Le Prover utilise ensuite ce programme pour générer une preuve, que le Vérificateur vérifie pour en assurer la validité.

Pour des systèmes comme zkEVM, couramment utilisés dans les solutions de couche 2 d'Ethereum, les contrats intelligents sont d'abord compilés en bytecode de la machine virtuelle Ethereum (EVM). Chaque opcode est ensuite converti en circuits de logique Gate ou en contraintes polynomiales avant d'être traité plus loin par le système de preuve ZK en back-end.

Il est important de noter que les zk-SNARKs (Zero-Knowledge Succinct Non-Interactive Argument of Knowledge) sont la technologie de preuve de connaissance nulle la plus couramment utilisée dans la blockchain aujourd'hui. De nombreux ZK Rollups exploitent la concision des SNARKs plutôt que leur propriété de connaissance nulle. La concision fait référence à la capacité de la preuve de connaissance nulle à comprimer de grandes quantités de données en quelques centaines d'octets, réduisant ainsi considérablement les coûts de vérification. Cela crée une asymétrie entre la charge de travail du Prouveur et du Vérificateur : alors qu'il est coûteux pour le Prouveur de générer la preuve de connaissance nulle, il est relativement peu coûteux pour le Vérificateur de la vérifier. En exploitant cette asymétrie, un scénario avec un Prouveur et plusieurs Vérificateurs peut considérablement réduire le coût global du côté du Vérificateur. Ce modèle est particulièrement avantageux pour la vérification décentralisée, telle que prévue par les solutions de couche 2 d'Ethereum.

Cependant, ce modèle de déchargement des coûts de vérification sur le processus de génération de preuves à divulgation n'est pas une solution miracle. Pour les projets ZK Rollup, le coût élevé de la génération de preuves à divulgation sera inévitablement répercuté sur l'expérience utilisateur et les frais de transaction, ce qui pourrait entraver l'adoption à long terme des ZK Rollups. Malgré le potentiel de ZK dans la vérification sans confiance et décentralisée, les conditions économiques actuelles ne favorisent pas la mise en œuvre à grande échelle de zkEVM, zkVM, ZK Rollups ou ZK bridges en raison des contraintes temporelles associées à la génération de preuves. Cela a conduit à l'émergence de projets d'accélération ZK tels que Cysic, Ingonyama et Irreducible, chacun travaillant à réduire le coût de génération de preuves à divulgation sous différents angles. Dans la section suivante, nous discuterons brièvement des coûts computationnels principaux et des techniques d'accélération pour la génération de preuves à divulgation, et pourquoi Cysic détient un potentiel significatif dans l'espace d'accélération ZK.

Défis informatiques : MSM et NTT

Il est largement connu que la génération de preuves dans les systèmes ZK est chronophage pour le Prover. Dans le protocole ZK-SNARK, un Vérificateur pourrait être en mesure de vérifier une preuve en seulement une seconde, mais cela pourrait prendre au Prover une demi-journée ou même une journée entière pour générer cette preuve. Pour optimiser l'utilisation des calculs ZKP, il est nécessaire de convertir le format de calcul de la programmation classique en un format compatible avec ZK.

Il existe actuellement deux méthodes principales pour y parvenir : l'une consiste à écrire des circuits à l'aide de cadres de système de preuve tels que Halo2, tandis que l'autre consiste à utiliser des langages spécifiques à un domaine (DSL) tels que Cairo ou Circom, pour traduire les calculs dans un format intermédiaire qui peut ensuite être soumis au système de preuve. Le système de preuve génère des preuves ZK basées sur ces circuits ou les formats intermédiaires compilés par les DSL. Plus les opérations sont complexes, plus il faut de temps pour générer la preuve. De plus, certaines opérations sont intrinsèquement incompatibles avec les ZK et nécessitent des efforts supplémentaires pour être mises en œuvre. Par exemple, les fonctions de hachage comme SHA ou Keccak sont incompatibles avec les ZKP, ce qui signifie que leur utilisation augmente le temps de génération de la preuve. Même les opérations qui sont peu coûteuses à exécuter sur des ordinateurs classiques peuvent ne pas être efficaces pour les ZKP.

À l'exclusion de ces tâches incompatibles avec ZK, les goulots d'étranglement dans le processus de génération de preuves sont assez similaires dans différents systèmes de preuves. Il existe deux tâches computationnelles principales qui consomment la plupart des ressources dans la génération de preuves ZK : MSM (Multiplication multi-scalaire) et NTT (Transformée théorique des nombres). Ces deux tâches peuvent représenter 80 à 95 % du temps de génération de preuves, selon le schéma d'engagement de ZKP et l'implémentation spécifique. MSM implique la multiplication multi-scalaire sur les courbes elliptiques, tandis que NTT est une FFT (Transformée de Fourier rapide) sur des corps finis utilisée pour accélérer la multiplication polynomiale. Différentes combinaisons de ces tâches peuvent entraîner des distributions de charge variables entre FFT et MSM. Par exemple, Stark utilise FRI, un schéma d'engagement basé sur le hachage qui n'implique pas MSM, contrairement aux schémas basés sur les courbes elliptiques comme KZG ou IPA. En général, plus il y a d'opérations FFT requises, moins il y a d'opérations MSM, et vice versa.

Stratégies d'optimisation

Les opérations MSM se caractérisent par un accès mémoire prévisible, ce qui permet une forte parallélisation mais exige des ressources mémoire importantes. Cependant, le MSM présente également des défis en termes de scalabilité ; même avec la parallélisation, il peut encore être lent. Bien que l'accélération matérielle puisse aider à accélérer le MSM, elle exige des ressources mémoire et de calcul parallèle substantielles.

D'autre part, NTT implique un accès aléatoire à la mémoire, ce qui le rend moins adapté à l'accélération matérielle et difficile à gérer dans les systèmes distribués. Cela est dû au fait que la nature d'accès aléatoire de NTT nécessite souvent d'accéder aux données d'autres nœuds dans un environnement distribué. Lorsque l'interaction réseau est nécessaire, les performances peuvent en souffrir considérablement.

Par conséquent, l'accès et le déplacement des données stockées deviennent des goulots d'étranglement majeurs, limitant la capacité de paralléliser les opérations NTT. La plupart des efforts pour accélérer la NTT se concentrent sur la gestion de l'interaction de la computation avec la mémoire.

En fait, le moyen le plus simple de résoudre le goulot d'étranglement de l'MSM et de la NTT est d'éliminer ces opérations complètement. Certains nouveaux algorithmes proposés, comme Hyperplonk, modifient Plonk pour supprimer les opérations NTT, ce qui rend Hyperplonk plus facile à accélérer, bien qu'il introduise de nouveaux goulots d'étranglement. D'autres exemples incluent le protocole de vérification de somme coûteux en calcul ou l'algorithme STARK, qui élimine l'MSM mais ajoute un calcul de hachage significatif grâce à son protocole FRI.

Accélération matérielle ZK et objectif ultime de Cysic

Alors que les optimisations logicielles et algorithmiques sont essentielles et précieuses, elles ont des limites claires. Pour optimiser pleinement l'efficacité de la génération de preuves sans divulgation de connaissance (ZKP), l'accélération matérielle est cruciale, tout comme les ASIC et les GPU ont finalement dominé les marchés miniers du BTC et de l'ETH.

La question qui se pose alors est la suivante : quel est le meilleur matériel pour accélérer la génération de preuves à divulgation nulle de connaissance (ZKP) ? Actuellement, plusieurs options matérielles sont disponibles pour accélérer les ZK, telles que les GPU, les FPGA ou les ASIC, chacun ayant ses propres avantages et inconvénients.

Comparaison du matériel GPU, FPGA et ASIC

Pour mieux comprendre les différences dans les processus de développement à travers le GPU, le FPGA et le matériel ASIC, considérons un exemple simple : la mise en œuvre de la multiplication parallèle.

  • GPU: En utilisant le kit de développement logiciel CUDA, les développeurs peuvent écrire du code qui tire parti du calcul parallèle, similaire à l'écriture de code natif.
  • FPGA: Les développeurs doivent apprendre un langage de description matériel (HDL) pour contrôler les connexions de niveau matériel et mettre en œuvre des algorithmes parallèles.
  • ASIC: La disposition des transistors de la puce est fixée lors de la phase de conception et ne peut pas être modifiée ultérieurement.

Chaque option matérielle a ses points forts et ses faiblesses, les rendant adaptées à différentes étapes du développement de la technologie ZK. L'objectif de Cysic est de devenir la solution ultime pour l'accélération matérielle ZK, en utilisant une stratégie progressive :

  1. GPU : Développer un SDK pour fournir des solutions pour les applications ZK et intégrer les ressources GPU à travers le réseau.
  2. FPGA: Utilisez la flexibilité des FPGA pour créer rapidement une accélération matérielle ZK personnalisée.
  3. ASIC: Développer indépendamment le matériel ZK Depin basé sur ASIC.
  4. Cysic Network intégrera toute la puissance de calcul de ZK Depin et des GPU en tant que plateforme SAAS/pool de minage pour fournir des solutions de calcul et de vérification pour l'ensemble de l'industrie ZK.

Explorons ces différents sous-domaines pour mieux comprendre les distinctions entre les solutions d'accélération ZK et l'approche de développement de Cysic.

ZK Mineur Pool et Plateforme SaaS: Réseau Cysic

Both Scroll and Polygon zkEVM ont proposé le concept d'un "Prover décentralisé" dans leurs feuilles de route, ce qui signifie essentiellement la construction de pools de minage ZK. Cette approche axée sur le marché aide les projets ZK Rollup à réduire leur charge de travail tout en incitant les mineurs et les opérateurs de pools de minage à optimiser continuellement les solutions d'accélération ZK. La feuille de route de Cysic comprend le développement d'un pool de minage ZK et d'une plateforme SaaS appelée Cysic Network, qui intégrera la puissance de calcul de Cysic et attirera des ressources tierces grâce à des incitations minières, notamment des GPU inutilisés et des appareils zk DePIN appartenant aux consommateurs. Le flux de travail de vérification complet fonctionne comme suit:

  1. Soumission de tâche : L'équipe du projet zk soumet une tâche de génération de preuve à un agent, qui transmet la tâche au réseau de vérification. Initialement, ces agents seront exploités par Cysic, mais plus tard, le jalonnement d'actifs permettra à n'importe qui de devenir un agent.
  2. Génération de preuve: Le prouveur accepte la tâche et utilise du matériel pour générer la preuve ZK. Le prouveur doit miser des jetons pour participer et sera récompensé après avoir terminé la tâche.
  3. Validation: Le comité des validateurs vérifie la validité de la preuve et vote dessus. Une fois qu'un certain nombre de votes est atteint, la preuve est considérée comme valide. Les validateurs rejoignent le comité en misant des jetons, en participant au vote et en gagnant des récompenses. Ce processus peut incorporer le concept AVS d'EigenLayer pour réutiliser les installations de restaking existantes.

Le processus d'interaction détaillé est le suivant

Dans ce processus, certaines actions, telles que le jalonnement d'actifs, la distribution d'incitations et la soumission de tâches, nécessitent une plateforme dédiée prise en charge par l'infrastructure blockchain. Pour répondre à ce besoin, Cysic Network a développé une chaîne publique dédiée avec un algorithme de consensus unique appelé Preuve de Calcul (PoC). Cet algorithme utilise la fonction VRF et les performances historiques du vérificateur, telles que la disponibilité de l'appareil, le nombre de preuves soumises, la précision de la preuve, etc., pour sélectionner les producteurs de blocs responsables de la création de blocs (ces blocs enregistrent probablement des informations sur l'appareil et distribuent des incitations en jetons). Outre le pool de minage ZK et la plateforme SaaS, Cysic a effectué de vastes déploiements dans des solutions d'accélération ZK basées sur différents matériels. Explorons les réalisations de Cysic dans la technologie GPU, FPGA et ASIC.

GPU, FPGA et ASIC : Une comparaison

L'essence de l'accélération matérielle ZK (Zero-Knowledge) réside dans la maximisation de la parallélisation des calculs clés. D'un point de vue matériel, les CPU sont conçus pour une flexibilité maximale et une utilisation générale. Cependant, une partie significative de la zone de puce du CPU est dédiée aux fonctions de contrôle et à différents niveaux de cache, ce qui limite ses capacités de calcul parallèle. En revanche, une plus grande proportion de la zone de puce d'un GPU est allouée au calcul, ce qui lui permet de prendre en charge un traitement parallèle à grande échelle. Les GPU sont désormais largement disponibles, et des bibliothèques comme Nvidia CUDA permettent aux développeurs de tirer parti du parallélisme GPU sans avoir besoin d'une connaissance approfondie du matériel sous-jacent. Le kit de développement logiciel CUDA offre un cadre pour accélérer les calculs MSM (Multiplication Multi-Scalaire) et NTT (Transformation Théorique des Nombres) en utilisant les bibliothèques CUDA ZK.

Les FPGA (Field-Programmable Gate Array) adoptent une approche différente, comprenant des ensembles de nombreuses petites unités de traitement. Pour programmer un FPGA, les développeurs doivent utiliser un langage de description matériel spécialisé (HDL), qui est ensuite compilé en combinaisons de circuits de transistors. Fondamentalement, le FPGA met en œuvre des algorithmes spécifiques directement à travers des circuits de transistors, contournant le processus de compilation du système d'instructions traditionnel. Cette approche offre une personnalisation et une flexibilité bien plus grandes par rapport aux GPU. Actuellement, les prix des FPGA sont d'environ un tiers des prix des GPU, et ils peuvent être plus de dix fois plus économes en énergie. Cet avantage en matière d'efficacité énergétique s'explique en partie par le fait que les GPU doivent être connectés à un dispositif hôte, qui consomme généralement beaucoup d'énergie. Les FPGA peuvent ajouter plus de modules de calcul pour répondre aux exigences de MSM et de NTT sans augmenter la consommation d'énergie, ce qui les rend particulièrement adaptés aux scénarios de preuve de ZK qui sont intensifs en calcul, nécessitent un débit de données élevé et des temps de réponse courts. Cependant, le plus grand défi avec les FPGA est la rareté des développeurs ayant l'expérience de programmation nécessaire. Pour les équipes de projet ZK, assembler une équipe possédant à la fois une expertise en cryptographie et des connaissances en ingénierie FPGA est extrêmement difficile.

ASIC (circuit intégré spécifique à une application) est le plus spécialisé des trois, implémentant essentiellement un programme entièrement en matériel. Une fois qu'un ASIC est conçu, la configuration matérielle est fixe et ne peut pas être modifiée, ce qui signifie qu'il ne peut effectuer que des tâches spécifiques. Les avantages des FPGA dans l'accélération de MSM et NTT s'appliquent également à ASIC, mais parce qu'ASIC est conçu pour une application spécifique, il offre la plus grande efficacité et la plus faible consommation d'énergie parmi toutes les options matérielles. Pour les circuits ZK grand public d'aujourd'hui, Cysic vise à atteindre des temps de preuve de 1 à 5 secondes, que seul ASIC peut fournir. Bien que ces avantages soient très attrayants, la technologie ZK évolue rapidement, et les cycles de conception et de production d'ASIC prennent généralement 1 à 2 ans et coûtent entre 10 et 20 millions de dollars. Par conséquent, la production à grande échelle doit attendre que la technologie ZK se stabilise pour éviter de produire des puces qui deviennent rapidement obsolètes.

Pour relever ces défis, Cysic a investi de manière exhaustive dans les trois catégories de matériel : GPU, FPGA et ASIC. En matière d'accélération GPU, Cysic s'est adapté à l'émergence de divers nouveaux systèmes de preuve ZK grâce à son kit de développement CUDA accéléré développé en interne. En consolidant les ressources de la communauté, Cysic a connecté des dizaines de milliers de GPU de premier ordre à son réseau informatique GPU, ce qui permet d'obtenir des améliorations de vitesse de 50 % à 80 %, voire plus, par rapport aux derniers frameworks open source. Dans l'espace FPGA, Cysic a développé des solutions qui établissent des références mondiales en matière de performances pour les modules MSM, NTT et l'arbre Merkle Poseidon, couvrant les composants les plus critiques du calcul ZK. Ces solutions ont été testées et validées en prototype par plusieurs projets ZK de premier plan. Le SolarMSM exclusif de Cysic peut effectuer des calculs MSM à l'échelle de 2^30 en seulement 0,195 seconde, tandis que le SolarNTT peut effectuer des calculs NTT à l'échelle de 2^30 en 0,218 seconde, ce qui en fait les résultats d'accélération matérielle FPGA les plus performants actuellement disponibles.

Dans le domaine des ASIC, bien que l'adoption généralisée des ASICs ZK puisse encore prendre du temps, Cysic s'est déjà positionné sur ce marché émergent en développant ses propres puces et dispositifs ZK DePIN. Afin de répondre aux besoins des utilisateurs et de satisfaire aux exigences de performance et de coût différentes des différents projets ZK, Cysic prévoit de lancer deux produits matériels ZK : ZK Air et ZK Pro.

  • ZK Air : Ce dispositif est compact, similaire en taille à une batterie externe ou à un chargeur d'ordinateur portable, ce qui permet aux utilisateurs quotidiens de le connecter via une interface de type C à des ordinateurs portables, des iPads ou même des smartphones. Il fournit un support de calcul pour des projets ZK spécifiques tout en permettant à l'utilisateur de gagner des récompenses. Malgré sa petite taille, la puissance de calcul de ZK Air dépasse celle des GPU grand public, ce qui le rend capable d'accélérer des tâches de génération de preuves ZK à plus petite échelle.
  • ZK Pro: Conçu pour des applications plus intensives, ZK Pro ressemble à des plates-formes minières traditionnelles et offre une puissance de calcul équivalente à un serveur multi-GPU. Il accélère considérablement la génération de preuves ZK pour des projets à grande échelle tels que ZK-Rollup et ZKML (Zero-Knowledge Machine Learning).

Grâce à ces deux dispositifs, Cysic vise à créer un réseau ZK-DePIN stable et fiable. À l'heure actuelle, à la fois ZK Air et ZK Pro sont en cours de développement, avec une sortie prévue en 2025. De plus, le réseau Cysic permettra aux utilisateurs grand public d'entrer sur le marché de l'accélération matérielle ZK avec des barrières à l'entrée très faibles. Associée à la forte demande de puissance de calcul des équipes de projet ZK, cela pourrait déclencher une nouvelle vague d'enthousiasme similaire au boom du minage de Bitcoin, potentiellement entraînant une croissance explosive sur le marché de l'informatique ZK.

Référence

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

Avertissement:

  1. Cet article est repris de Geek Web3. Les droits d'auteur appartiennent aux auteurs originaux, [Nickqiao & Wuyue]. Si vous avez des objections à la reproduction, veuillez contacter le Gate Learnéquipe, et l'équipe le traitera rapidement selon les procédures pertinentes.
  2. Avertissement : Les points de vue et opinions exprimés dans cet article sont uniquement ceux des auteurs et ne constituent aucun conseil en investissement.
  3. D'autres versions linguistiques de l'article ont été traduites par l'équipe Gate Learn. Les articles traduits ne peuvent être copiés, distribués ou plagiés sans mentionner Gate.io.
Lancez-vous
Inscrivez-vous et obtenez un bon de
100$
!