paint-brush
Une analyse approfondie de l'algorithme ZK-PoW d'Opsidepar@lumoz
341 lectures
341 lectures

Une analyse approfondie de l'algorithme ZK-PoW d'Opside

par Lumoz (formerly Opside)5m2023/06/04
Read on Terminal Reader

Trop long; Pour lire

L'algorithme ZK-PoW proposé par Opside offre les avantages suivants : Un mécanisme de tarification de la puissance de calcul ZK axé sur le marché, qui peut être utilisé pour l'évolutivité (ZK-Rollup) et les applications futures en IA (ZkML). Il fournit une plate-forme de puissance de calcul massive pour le futur. explosion de zkEVM, en particulier l'ère zkSync. Il propose de nouveaux scénarios de minage pour un grand nombre de mineurs inactifs.
featured image - Une analyse approfondie de l'algorithme ZK-PoW d'Opside
Lumoz (formerly Opside) HackerNoon profile picture

L'algorithme ZK-PoW (preuve de travail) proposé par Opside offre les avantages suivants :

  • Un mécanisme de tarification de la puissance de calcul ZK axé sur le marché, qui peut être utilisé pour l'évolutivité (ZK-Rollup) et les applications futures en IA (ZKML).
  • Il fournit une plate-forme de puissance de calcul massive pour l'explosion à venir de ZK-Rollup, en particulier de zkEVM, et propose de nouveaux scénarios de minage pour un grand nombre de mineurs inactifs.
  • L'algorithme de validation en deux étapes pour Zero-Knowledge Proofs (ZKP) fournit un mécanisme de preuve décentralisé standardisé pour ZK-Rollup.
  • Les mécanismes de calcul et de soumission ZKP optimisés ont amélioré l'efficacité de la génération ZKP de 80 %.

Pourquoi avons-nous besoin de l'algorithme PoW de la puissance de calcul ZK ?

Actuellement, plusieurs ZK-Rollups s'exécutent sur le réseau principal Ethereum, y compris Polygon zkEVM et zkSync era. Cependant, la majorité de ces projets ZK-Rollup n'ont pas implémenté de prouveur décentralisé. Par exemple, dans le réseau principal bêta de Polygon zkEVM, les agrégateurs de confiance sont utilisés pour soumettre les ZKP, et l'ère zkSync suit une approche similaire.

Alors que les prouveurs centralisés sont réalisables lorsque le nombre de ZK-Rollups est faible, avec la maturation des technologies d'évolutivité ZK, en particulier la mise en œuvre progressive de zkEVM au cours des deux prochaines années, le nombre de ZK-Rollups connaîtra une croissance significative. Dans le cas d'un nombre massif de ZK-Rollups, les prouveurs centralisés poseront plusieurs problèmes :

Premièrement, le coût des prouveurs est élevé et le maintien d'un groupe de prouveurs centralisé nécessite des équipements et des installations spécialisés. Tous les opérateurs ZK-Rollup n'ont pas la capacité de maintenir une configuration de prouveur aussi centralisée. Par conséquent, nous avons besoin de mineurs professionnels pour répondre à la demande de puissance de calcul du futur écosystème massif de ZK-Rollup.

Deuxièmement, s'il n'y a qu'un seul prouveur, une défaillance d'un seul nœud peut entraîner l'incapacité de confirmer les transactions pour l'ensemble du ZK-Rollup. Nous avons besoin d'un mécanisme de preuve décentralisé pour encourager plusieurs mineurs à participer simultanément au calcul d'un ZKP et à recevoir les récompenses correspondantes. Enfin, nous avons besoin d'un algorithme d'optimisation ZKP standardisé pour améliorer l'efficacité globale du matériel.

Algorithme ZK-PoW d'Opside

En tant que blockchain publique hautement décentralisée, Ethereum est devenu congestionné et les frais de gaz sont devenus extrêmement chers. De nombreuses applications Web3, en particulier les dérivés financiers, les jeux, les réseaux sociaux et autres, doivent migrer vers la couche 2 ou d'autres chaînes publiques. En fait, il n'est pas difficile de fournir à lui seul un environnement d'exécution hautes performances et à faible consommation de gaz, car certaines solutions centralisées peuvent facilement y parvenir. Le défi réside dans le maintien d'un niveau élevé de décentralisation tout en garantissant des performances élevées et des frais de gaz bas.

Dans la conception d'Opside, chaque application Web3 peut avoir son ZK-Rollup dédié et la liberté de choisir une chaîne de base. Actuellement, Opside prend en charge quatre chaînes de base : Ethereum, Opside, BNB Chain et Polygon. Cela signifie que les développeurs peuvent choisir de déployer leur ZK-Rollup sur l'une de ces quatre chaînes publiques. Pour répondre à la demande de ressources matérielles massives résultant d'un grand nombre de ZK-Rollups, Opside fournit également un marché de puissance de calcul ZKP unifié, encourageant les mineurs à générer des ZKP pour ces ZK-Rollups.

Mécanisme de distribution des récompenses pour PoW

Opside utilise un consensus hybride de PoS et PoW. La partie PoS est basée sur l'amélioration consensuelle d'ETH2.0. En conséquence, Opside disposera de plus de 100 000 validateurs pour fournir une disponibilité massive des données tout en maintenant un haut niveau de décentralisation.

