De la conception à la mise en œuvre : un guide complet de la finalité de la Blockchain

Avancé10/15/2024, 10:45:14 AM
Cet article aborde le concept de finalité dans la blockchain, en analysant comment différents systèmes de blockchain parviennent à la finalité, ainsi que les principes et défis sous-jacents impliqués.

ANALOGIE IRL

Comme c'est la tradition avec mes articles "WTF is...", j'aime commencer par une analogie de la vie réelle pour permettre aux gens de comprendre l'essentiel et de passer à autre chose s'ils ne se soucient pas des détails sous-jacents.

Pour ce sujet, nous utiliserons le séchage du béton avec le temps :

C'est le niveau élevé de ce que signifie "finalité" dans le contexte des blockchains. Tout comme le béton, au fur et à mesure que le temps passe depuis le moment où il est versé (confirmation initiale) jusqu'à sa prise (confirmations multiples), il devient de plus en plus difficile de considérer le bloc initial comme "vrai" jusqu'à ce qu'il soit complètement durci (finalisé). Une fois à ce stade, il est presque impossible.

TLDR souvenez-vous simplement de l'ordre des étapes :

Soumis -> Confirmé -> Finalisé

Si cela vous suffit à considérer cette affaire comme close, je vous invite à aimer l'article et à poursuivre votre journée. Si vous voulez vous plonger dans les détails de la finalité (dans le contexte d'Ethereum), continuez, mon frère.

FINALITY NERD-OUT

D'accord - essayons de construire une structure autour de ce concept et de le comprendre. Heureusement, cela nous donne quelque chose à partir duquel tous les composants entrent en jeu en tant que sous-produit du temps écoulé, nous utiliserons donc cela.

Tout d'abord, complétons nos connaissances avec des définitions.

GLOSSAIRE

Slot (Temps de Bloc) : Vous comprendrez probablement le nom alternatif pour cela : Temps de Bloc. Un slot, ou temps de bloc, est la durée accordée au système pour produire un nouveau bloc de transactions à ajouter à la chaîne canonique actuelle.

Exemple d'emplacements/temps de bloc :

Ethereum - 12 secondes

Base - 2 secondes

  • Solana - 0,4 secondes
  • Confirmation : C'est ce qui se produit lorsque votre transaction a officiellement été ajoutée à un bloc qui a été ajouté à la chaîne actuelle. Elle est désormais "confirmée" en tant que partie du grand livre, et à mesure que des blocs sont ajoutés au vôtre, elle accumule des confirmations supplémentaires.
  • Époque: Une série de 32 slots. Ceci est créé en tant que structure secondaire au sein de la blockchain utilisée pour déléguer des rôles et des responsabilités. Les slots sont utilisés pour construire des blocs tandis que les époques sont utilisées pour la propagation des données, la distribution des récompenses, la sélection des validateurs, etc, etc.
  • Bloc de contrôle : Il s'agit du premier bloc créé dans une époque donnée et utilisé comme point de référence pour solidifier l'historique de la chaîne.

Finalité: Le point où une transaction est considérée comme ajoutée de manière irréversible au registre d'une chaîne donnée. Ce terme n'est pas uniformément utilisé dans toutes les chaînes en ce qui concerne les propriétés techniques, il est donc préférable de ne pas supposer que tout est identique dans tous les contextes. Dans l'écosystème Ethereum, cela est utilisé lorsque les conditions ci-dessous sont remplies:

Ethereum - Lorsque 2 Epochs se sont écoulés (~13min)

Optimistic L2 - Lorsque la fenêtre de fraude est passée (~7j)

  • ZK L2 - En raison des garanties fournies par les preuves de validité, il existe 2 moments de finalité discutables : local (lorsque la preuve est générée sur le L2 [~quelques minutes]) et finalité globale (lorsque la preuve est publiée sur Ethereum et finalisée là-bas [~13min])
  • Réorganisation de blocs (« Reorg ») : Cela se produit lorsque des blocs qui avaient été confirmés comme faisant partie du grand livre, pour une raison ou une autre, ne sont plus considérés comme valides et qu'une nouvelle chaîne a été formée. Cela s'accompagne généralement de sanctions.

et voici une tentative de visualiser tous ces termes dans une seule image pour les rendre un peu plus faciles à comprendre :

COMMENT LA FINALITÉ?

Maintenant que nous avons les éléments utilisés pour déterminer la finalité, comment sont-ils assemblés ? Quelles sont les règles ?

