La correction de la vulnérabilité de l'attaque par distorsion du temps du protocole Bitcoin pourrait entraîner une mise à jour majeure de l'algorithme de Difficulté de reciblage.
Analyse des vulnérabilités d'attaque de torsion temporelle dans le protocole Bitcoin
Le 26 mars 2025, les développeurs de Bitcoin ont proposé une nouvelle proposition de soft fork visant à corriger plusieurs vulnérabilités et faiblesses persistantes dans le protocole Bitcoin. L'une des vulnérabilités les plus graves est appelée "attaque de distorsion temporelle", qui est le sujet que cet article va explorer en profondeur.
Mécanisme de protection des horodatages des blocs Bitcoin
Avant de discuter des attaques par distorsion temporelle, nous devons comprendre les règles de protection contre la manipulation du temps dans le réseau Bitcoin actuel :
Règle du temps médian passé (MPT) : l'horodatage du bloc doit être postérieur au temps médian des onze blocs précédents.
Règles futures sur le temps de bloc : Le timestamp du bloc ne peut pas être en avance de plus de 2 heures par rapport à la médiane du temps des nœuds du réseau. La différence maximale autorisée entre le temps des nœuds et l'horloge système locale est de 90 minutes.
Les règles MPT empêchent que les horodatages de blocs soient trop rétroactifs, tandis que les règles des blocs futurs limitent les horodatages excessivement avancés. Il est à noter qu'il n'est pas possible de mettre en œuvre un mécanisme similaire aux règles des blocs futurs pour empêcher complètement les horodatages passés, car cela pourrait affecter le processus de synchronisation initial de la blockchain. Les attaques par distorsion temporelle exploitent précisément la possibilité de falsifier des horodatages anciens.
Erreurs mineures dans l'algorithme d'ajustement de la difficulté
Le cycle d'ajustement de la difficulté du Bitcoin contient 2016 blocs, ce qui représente environ deux semaines selon un temps cible de bloc de 10 minutes. Lors du calcul de l'ajustement de la difficulté d'extraction, le protocole calcule la différence de timestamp entre le premier et le dernier bloc de la fenêtre de 2016 blocs. Cette fenêtre contient en réalité 2015 intervalles de blocs (2016 moins 1). Par conséquent, le temps cible théoriquement utilisé devrait être de 60 secondes × 10 minutes × 2015 intervalles = 1 209 000 secondes.
Cependant, le protocole Bitcoin utilise le nombre 2016 dans ses calculs. 60 secondes × 10 minutes × 2016 = 1 209 600 secondes. Cela entraîne un temps cible supérieur de 0,05 % au temps réellement nécessaire. En d'autres termes, l'intervalle cible réel des blocs Bitcoin n'est pas de 10 minutes, mais de 10 minutes et 0,3 seconde.
Cette petite différence n'est pas significative dans le fonctionnement réel. En fait, depuis la création de Bitcoin, l'intervalle moyen entre les blocs est resté d'environ 9 minutes et 36 secondes, bien en dessous de 10 minutes. Cela est principalement dû à la croissance continue de la puissance de calcul du réseau depuis 2009. C'est pour cette raison que le dernier événement de réduction de moitié a été avancé à avril 2024, au lieu de janvier 2025 comme prévu initialement.
Principe de l'attaque par distorsion temporelle
L'attaque par distorsion temporelle a été découverte pour la première fois vers 2011, exploitant une vulnérabilité dans le calcul de la difficulté. L'attaquant manipule les horodatages des blocs pour influencer l'ajustement de la difficulté, afin de réduire la difficulté de minage.
Les étapes de l'attaque sont les suivantes :
Pour la plupart des blocs, l'attaquant définit l'horodatage à seulement une seconde avant le bloc précédent.
Afin de faire avancer le temps aussi lentement que possible, l'attaquant peut maintenir le même horodatage pour 6 blocs consécutifs, puis augmenter de 1 seconde pour le 7ème bloc, et ainsi de suite.
À la fin de chaque cycle d'ajustement de la difficulté, l'attaquant fixe l'horodatage à l'heure du monde réel.
Le timestamp du premier bloc du prochain cycle de difficulté est alors réglé en arrière, 1 seconde avant l'avant-dernier bloc du cycle précédent.
Cette opération est conforme aux règles MPT, car une seule valeur aberrante n'affecte pas la médiane de 11 blocs. De cette manière, le temps de la blockchain sera progressivement en retard par rapport au temps réel, entraînant une réduction de la difficulté. Les attaquants peuvent rapidement créer un grand nombre de blocs après une forte baisse de la difficulté, obtenant ainsi une grande quantité de Bitcoin.
Faisabilité et défis de l'attaque
Bien que cette attaque soit théoriquement destructrice, sa mise en œuvre présente certains défis :
Il peut être nécessaire de contrôler la majorité de la puissance de calcul du réseau.
La présence de mineurs honnêtes augmente la difficulté des attaques.
Les règles MTP et les horodatages honnêtes limiteront le degré de rétroaction des horodatages malveillants.
Si un mineur honnête génère le premier bloc de n'importe quel cycle d'ajustement de difficulté, l'attaque de ce cycle échouera.
Le processus d'attaque est visible publiquement et pourrait déclencher une correction d'urgence par soft fork.
Solutions potentielles
Il existe plusieurs méthodes possibles pour corriger cette vulnérabilité :
Modifier l'algorithme d'ajustement de difficulté, calculer l'intervalle de temps entre différentes fenêtres de blocs de 2016, et corriger complètement l'erreur "une de moins". Mais cela pourrait nécessiter un hard fork.
Annuler la règle MTP, exigeant que le temps avance toujours dans chaque bloc. Mais cela pourrait entraîner un blocage du temps dans un avenir trop lointain.
Introduction de nouvelles règles : exige que le temps du premier bloc du nouveau cycle de difficulté ne soit pas antérieur à un moment spécifique avant le dernier bloc du cycle précédent. La plage de temps actuellement discutée va de 10 minutes à 2 heures.
Dans la dernière proposition, les développeurs sont enclins à adopter une limite de 2 heures. Cette période ne représente que 0,6 % du temps cible du cycle d'ajustement de la difficulté, ce qui peut efficacement limiter l'espace de manipulation de la difficulté.
Conclusion
L'attaque par déformation temporelle révèle une vulnérabilité potentielle de sécurité dans le protocole Bitcoin. Bien que la mise en œuvre de cette attaque soit confrontée à de nombreux défis dans la réalité, elle nous rappelle la nécessité de rester attentifs et d'améliorer la sécurité des technologies blockchain. En introduisant de nouvelles règles de timestamp, la communauté Bitcoin s'efforce d'éliminer cette vulnérabilité, renforçant ainsi la stabilité et la sécurité du réseau.
Cette page peut inclure du contenu de tiers fourni à des fins d'information uniquement. Gate ne garantit ni l'exactitude ni la validité de ces contenus, n’endosse pas les opinions exprimées, et ne fournit aucun conseil financier ou professionnel à travers ces informations. Voir la section Avertissement pour plus de détails.
23 J'aime
Récompense
23
5
Partager
Commentaire
0/400
NFTArchaeologis
· 07-11 18:01
Comme des artefacts électroniques d'un autre monde, enregistrant les pas des Blocs et les traces de l'évolution intelligente...
Voir l'originalRépondre0
LootboxPhobia
· 07-11 09:28
les failles corrigées, la hausse sera stable
Voir l'originalRépondre0
TheShibaWhisperer
· 07-11 09:27
Tout le monde sait que c'est une grande mise à niveau, c'est déjà fait.
Voir l'originalRépondre0
ChainWanderingPoet
· 07-11 09:23
Ce n'est pas le moment de modifier l'algorithme de difficulté ? On dirait qu'il va encore y avoir des bouleversements~
Voir l'originalRépondre0
SingleForYears
· 07-11 09:17
Cette foutue faille a mis tant d'années à être corrigée.
La correction de la vulnérabilité de l'attaque par distorsion du temps du protocole Bitcoin pourrait entraîner une mise à jour majeure de l'algorithme de Difficulté de reciblage.
Analyse des vulnérabilités d'attaque de torsion temporelle dans le protocole Bitcoin
Le 26 mars 2025, les développeurs de Bitcoin ont proposé une nouvelle proposition de soft fork visant à corriger plusieurs vulnérabilités et faiblesses persistantes dans le protocole Bitcoin. L'une des vulnérabilités les plus graves est appelée "attaque de distorsion temporelle", qui est le sujet que cet article va explorer en profondeur.
Mécanisme de protection des horodatages des blocs Bitcoin
Avant de discuter des attaques par distorsion temporelle, nous devons comprendre les règles de protection contre la manipulation du temps dans le réseau Bitcoin actuel :
Règle du temps médian passé (MPT) : l'horodatage du bloc doit être postérieur au temps médian des onze blocs précédents.
Règles futures sur le temps de bloc : Le timestamp du bloc ne peut pas être en avance de plus de 2 heures par rapport à la médiane du temps des nœuds du réseau. La différence maximale autorisée entre le temps des nœuds et l'horloge système locale est de 90 minutes.
Les règles MPT empêchent que les horodatages de blocs soient trop rétroactifs, tandis que les règles des blocs futurs limitent les horodatages excessivement avancés. Il est à noter qu'il n'est pas possible de mettre en œuvre un mécanisme similaire aux règles des blocs futurs pour empêcher complètement les horodatages passés, car cela pourrait affecter le processus de synchronisation initial de la blockchain. Les attaques par distorsion temporelle exploitent précisément la possibilité de falsifier des horodatages anciens.
Erreurs mineures dans l'algorithme d'ajustement de la difficulté
Le cycle d'ajustement de la difficulté du Bitcoin contient 2016 blocs, ce qui représente environ deux semaines selon un temps cible de bloc de 10 minutes. Lors du calcul de l'ajustement de la difficulté d'extraction, le protocole calcule la différence de timestamp entre le premier et le dernier bloc de la fenêtre de 2016 blocs. Cette fenêtre contient en réalité 2015 intervalles de blocs (2016 moins 1). Par conséquent, le temps cible théoriquement utilisé devrait être de 60 secondes × 10 minutes × 2015 intervalles = 1 209 000 secondes.
Cependant, le protocole Bitcoin utilise le nombre 2016 dans ses calculs. 60 secondes × 10 minutes × 2016 = 1 209 600 secondes. Cela entraîne un temps cible supérieur de 0,05 % au temps réellement nécessaire. En d'autres termes, l'intervalle cible réel des blocs Bitcoin n'est pas de 10 minutes, mais de 10 minutes et 0,3 seconde.
Cette petite différence n'est pas significative dans le fonctionnement réel. En fait, depuis la création de Bitcoin, l'intervalle moyen entre les blocs est resté d'environ 9 minutes et 36 secondes, bien en dessous de 10 minutes. Cela est principalement dû à la croissance continue de la puissance de calcul du réseau depuis 2009. C'est pour cette raison que le dernier événement de réduction de moitié a été avancé à avril 2024, au lieu de janvier 2025 comme prévu initialement.
Principe de l'attaque par distorsion temporelle
L'attaque par distorsion temporelle a été découverte pour la première fois vers 2011, exploitant une vulnérabilité dans le calcul de la difficulté. L'attaquant manipule les horodatages des blocs pour influencer l'ajustement de la difficulté, afin de réduire la difficulté de minage.
Les étapes de l'attaque sont les suivantes :
Cette opération est conforme aux règles MPT, car une seule valeur aberrante n'affecte pas la médiane de 11 blocs. De cette manière, le temps de la blockchain sera progressivement en retard par rapport au temps réel, entraînant une réduction de la difficulté. Les attaquants peuvent rapidement créer un grand nombre de blocs après une forte baisse de la difficulté, obtenant ainsi une grande quantité de Bitcoin.
Faisabilité et défis de l'attaque
Bien que cette attaque soit théoriquement destructrice, sa mise en œuvre présente certains défis :
Solutions potentielles
Il existe plusieurs méthodes possibles pour corriger cette vulnérabilité :
Modifier l'algorithme d'ajustement de difficulté, calculer l'intervalle de temps entre différentes fenêtres de blocs de 2016, et corriger complètement l'erreur "une de moins". Mais cela pourrait nécessiter un hard fork.
Annuler la règle MTP, exigeant que le temps avance toujours dans chaque bloc. Mais cela pourrait entraîner un blocage du temps dans un avenir trop lointain.
Introduction de nouvelles règles : exige que le temps du premier bloc du nouveau cycle de difficulté ne soit pas antérieur à un moment spécifique avant le dernier bloc du cycle précédent. La plage de temps actuellement discutée va de 10 minutes à 2 heures.
Dans la dernière proposition, les développeurs sont enclins à adopter une limite de 2 heures. Cette période ne représente que 0,6 % du temps cible du cycle d'ajustement de la difficulté, ce qui peut efficacement limiter l'espace de manipulation de la difficulté.
Conclusion
L'attaque par déformation temporelle révèle une vulnérabilité potentielle de sécurité dans le protocole Bitcoin. Bien que la mise en œuvre de cette attaque soit confrontée à de nombreux défis dans la réalité, elle nous rappelle la nécessité de rester attentifs et d'améliorer la sécurité des technologies blockchain. En introduisant de nouvelles règles de timestamp, la communauté Bitcoin s'efforce d'éliminer cette vulnérabilité, renforçant ainsi la stabilité et la sécurité du réseau.