Ethereum Sharding - Mise à jour n ° 4 du développement toutes les deux semaines - Prysmatic Labs

Beaucoup de nouvelles passionnantes à partager depuis notre dernière mise à jour. Laissez-vous plonger dans les dernières discussions de recherche de l’équipe de recherche Ethereum et discutons des domaines sur lesquels Prysmatic Labs a travaillé. Sans plus tarder, commençons.

Dernières recherches sur l'éclatement

Preuve de garde

Une critique contre le système de notaire actuellement utilisé dans le protocole de partage minimal est la susceptibilité de ces agents au «dilemme du validateur», dans lequel les agents sont incités à être «paresseux» et à faire confiance au travail des autres validateurs pour prendre des décisions coordonnées. Plus précisément, les notaires sont chargés de vérifier la disponibilité des données des en-têtes de classement soumises au SMC pendant la période qui leur est attribuée. Cela signifie que les notaires doivent télécharger les en-têtes via un réseau shardp2p et valider leurs votes après avoir confirmé la disponibilité.

Les proposants peuvent essayer de jouer aux validateurs en publiant des propositions indisponibles, puis en invitant les validateurs paresseux à accepter leurs dépôts.

Afin de prévenir l’utilisation abusive des pièges de disponibilité des collations, la responsabilité des notaires est étendue pour fournir également une «racine Merkle d’un arbre de signatures, où chaque signature dans l’arbre de signatures est la signature du bloc correspondant des données de classement originales." ( ETHResearch) Cela signifie qu’au moment de la contestation, les notaires doivent disposer de toutes les données de classement disponibles pour créer un arbre de signature de tous ses morceaux.

Dimensions du pool de notaires: Exploration RANDAO

Lorsque la taille du pool de notaires est trop petite, certaines choses peuvent se produire: un petit pool oblige le notaire à utiliser une grande quantité de bande passante. La quantité de bande passante requise par chaque notaire est inversement proportionnelle à la taille du pool. Par conséquent, pour être suffisamment décentralisé, le pool de notaires doit être suffisamment important pour que la bande passante requise puisse être gérée avec une connexion Internet non exceptionnelle.

Deuxièmement, la taille du pool de notaires a un effet direct sur les exigences de fonds propres afin de prendre en charge la notarisation et de rétablir / censurer les transactions. Une taille de pool de notaires acceptable serait celle qui nécessitait un seuil de capital minimum acceptable pour une prise de contrôle de la chaîne.

Dans l’analyse RANDAO de Vitalik, il a examiné la vulnérabilité de la chaîne RANDAO par rapport à celle d’une chaîne de travail. L’exercice a permis à un attaquant disposant de 40% du capital de la chaîne RANDAO d’annuler des transactions; pour obtenir le même résultat sur une chaîne de prisonniers de guerre, il faudrait 50% de la puissance de hachage. D'autre part, si la chaîne utilisait un comité de notarisation 2/2, l'attaquant devrait augmenter sa participation à 46% dans la chaîne pour pouvoir censurer efficacement les transactions.

Voir les dernières discussions à ce sujet dans la chaîne publique Gitter Ethereum / Sharding.

Code fusionné, demandes d'extraction et problèmes

Documentation mise à jour

Notre fichier README a été entièrement mis à jour pour refléter l’objet actuel de la recherche sur le sharding et le protocole de sharding minimal sur lequel nous travaillons. Nous avons inclus des sections sur les notaires, les responsabilités de chaque acteur de notre système, etc.

Dernières fonctions contractuelles du gestionnaire Sharding

Nous avons terminé l’alignement du contrat Sharding Manager sur le protocole de partage minimal décrit au numéro 97. Nous avons implémenté les fonctions addHeader et submitVote. Avec ces fonctions, le proposant peut soumettre des classements en appelant addHeader et diffuser des corps de classement via le réseau de partage P2P. Ensuite, le notaire sélectionné peut voter pour l'en-tête de classement qui dispose d'un corps de classement entièrement disponible. Le classement est accepté dans la chaîne principale lorsqu'il atteint la taille du quorum.