Au cours de la phase de testnet pré-alpha, basée sur l'algorithme PoW, chaque Rollup dans un bloc Opside soumettra une séquence selon certaines règles. Les récompenses PoW pour le bloc actuel sont réparties entre les séquences en fonction du nombre d'emplacements Rollup enregistrés et du nombre de lots inclus. Cependant, il est possible que certains cumuls ne soumettent pas de séquence dans certains blocs, ce qui entraîne une inflation réelle plus faible que prévu.

Les mineurs sont libres de choisir de participer au calcul ZKP d'un ou plusieurs Rollups. À l'avenir, chaque séquence sera tarifée différemment en fonction du type ZK-Rollup correspondant, du nombre de transactions Rollup incluses, de la consommation de gaz et d'autres facteurs permettant d'estimer la charge de travail.

Pour empêcher les comportements malveillants des mineurs, ils doivent enregistrer et miser des jetons dans un contrat système spécial. Les mineurs sont tenus de miser les jetons correspondants pour un Rollup dans le contrat système afin de pouvoir soumettre des ZKP pour ce Rollup. Les récompenses que les mineurs reçoivent pour avoir soumis des ZKP seront également distribuées en fonction de la proportion de leurs mises, évitant ainsi les comportements malveillants des mineurs soumettant des ZKP plusieurs fois.

Pour plus de détails, veuillez vous référer à Opside Tokenomics .

Algorithme de validation en deux étapes pour ZKP : mécanisme de preuve décentralisé standard

Pour encourager plusieurs mineurs à participer simultanément au calcul d'un ZKP, Opside propose un mécanisme de vérification ZKP en deux étapes. L'allocation de récompense PoW correspondant à un ZKP est distribuée au demandeur, c'est-à-dire au mineur, d'un ZKP valide sur la base de certaines règles.

  1. Submit Proofhash : Dans une fenêtre de temps spécifique pour une séquence donnée, plusieurs mineurs sont autorisés à participer au calcul de la preuve à connaissance nulle. Au lieu de soumettre directement la preuve originale, chaque mineur calcule le proofhash de (preuve/adresse) et le soumet au contrat.
  2. Soumettre ZKP : après la fenêtre de temps, les mineurs soumettent la preuve originale et la vérifient par rapport à la preuve de hachage précédemment soumise. Les mineurs dont les preuves passent le processus de vérification sont éligibles aux récompenses PoW, qui sont distribuées proportionnellement en fonction du montant qu'ils ont misé.

Pour plus de détails, veuillez vous référer à l'algorithme de soumission en deux étapes de ZKP .

Algorithme de génération ZKP optimisé : augmentation de 80 % de l'efficacité du mineur

Lorsque le contrat intelligent d'un Rollup vérifie un ZKP, la soumission des données de preuve d'origine peut potentiellement déclencher des attaques en chaîne. Pour éviter les comportements malveillants, les ZK-Rollups nécessitent souvent un effort de calcul supplémentaire pour obscurcir les données de preuve d'origine. Une approche consiste à inclure une agrégation de l'adresse du mineur dans le ZKP soumis. L'algorithme de soumission en deux étapes d'Opside pour les ZKP adopte ingénieusement un modèle de soumission-première-vérification-plus tard, éliminant ainsi le besoin de calculs d'agrégation inutiles de la preuve et de l'adresse.

De plus, dans certaines implémentations zkEVM open source, les calculs et les soumissions ZKP sont effectués de manière séquentielle. Cela signifie que lorsqu'un ZK-Rollup soumet un grand nombre de séquences, les mineurs ne peuvent pas calculer plusieurs ZKP simultanément. Dans Opside, l'algorithme de soumission en deux étapes permet des calculs ZKP parallèles et des soumissions séquentielles, permettant aux mineurs d'exécuter plusieurs tâches de génération ZKP simultanément, accélérant considérablement l'efficacité de la génération ZKP.

L'équipe Opside a également mené une série d'optimisations pour l'algorithme d'agrégation récursive ZKP, maximisant l'utilisation des ressources du cluster et améliorant encore la vitesse des calculs ZKP.

Dans les environnements de test de stress du monde réel, les mineurs disposent d'un cluster de 20 machines composées de processeurs à 128 cœurs et de 1 To de RAM. Le taux de transaction testé s'est stabilisé autour de 27,8 TPS pendant environ 40 minutes. Dans les mêmes conditions, Opside a réduit le temps de confirmation moyen des transactions d'environ 5-6 minutes à environ 3 minutes, ce qui a entraîné une augmentation d'environ 80 % de l'efficacité de la génération de ZKP. À l'avenir, à mesure que de plus en plus de ZK-Rollups et de mineurs rejoindront le marché de la puissance de calcul ZK, les améliorations d'efficacité apportées par l'algorithme PoW d'Opside deviendront encore plus évidentes.

Résumé

Opside a proposé un algorithme ZK-PoW qui définit de manière créative un mécanisme de tarification basé sur le marché pour la puissance de calcul ZK. Ce marché de la puissance de calcul fournit une plate-forme massive pour la prochaine vague de ZK-Rollups, en particulier zkEVM, tout en offrant également un nouveau scénario de minage pour les mineurs inactifs.

L'algorithme de soumission en deux étapes pour les ZKP fournit un mécanisme de preuve décentralisé standardisé pour les ZK-Rollups, encourageant davantage de mineurs à contribuer à une puissance de calcul ZKP stable et continue. De plus, le mécanisme de calcul et de soumission ZKP optimisé a amélioré l'efficacité de la génération de ZKP de 80 %.

À l'avenir, le mécanisme PoW d'Opside pourra facilement être étendu à d'autres applications, non seulement pour l'évolutivité (ZK-Rollup) mais aussi pour l'IA (ZKML).