Fermer

mars 13, 2019

Les initiés d'Ethereum refusent à une seule machine de stocker une copie de sa blockchain



La dernière fourchette d'Ethereum a été (finalement) fructueuse, mais elle a eu des conséquences inattendues: la plus grande communauté de crypto-monnaies a appris l'existence de ses "grands nœuds effrayants" et a immédiatement paniqué. ] Le fournisseur d’infrastructure Blockchain BlockCypher a récemment publié sa version des événements menant à la mise à niveau de Constantinople du mois dernier

. Elle détaille sa quête pour redémarrer une machine spéciale dédiée ( archive node) utilisé pour enregistrer tous les « états » (paramètres) Ethereum ETH a pris dans son histoire.

À un niveau supérieur, les nœuds d’archive stockent des instantanés Ethereum. Non seulement un enregistrement de toutes les transactions traitées, mais également une carte complète de la chaine de blocs complète à chaque ajout d'un bloc. Ils diffèrent des nœuds complets, qui ne concernent que les transactions, pas les États.

Selon le blog de BlockCypher, le redémarrage des nœuds d'archives est extrêmement difficile – à tel point que personne d'autre ne se soucie réellement de les gérer, ce que l'entreprise pourrait faire. présenter un risque pour la sécurité.

Après avoir examiné toutes les solutions envisageables pour ajouter l’état de Trie à notre état d’Ethereum, nous avons demandé de l’aide [Ethereum co-founder Vitalik Buterin]. Son premier commentaire s’est adressé à nous: «oh, vous êtes l’un des rares à exploiter l’un de ces gros nœuds effrayants.» Nous lui avons demandé s’il connaissait un tiers utilisant un «nœud effrayant» pour voir si nous pouvions synchroniser avec eux. Il ne connaissait personne, pas même la fondation Ethereum conserve une copie archivistique complète de la chaîne Ethereum. Nous étions de retour [one]: nous avons recommencé la synchronisation complète, cette fois avec l'état de Trie.

Il a ensuite déclaré une leçon apprise: BlockCypher pourrait être le seul à conserver une «histoire complète des transactions Ethereum. «Cela pourrait poser problème, notamment dans les cas où la blockchain est attaquée.

Mais selon les initiés de Ethereum, Hard Fork a parlé, les préoccupations de BlockCypher ne représentent pas nécessairement la vraie nature du réseau, car les nœuds d'archives n'ont pas

Les nœuds d’archives n’ont «aucun impact sur le modèle de sécurité ou de confiance d’Ethereum»

L’écosystème d’Ethereum repose sur Infura une entreprise d’infrastructures de type blockchain soutenue par ConsenSys. Les participants paient Infura pour exécuter en leur nom des processus gourmands en ressources, associés notamment au déploiement d'applications sur le réseau.

Le cofondateur d'Infura, E.G. Galano a déclaré à Hard Fork que les nœuds d'archivage ne sont nécessaires que dans certaines circonstances. Ils permettent notamment de vérifier l’état d’un compte Ethereum à n’importe quelle hauteur de bloc. À part cette utilisation spécifique, il affirme qu'il n'est pas vraiment nécessaire de les conserver.

«Par exemple, si vous souhaitez connaître le solde Ether d'un compte au bloc 4 000 000, vous devez exécuter et interroger une archive. nœud », a expliqué Galano. «Ils dépendent du cas d’utilisation et n’ont aucune incidence sur le modèle de sécurité ou de confiance de la blockchain.»

Pour être clair: les nœuds d’archive d’Ethereum ne sont pas équivalents aux nœuds complets. Un nœud complet stocke l'historique des transactions. Un nœud d’archive stocke cette information, ainsi que des données supplémentaires relatives à l’état d’Ethereum.

Galano indique que les nœuds complets propagent exactement la même information sur Ethereum en tant que nœuds d’archive. Dans ce cas, le «label d'archive» signifie simplement qu'il calcule et stocke des données supplémentaires dérivées de chaînes de blocs afin d'interroger plus efficacement les informations.

Martin Holst Swende, responsable de la sécurité pour la fondation Ethereum a déclaré à Hard Fork que, du point de vue du réseau les noeuds d'archive n'améliorent pas davantage la robustesse du réseau qu'un noeud complet (ou synchronisé rapidement).

«Ce sont des noeuds complets qui sont la clé du maintien et de la synchronisation de l'Ethereum. blockchain, y compris toutes les transactions et les transitions d’état », a déclaré Swende. "Un" nœud complet "est un nœud qui a effectué une synchronisation rapide ou une synchronisation dite complète. Si le nœud stocke en outre un instantané de chaque état à chaque bloc, il est communément appelé «nœud d'archivage». »