Pour Ethereum

  1. Vote des validateurs - À chaque époque (fenêtre de 32 blocs), les validateurs voteront sur le bloc de point de contrôle de l'époque actuelle et précédente jusqu'à ce que des blocs de point de contrôle spécifiques atteignent une majorité des 2/3 des mises en jeu. $ETH
  2. Points de contrôle justifiés - Une fois qu’un bloc de points de contrôle atteint ce seuil des 2/3, il est considéré comme « justifié »
  3. Lien de supermajorité - Une fois que deux blocs de points de contrôle consécutifs sont a) justifiés et b) liés l'un à l'autre, les blocs inclus dans l'époque avant les époques justifiées maintenant liées deviennent finaux. Ils ne peuvent plus être affectés par une simple réorganisation.

Visualisé

Pour L2s

Eh bien, les L2 sont construits sur Ethereum donc ils sont essentiellement les mêmes, non?

Oui et non, cher lecteur. Rappelez-vous la structure de publication de monPublication précédente sur les Rollups Basés sur Ethereum. L2 sont leurs propres blockchains, oui, mais ils dépendent d'Ethereum pour le règlement final. Cela signifie que la réponse est aussi complexe que les chaînes elles-mêmes.

Ces couches se décomposent en deux types de finalité:

  1. Finalité locale - Il s'agit de la finalité au sein de la L2 elle-même et seulement possible pour les L2 qui exploitent des preuves de validité (alias ZK Rollups). Cela s'explique par le fait que les preuves de validité sont étayées par des mathématiques et que la production de la preuve elle-même signifie qu'elle est correcte. En raison de cela, une fois qu'une ZK L2 produit sa preuve, l'état de la L2 peut être considéré comme finalisé sans avoir à attendre que la preuve soit publiée sur Ethereum et réglée. Notez que cela comporte toujours des risques et des hypothèses de confiance, mais peut être fait avec une certaine confiance en fonction de votre tolérance au risque.
  2. Finalité globale - L'état atteint une fois que L2 a confirmé son état local, produit une preuve (fraude ou validité), a publié cette preuve sur Ethereum et Ethereum, lui aussi, a finalisé le bloc où la preuve a été publiée. Même alors, pour le sous-ensemble optimiste des L2, la possibilité de revenir en arrière persiste jusqu'à ce que la période de défi soit passée. C'est un compromis fait pour réduire le calcul nécessaire à la création de la preuve.

Ainsi, les L2 peuvent avoir un niveau de finalité localisée s'ils sont d'un certain type, sinon ils doivent attendre que l'Ethereum finalise leur preuve de validité publiée (ZK) ou que la fenêtre de contestation soit passée pour les preuves de fraude (Rollups optimistes).

Pour Bitcoin / Preuve de Travail

