Aller au contenu
AtheronBlockchain
Tous les articles

Des blocs en parallèle : un seul ordre convenu

Une marche à suivre, étape par étape, pour comprendre comment ATON prend des blocs créés en même temps et les place dans un seul ordre que tous les nœuds acceptent, sans jargon.

Par Shawn Wilson, fondateur et chef de la direction

Publié le · 4 min de lecture

Aussi en English · Español · Deutsch · اردو

Des formes abstraites lumineuses placées côte à côte, reliées par des fils de lumière qui se rejoignent en une ligne calme, évoquant des blocs parallèles fusionnés en un seul ordre.

La plupart des gens imaginent une chaîne de blocs comme une seule ligne. Un bloc, puis le suivant, puis le suivant. ATON ne fonctionne pas ainsi, et cet article vous explique ce qui se passe plutôt, une étape à la fois.

Nous avons déjà parlé de cette idée. Ici, nous voulons suivre quelques blocs depuis le moment où ils sont trouvés jusqu’au moment où ils se retrouvent dans un seul ordre convenu, afin que vous voyiez le mécanisme et pas seulement le résumé.

Pourquoi des blocs arrivent en même temps

ATON est une chaîne de blocs publique pour les paiements, minée avec une carte graphique ordinaire grâce à une seule preuve de travail exigeante en mémoire. De nombreux mineurs travaillent en même temps, partout dans le monde. Parfois, deux d’entre eux ou plus trouvent un bloc valide presque au même instant.

Dans une chaîne à ligne unique, un seul de ces blocs peut l’emporter. Les autres sont écartés, et le travail qui les a produits est perdu. ATON les conserve. Des blocs peuvent être créés en même temps, et une règle de type GHOSTDAG les place ensuite dans un seul ordre.

La structure qui en résulte s’appelle un DAG de blocs. Pensez-y comme à une tresse plutôt qu’à une corde. Plusieurs brins courent côte à côte et ne cessent de se croiser.

Étape 1 : chaque bloc renvoie à ce qu’il a vu

Quand un mineur construit un bloc, il ne renvoie pas à un seul parent. Il renvoie à chaque bloc récent qu’il connaît et vers lequel aucun autre bloc ne pointe encore. Ce sont les bouts libres à l’avant de la tresse.

Ainsi, si Alice et Bob trouvent chacun un bloc au même moment, aucun des deux ne connaît le bloc de l’autre. Les deux renvoient au même bloc précédent. Un instant plus tard, Carol apprend l’existence des deux et construit un nouveau bloc qui renvoie à la fois à celui d’Alice et à celui de Bob. Les deux brins se sont de nouveau réunis.

Rien n’est perdu. Le bloc de Carol atteste qu’elle a vu les deux.

Étape 2 : repérer les blocs bien connectés

Maintenant, tous les nœuds détiennent la même tresse, mais une tresse n’est pas une liste. Les paiements ont besoin d’une liste, parce que l’ordre de deux transactions peut décider laquelle compte.

La règle commence par poser une question simple sur chaque bloc : dans quelle mesure est-il connecté au reste ? Un bloc que les mineurs honnêtes ont reçu rapidement est désigné par de nombreux blocs ultérieurs. Il se trouve au cœur de la tresse.

Un bloc qui a été retenu, ou qui a voyagé lentement, a moins de liens. Peu de blocs ultérieurs pointent vers lui, et lui-même ne pointe pas vers beaucoup des blocs créés à peu près au même moment. Il se trouve en périphérie.

La règle répartit les blocs en ces deux groupes. Les blocs bien connectés forment le noyau. Les blocs mal connectés sont tout de même conservés, mais on leur accorde moins de confiance.

Étape 3 : ordonner d’abord le noyau

Une fois le noyau connu, la règle le parcourt des blocs les plus anciens aux plus récents. Quand un bloc renvoie à un bloc antérieur, ce dernier passe en premier. C’est naturel : on ne peut pas voir une chose avant qu’elle existe.

Quand deux blocs ont été créés en même temps et qu’aucun n’a vu l’autre, la règle applique un critère de départage fixe, que chaque nœud applique de la même façon. Comme chaque nœud exécute la même règle sur la même tresse, chaque nœud obtient la même liste.

Les blocs mal connectés sont insérés plus tard que les blocs du noyau qui les entourent.

Étape 4 : se servir de l’ordre pour régler les conflits

C’est ici que l’ordre devient utile pour les paiements. Supposons que quelqu’un tente de dépenser les mêmes pièces deux fois, une fois dans un bloc d’un brin et une fois dans un bloc d’un autre.

Avec une règle de ce type, les deux blocs restent dans le registre, mais seule la transaction qui vient en premier dans l’ordre convenu compte. La transaction conflictuelle, venue après, est ignorée. Le bloc qui la contenait est quand même conservé, et le reste de son contenu compte toujours.

La tresse enregistre tout ce qui a été vu. L’ordre décide de ce qui compte.

En quoi cela vous aide

Si vous minez, moins de vos blocs sont gaspillés quand quelqu’un d’autre en trouve un au même moment. Cela compte davantage quand les cartes graphiques ordinaires sont réparties entre de nombreux petits mineurs plutôt qu’entre quelques gros.

Si vous envoyez un paiement, la chaîne n’a pas à ralentir la production de blocs pour éviter les égalités. Les égalités sont prévues et gérées.

Si vous exploitez un nœud, vous n’avez pas à croire personne sur parole au sujet de l’ordre. Vous pouvez le calculer vous-même à partir des blocs que vous détenez.

Les limites, en toute franchise

[ !NOTE] Rien n’a été lancé. ATON est encore en construction, et les paramètres exacts de la règle d’ordre font partie de ce travail. Nous décrivons ici le mécanisme, pas des chiffres définitifs.

L’ordre ne supprime pas non plus le besoin d’attendre. Un tout nouveau bloc peut encore être réordonné à mesure que d’autres blocs s’empilent par-dessus. Plus un paiement est enfoui profondément dans la tresse, plus il est difficile à déplacer.

Si vous voulez suivre l’évolution du projet, le site d’ATON Blockchain est l’endroit où nous publions ce qui est réglé et ce qui reste ouvert.

Les articles par courriel

Un courriel à chaque nouvel article, dans votre langue. Nous confirmons d’abord votre adresse, et chaque courriel contient un lien de désabonnement.

Aucun pourriel. Désabonnement en un clic.