Suite à mon cours "Blockchains publiques et privées" à l'Université de Lille, j'ai posé la question suivante:
"Pourquoi est-ce que le bloc de genèse représente une vulnérabilité pour la chaîne et quelle a été la solution de Satoshi Nakamoto pour palier à cette vulnérabilité pour la blockchain « bitcoin » ?"
Le format de l'évaluation demandait à l'étudiant de poser d'abord la question à ChatGPT et de reproduire sa réponse avant de faire une analyse critique. Vous pouvez lire la réponse ici.
Comme le remarque @itharagaian dans les commentaires, la réponse de ChatGPT est absurde. Le but de l'exercice était de voir si l'étudiant se rendait compte que la réponse fournie par l'IA ne fait pas de sens; ça n'a pas été le cas, et j'ai donc voulu fournir la réponse critique que j'attendais.
Vu la taille que la réponse a pris, et le fait qu'elle a une valeur en soi, j'ai opté pour en faire un post à part entière plutôt qu'un commentaire.
L'ancrage dans la réalité afin d'éviter les copiées cachées
La faiblesse du bloc de genèse est liée au principe fondamental des "incitations" et à la distribution de ces incitations (les "coins" créés à chaque bloc).
La valeur monétaire que tout marché libre accorde à ces "coins" est influencée par la distribution observée (grâce à la transparence). Puisque la distribution des "coins" a une influence sur le contrôle (la gouvernance) de la chaîne, une distribution équitable est associée à une plus importante valeur monétaire. A contrario, une distribution très inégalitaire, où le(s) promoteur(s) de la blockchain détiennent une grande quantité du "coin" dès le début aura tendance à influencer négativement et à faire diminuer la valeur unitaire du coin.
Un promoteur malhonnête pourrait vouloir donner l'impression que la distribution est égalitaire pour encourager une plus forte valeur unitaire du "coin", mais pouvoir toutefois mobiliser le moment venu une grande quantité de "coins" qu'il se serait attribué à lui même "en secret".
Sur une blockchain publique il ne peut pas y avoir de "secret", mais puisque le promoteur malhonnête contrôle le block de genèse, il peut faire tourner en parallèle deux blockchains, une publique et une cachée.
Il doit commencer à opérer en premier la blockchain cachée où il est le seul à créer des blocs et récupère donc toutes les récompenses. En se basant sur le terme "mining" issu de bitcoin, on parle d'un "pre-mine" caché, ou d'un "stealth mine" ou "ninja mine".
Après un certain temps, il annonce et lance la copie publique tardive, avec un block de genèse en tout point identique. Les gens intéressés commencent à opérer des noeuds, valider des blocs et obtenir des récompenses. Ils peuvent observer une distribution équitable.
Le promoteur malhonnête opérant lui aussi un noeud dans la blockchain publique, il dispose de toutes le transactions. Il peut les dupliquer et continuer à maintenir sa copie cachée en cohérence (même si les "hash" ne seront pas identiques des hash de la copie publique tardive).
Puisque dans les protocoles inspirés de bitcoin c'est la blockchain la plus longue qui est considérée être authentique, le promoteur malhonnête pourra choisir à tout moment de remplacer la copie publique tardive (plus courte) par sa blockchain cachée, qu'il avait démarré et opéré tout seul à l'avance. Tous les noeuds vont automatiquement abandonner la copie tardive, plus courte, en faveur de la blockchain frauduleuse, plus longue, ayant une distribution très inégale.
Le fait que les blockchains sont toutes les deux cohérentes est dû à la vulnérabilité du bloc de genèse (qui ne "pointe" par définition pas sur un bloc précédent).
Le promoteur malhonnête disposera d'une certaine fenêtre de temps pour transformer son "ninja mine" en monnaie "fiat".
Pour palier cette vulnérabilité (théorique) et prouver qu'il n'avait pas caché l'existence d'une deuxième blockchain "bitcoin" qu'il aurait fait tourner plusieurs mois avant le 9 janvier 2009 quand il annonce le début de bitcoin sur les forums, Satoshi Nakamoto inclut dans le bloc de genèse le texte "The Times 03/Jan/2009 Chancellor on brink of second bailout for banks".
Il connecte ainsi sa base de données de type blockchain au monde réel. Il prouve que cette blockchain n'aurait pas pu être démarrée avant le 3 janvier 2009 car si elle l'avait été, elle n'aurait pas pu inclure le texte du journal "Times of London" du 3 janvier.
Conclusion
Pour écarter tout soupçon que le promoteur d'une blockchain pourrait être secrètement en train, depuis plusieurs mois, d'opérer une "copie cachée" plus longue d'une nouvelle blockchain, le bloc de genèse doit être ancré dans le monde réel, typiquement en incluant une référence à un évènement précis dans un journal de grande circulation. Pour bitcoin, Satoshi Nakamoto avait choisit d'inclure dans le bloc de genèse de bitcoin la manchette du journal Times du 3 janvier 2009, qui n'était pas anodine, car faisant également allusion à la crise financière.
Merci
!BBH
!ALIVE
Your post has been manually reviewed for curation.
Principality of Bastion's Tavern - Our Leit Motiv? Let's Grow Together.
Discord | ECU | Site | Twitch | Donations | Paypal via Streamlabs
One click delegations: 500 HP | 1500 HP | 5000 HP |25000 HP | 100000 HP
Or delegate the amount you decide to @hive-143869, using peakd's wallet, for example.
!LOLZ
lolztoken.com
But it folded.
Credit: reddit
@itharagaian, I sent you an $LOLZ on behalf of invest-time
(5/10)
Farm LOLZ tokens when you Delegate Hive or Hive Tokens.
Click to delegate: 10 - 20 - 50 - 100 HP
Congratulations @sorin.cristescu! You have completed the following achievement on the Hive blockchain And have been rewarded with New badge(s)
Your next target is to reach 300 posts.
You can view your badges on your board and compare yourself to others in the Ranking
If you no longer want to receive notifications, reply to this comment with the word
STOP
Check out our last posts:
!LOLZ
lolztoken.com
You could say he had a change of heart.
Credit: reddit
@sorin.cristescu, I sent you an $LOLZ on behalf of invest-time
(4/10)
Delegate Hive Tokens to Farm $LOLZ and earn 110% Rewards. Learn more.