Celui-ci est en fait assez simple - il n'y a pas de finalité dans l'implémentation spécifique de PoW de Bitcoin. Pour cela, quiconque produit la tête de chaîne la plus lourde (c'est-à-dire produit suffisamment de blocs pour être la chaîne la plus "longue") devient le grand livre canonique. Cela signifie que, bien que ce soit impraticable pour de nombreuses raisons, quelqu'un pourrait produire suffisamment de hachage pour réécrire le dernier jour, la dernière semaine, l'année de l'histoire de Bitcoin.

Cependant, cela reste peu pratique en raison de la quantité considérable de ressources et de temps nécessaires, mais cela permet de distinguer les systèmes et conduit en réalité à quelques types uniques de MEV, tels que les «attaques à longue portée» et le «Blocage» où les mineurs peuvent soit produire (et cacher) un bloc pour ensuite ajouter un bloc ultérieur, soit miner plusieurs blocs d'affilée pour créer et saisir des opportunités de profit uniques.

Visualisé:

POURQUOI LA FINALITÉ ?

Alors, nous savons comment parvenir à la finalité dans la plus grande chaîne de preuve d'enjeu en crypto, mais cela semble être beaucoup de travail - pourquoi le faisons-nous même ?

Eh bien, cela apporte certains avantages:

  1. Sécurité économique - Avoir un point sur lequel le système (et nous) peut regarder en arrière et dire avec une grande confiance qu'il ne changera pas donne aux participants de l'écosystème la confiance d'agir sur «ce qui est vrai». Pensez aux transferts importants et aux prêts. Une fois que vous savez avec certitude que le système ne peut pas être modifié sans une intervention extrême et hors protocole, cela vous donne la confiance d'agir sur cette vérité. C'est pourquoi les ponts attendent généralement un certain nombre de confirmations ou une finalité complète avant de libérer des fonds sur des chaînes secondaires. Ce qui m'amène à...
  2. Règlement plus rapide - Parce qu'il y a un point où les choses deviennent formalisées en permanence, cela signifie que les parties opérant dans l'écosystème ont un temps de règlement maximal qu'elles doivent finalement attendre, alors que dans un système PoW, ce point ne vient jamais et relève uniquement d'un appel de confort personnel.
  3. Réduction des vecteurs d'attaque - Nous avons mentionné la poignée d'opportunités de MEV activées dans les chaînes PoW, mais cela ne résout en fin de compte que le problème de «Rien à perdre» où toute personne agissant malicieusement contre le système a également quelque chose à perdre. Si vous êtes un validateur et que vous essayez de changer des choses qui sont finalisées, vous devriez enfreindre les règles du protocole et donc être sujet à une réduction de votre mise.

CONCLUSION

Pourquoi ai-je couvert la finalité? Je n'en ai aucune idée réelle - j'ai juste entendu dire que cela circulait récemment et j'ai réalisé que c'était un mécanisme souvent utilisé, mais pas vraiment compris des blockchains.

J'espère que vous avez apprécié et rappelez-vous ; il s'agit simplement de vos blocs durcissant comme du béton dans le système et à un certain moment, ils sont solides comme un roc.

Clause de non-responsabilité :

  1. Cet article est repris de [PAIN], Le titre original est [WTF is Finality ?], Tous les droits d’auteur appartiennent à l’auteur original [@0xBreadguy]. S'il y a des objections à cette réimpression, veuillez contacter le Gate Learn et ils s’en occuperont rapidement.
  2. Clause de non-responsabilité: Les points de vue et opinions exprimés dans cet article sont uniquement ceux de l'auteur et ne constituent aucun conseil en matière d'investissement.
  3. Les traductions de l'article dans d'autres langues sont effectuées par l'équipe Gate Learn. Sauf mention contraire, la copie, la distribution ou le plagiat des articles traduits est interdit.

De la conception à la mise en œuvre : un guide complet de la finalité de la Blockchain

Avancé10/15/2024, 10:45:14 AM
Cet article aborde le concept de finalité dans la blockchain, en analysant comment différents systèmes de blockchain parviennent à la finalité, ainsi que les principes et défis sous-jacents impliqués.

ANALOGIE IRL

Comme c'est la tradition avec mes articles "WTF is...", j'aime commencer par une analogie de la vie réelle pour permettre aux gens de comprendre l'essentiel et de passer à autre chose s'ils ne se soucient pas des détails sous-jacents.

Pour ce sujet, nous utiliserons le séchage du béton avec le temps :

C'est le niveau élevé de ce que signifie "finalité" dans le contexte des blockchains. Tout comme le béton, au fur et à mesure que le temps passe depuis le moment où il est versé (confirmation initiale) jusqu'à sa prise (confirmations multiples), il devient de plus en plus difficile de considérer le bloc initial comme "vrai" jusqu'à ce qu'il soit complètement durci (finalisé). Une fois à ce stade, il est presque impossible.

TLDR souvenez-vous simplement de l'ordre des étapes :

Soumis -> Confirmé -> Finalisé

Si cela vous suffit à considérer cette affaire comme close, je vous invite à aimer l'article et à poursuivre votre journée. Si vous voulez vous plonger dans les détails de la finalité (dans le contexte d'Ethereum), continuez, mon frère.

FINALITY NERD-OUT

D'accord - essayons de construire une structure autour de ce concept et de le comprendre. Heureusement, cela nous donne quelque chose à partir duquel tous les composants entrent en jeu en tant que sous-produit du temps écoulé, nous utiliserons donc cela.

Tout d'abord, complétons nos connaissances avec des définitions.

GLOSSAIRE

Slot (Temps de Bloc) : Vous comprendrez probablement le nom alternatif pour cela : Temps de Bloc. Un slot, ou temps de bloc, est la durée accordée au système pour produire un nouveau bloc de transactions à ajouter à la chaîne canonique actuelle.

Exemple d'emplacements/temps de bloc :

Ethereum - 12 secondes