Il a ensuite confirmé les trois types de nœuds Ethereum (synchronisation rapide, synchronisation complète et archive) gardent toutes les données nécessaires pour relire (ou restaurer) tous les événements de la chaîne, pas seulement les nœuds d’archive.

Les seules données stockées par les nœuds d’archive (et non par les autres) sont l’historique complet des états Ethereum, qui peuvent être dérivé en utilisant des données stockées dans d'autres nœuds de toute façon.

OK – mais qui exécute des nœuds d'archive?

Hard Fork s'est entretenu avec Parity Technologies une jeune entreprise qui construit l'infrastructure Ethereum, afin de confirmer la prévalence réelle des noeuds d'archives d'Ethereum

Tout comme Infura et la Ethereum Foundation, le chef de la technologie de Parity, Fredrik Harrysson n'est pas tout à fait convaincu par les affirmations de BlockCypher.

«Ce n'est certainement pas vrai qu'il n'y a qu'un seul nœud avec un enregistrement complet de l'historique des transactions d'Ethereum, nous avons généralement un nœud d'archive exécuté en interne à [Parity]bien que il n'y en a vraiment pas besoin », a déclaré Harrysson.

Galano d'Infura a pris le parti de Harrysson. “BlockCypher n'est pas le seul nœud d'archive en cours d'exécution. Nous en exploitons beaucoup, à l'instar d'autres fournisseurs d'API et d'infrastructure », a-t-il déclaré à Hard Fork. «Je ne connais pas le nombre de bases Ethereum, mais elles en ont au moins quelques-unes pour leur propre usage.»

La fondation Ethereum a également déclaré à Hard Fork qu'elle conservait plusieurs nœuds d'archivage, malgré leur inutilité. être. "À l'heure actuelle, nous exécutons trois paires de tests (six machines), deux en synchronisation rapide, deux en synchronisation complète et deux en mode archive", a déclaré Swende.

Si vous voulez parler à la sécurité, l'essentiel est le nœud complet

Le noeud du blog de BlockCypher était qu'il avait fallu plus de deux semaines pour «redémarrer» leur version d'Ethereum stockée par leur nœud d'archivage. Il a également souligné que «l’état» d’Ethereum était très différent des autres chaînes de blocs, en ce sens qu’il ne pouvait pas être restauré à l’aide d’une méthode de sauvegarde traditionnelle.

Galano a suggéré que le problème posé par BlockCypher était un manque de procédure de sauvegarde et de restauration fiable. Il a déclaré que le processus correct impliquait la création d'une copie de sauvegarde et d'une copie en utilisant ultérieurement cette copie pour restaurer l'état. Cela, at-il insisté, aurait dû préserver l'intégrité de la «sauvegarde» d'origine.

«Tout le monde fait des erreurs et nous avons déjà rencontré des problèmes similaires plus tôt dans la vie d'Infura. Mon problème avec ce billet de blog n’est pas qu’il dit que l’exécution d’un nœud d’archive nécessite beaucoup de ressources, c’est vrai », a admis Galano. «Mon problème est que si on vous fait confiance pour faire fonctionner une infrastructure en tant que service et effectuer un post-mortem, assumez la responsabilité de vos échecs et ne blâmez pas le protocole que vos utilisateurs s'attendent à ce que vous compreniez mieux qu'eux. Le nombre total de nœuds complets est essentiellement ce qui compte pour Ethereum, pas le nombre de nœuds d’archive. Les chiffres actuels indiquent que le réseau comprend près de 12 000 nœuds complets .

«Un nombre raisonnable de nœuds dans la limite inférieure est discutable – essentiellement si une partie de confiance avait et avait servi toute l'histoire, tout irait bien, mais nous nous en remettrions à une partie centralisée qui ne disparaîtrait pas, ce qui n'est heureusement pas le cas ici ", a conclu Harrysson.

Les nœuds d'archivage ne sont peut-être pas considérés comme des exigences strictes pour qu'Ethereum fonctionne de manière sécurisée, mais il s'avère qu'ils ne le sont pas. pas aussi rares qu’ils en ont l’air même malgré leur apparente absence d’utilité.

Le saviez-vous? Hard Fork a sa propre scène à TNW2019 notre conférence technique à Amsterdam. Check it out .

Publié le 13 mars 2019 – 16:50 UTC
                                




Source link