Une suite complète de tests a été développée pour vérifier que le contrat Sharding Manager fonctionne correctement.

Travaux en cours et à venir

Nous travaillons actuellement sur le code suivant:

  • Création d'une structure Shard avec les méthodes nécessaires à la vérification de la disponibilité des données, enregistrement / extraction de classements dans une base ShardDB, etc. Demande Pull # 100
  • Extension des clients soumissionnaires pour qu'ils puissent interagir avec les dernières modifications apportées à la SMC via les liaisons Go. Demande de tirage n ° 111
  • Mettre en œuvre le mécanisme de «preuve de garde» mentionné dans la recherche sur le partage des objets. Numéro 112
  • Stocker localement shard chaindata et permettre aux clients de le reproduire lorsque certaines collations sont demandées via shardp2p. Numéro 109

Première prime fermée

Il y a 25 jours, nous avons lancé une prime avec l'équipe de Gitcoin afin de créer un explorateur frontal pour une chaîne de blocs Ethereum fragmentée. Nos exigences visaient à ce qu'il ressemble à un ethstats.net étendu pour le sharding ou à une interface autonome. Plus précisément, la fonctionnalité comprendrait:

  • La possibilité d'inspecter la charge de transaction sur n nombre de fragments
  • La possibilité de visualiser les interactions entre fragments
  • La possibilité de voir le nombre de nœuds et la répartition des nœuds sur des fragments
  • La possibilité de voir les classements se produisant à chaque période pour chaque fragment
  • La possibilité d'inspecter la taille des chaînes de fragments canoniques

Il y a une semaine, nous avons fermé la prime et attribué 0,31 ETH à @ConnorChristie pour son excellent travail dans ce domaine! Découvrez sa conception ici et notre numéro de Github qui a ouvert la discussion ici.

Page d'accueilÉclat de détailPage de détail de la collation

Annonce d'une nouvelle subvention

Aragon annonce les premiers prix Nest

Nous sommes très honorés d'être acceptés dans le programme de subventions Aragon Nest! Dans le cadre de ce prix, nous avons obtenu 100 000 USD d’ETH et 50 000 USD d’ANT pour la réalisation de nos jalons marquants. Ces subventions et dons nous permettent de contribuer à la communauté, de verser des primes et d'encourager les développeurs open source à participer. Nous offrons donc un grand merci à l'Aragon! Assurez-vous de consulter leur page GitHub et postulez pour Nest si vous êtes un contributeur open source ou une équipe de contributeurs de l’écosystème Ethereum.

Intéressé à contribuer?

Nous sommes toujours à la recherche de développeurs intéressés à nous aider! Si vous connaissez Go ou Solidity et souhaitez contribuer à la pointe de la recherche sur Ethereum, envoyez-nous un message et nous nous ferons un plaisir de vous aider à bord :).

Consultez nos directives de contribution et nos projets ouverts sur Github. Chaque tâche et problème est regroupé dans le jalon de la phase 1 avec un projet spécifique auquel il appartient (tâches liées aux contrats intelligents, tâches de nœud de collecteur, etc.).

Comme toujours, suivez-nous sur Twitter, écrivez-nous ici ou sur notre chat Gitter et dites-nous ce que vous voulez aider - nous avons besoin de toute la collaboration que nous pouvons obtenir!

Références

https://ethresear.ch/t/cryptoeconomic-witnesses/1960

https://ethresear.ch/t/safe-notary-pool-size/1728

https://ethresear.ch/t/cryptoeconomic-signature-aggregation/1659/8

https://ethresear.ch/t/extending-skin-in-the-game-of-notarization-with-proofs-of-custody/1639

Discours officiel de donation d'éther de Prysmatic Labs

0x9B984D5a03980D8dc0a24506c968465424c81DbE

Nom officiel, Prysmatic Labs ENS

prysmatic.eth