Base - 2 secondes

  • Solana - 0,4 secondes
  • Confirmation : C'est ce qui se produit lorsque votre transaction a officiellement été ajoutée à un bloc qui a été ajouté à la chaîne actuelle. Elle est désormais "confirmée" en tant que partie du grand livre, et à mesure que des blocs sont ajoutés au vôtre, elle accumule des confirmations supplémentaires.
  • Époque: Une série de 32 slots. Ceci est créé en tant que structure secondaire au sein de la blockchain utilisée pour déléguer des rôles et des responsabilités. Les slots sont utilisés pour construire des blocs tandis que les époques sont utilisées pour la propagation des données, la distribution des récompenses, la sélection des validateurs, etc, etc.
  • Bloc de contrôle : Il s'agit du premier bloc créé dans une époque donnée et utilisé comme point de référence pour solidifier l'historique de la chaîne.

Finalité: Le point où une transaction est considérée comme ajoutée de manière irréversible au registre d'une chaîne donnée. Ce terme n'est pas uniformément utilisé dans toutes les chaînes en ce qui concerne les propriétés techniques, il est donc préférable de ne pas supposer que tout est identique dans tous les contextes. Dans l'écosystème Ethereum, cela est utilisé lorsque les conditions ci-dessous sont remplies:

Ethereum - Lorsque 2 Epochs se sont écoulés (~13min)

Optimistic L2 - Lorsque la fenêtre de fraude est passée (~7j)

  • ZK L2 - En raison des garanties fournies par les preuves de validité, il existe 2 moments de finalité discutables : local (lorsque la preuve est générée sur le L2 [~quelques minutes]) et finalité globale (lorsque la preuve est publiée sur Ethereum et finalisée là-bas [~13min])
  • Réorganisation de blocs (« Reorg ») : Cela se produit lorsque des blocs qui avaient été confirmés comme faisant partie du grand livre, pour une raison ou une autre, ne sont plus considérés comme valides et qu'une nouvelle chaîne a été formée. Cela s'accompagne généralement de sanctions.

et voici une tentative de visualiser tous ces termes dans une seule image pour les rendre un peu plus faciles à comprendre :

COMMENT LA FINALITÉ?

Maintenant que nous avons les éléments utilisés pour déterminer la finalité, comment sont-ils assemblés ? Quelles sont les règles ?

Pour Ethereum

  1. Vote des validateurs - À chaque époque (fenêtre de 32 blocs), les validateurs voteront sur le bloc de point de contrôle de l'époque actuelle et précédente jusqu'à ce que des blocs de point de contrôle spécifiques atteignent une majorité des 2/3 des mises en jeu. $ETH
  2. Points de contrôle justifiés - Une fois qu’un bloc de points de contrôle atteint ce seuil des 2/3, il est considéré comme « justifié »
  3. Lien de supermajorité - Une fois que deux blocs de points de contrôle consécutifs sont a) justifiés et b) liés l'un à l'autre, les blocs inclus dans l'époque avant les époques justifiées maintenant liées deviennent finaux. Ils ne peuvent plus être affectés par une simple réorganisation.

Visualisé

Pour L2s

Eh bien, les L2 sont construits sur Ethereum donc ils sont essentiellement les mêmes, non?

Oui et non, cher lecteur. Rappelez-vous la structure de publication de monPublication précédente sur les Rollups Basés sur Ethereum. L2 sont leurs propres blockchains, oui, mais ils dépendent d'Ethereum pour le règlement final. Cela signifie que la réponse est aussi complexe que les chaînes elles-mêmes.

Ces couches se décomposent en deux types de finalité:

  1. Finalité locale - Il s'agit de la finalité au sein de la L2 elle-même et seulement possible pour les L2 qui exploitent des preuves de validité (alias ZK Rollups). Cela s'explique par le fait que les preuves de validité sont étayées par des mathématiques et que la production de la preuve elle-même signifie qu'elle est correcte. En raison de cela, une fois qu'une ZK L2 produit sa preuve, l'état de la L2 peut être considéré comme finalisé sans avoir à attendre que la preuve soit publiée sur Ethereum et réglée. Notez que cela comporte toujours des risques et des hypothèses de confiance, mais peut être fait avec une certaine confiance en fonction de votre tolérance au risque.
  2. Finalité globale - L'état atteint une fois que L2 a confirmé son état local, produit une preuve (fraude ou validité), a publié cette preuve sur Ethereum et Ethereum, lui aussi, a finalisé le bloc où la preuve a été publiée. Même alors, pour le sous-ensemble optimiste des L2, la possibilité de revenir en arrière persiste jusqu'à ce que la période de défi soit passée. C'est un compromis fait pour réduire le calcul nécessaire à la création de la preuve.

Ainsi, les L2 peuvent avoir un niveau de finalité localisée s'ils sont d'un certain type, sinon ils doivent attendre que l'Ethereum finalise leur preuve de validité publiée (ZK) ou que la fenêtre de contestation soit passée pour les preuves de fraude (Rollups optimistes).

Pour Bitcoin / Preuve de Travail

Celui-ci est en fait assez simple - il n'y a pas de finalité dans l'implémentation spécifique de PoW de Bitcoin. Pour cela, quiconque produit la tête de chaîne la plus lourde (c'est-à-dire produit suffisamment de blocs pour être la chaîne la plus "longue") devient le grand livre canonique. Cela signifie que, bien que ce soit impraticable pour de nombreuses raisons, quelqu'un pourrait produire suffisamment de hachage pour réécrire le dernier jour, la dernière semaine, l'année de l'histoire de Bitcoin.

Cependant, cela reste peu pratique en raison de la quantité considérable de ressources et de temps nécessaires, mais cela permet de distinguer les systèmes et conduit en réalité à quelques types uniques de MEV, tels que les «attaques à longue portée» et le «Blocage» où les mineurs peuvent soit produire (et cacher) un bloc pour ensuite ajouter un bloc ultérieur, soit miner plusieurs blocs d'affilée pour créer et saisir des opportunités de profit uniques.

Visualisé:

POURQUOI LA FINALITÉ ?

Alors, nous savons comment parvenir à la finalité dans la plus grande chaîne de preuve d'enjeu en crypto, mais cela semble être beaucoup de travail - pourquoi le faisons-nous même ?

Eh bien, cela apporte certains avantages:

  1. Sécurité économique - Avoir un point sur lequel le système (et nous) peut regarder en arrière et dire avec une grande confiance qu'il ne changera pas donne aux participants de l'écosystème la confiance d'agir sur «ce qui est vrai». Pensez aux transferts importants et aux prêts. Une fois que vous savez avec certitude que le système ne peut pas être modifié sans une intervention extrême et hors protocole, cela vous donne la confiance d'agir sur cette vérité. C'est pourquoi les ponts attendent généralement un certain nombre de confirmations ou une finalité complète avant de libérer des fonds sur des chaînes secondaires. Ce qui m'amène à...
  2. Règlement plus rapide - Parce qu'il y a un point où les choses deviennent formalisées en permanence, cela signifie que les parties opérant dans l'écosystème ont un temps de règlement maximal qu'elles doivent finalement attendre, alors que dans un système PoW, ce point ne vient jamais et relève uniquement d'un appel de confort personnel.
  3. Réduction des vecteurs d'attaque - Nous avons mentionné la poignée d'opportunités de MEV activées dans les chaînes PoW, mais cela ne résout en fin de compte que le problème de «Rien à perdre» où toute personne agissant malicieusement contre le système a également quelque chose à perdre. Si vous êtes un validateur et que vous essayez de changer des choses qui sont finalisées, vous devriez enfreindre les règles du protocole et donc être sujet à une réduction de votre mise.

CONCLUSION

Pourquoi ai-je couvert la finalité? Je n'en ai aucune idée réelle - j'ai juste entendu dire que cela circulait récemment et j'ai réalisé que c'était un mécanisme souvent utilisé, mais pas vraiment compris des blockchains.

J'espère que vous avez apprécié et rappelez-vous ; il s'agit simplement de vos blocs durcissant comme du béton dans le système et à un certain moment, ils sont solides comme un roc.

Clause de non-responsabilité :

  1. Cet article est repris de [PAIN], Le titre original est [WTF is Finality ?], Tous les droits d’auteur appartiennent à l’auteur original [@0xBreadguy]. S'il y a des objections à cette réimpression, veuillez contacter le Gate Learn et ils s’en occuperont rapidement.
  2. Clause de non-responsabilité: Les points de vue et opinions exprimés dans cet article sont uniquement ceux de l'auteur et ne constituent aucun conseil en matière d'investissement.
  3. Les traductions de l'article dans d'autres langues sont effectuées par l'équipe Gate Learn. Sauf mention contraire, la copie, la distribution ou le plagiat des articles traduits est interdit.
Lancez-vous
Inscrivez-vous et obtenez un bon de
100$
!