Bitcoin : attaque par déformation temporelle - un potentiel risque de sécurité
Le développeur Bitcoin Antoine Poinsot a proposé le 26 mars 2025 une nouvelle proposition d'amélioration visant à corriger plusieurs vulnérabilités et faiblesses qui existent depuis longtemps dans le protocole Bitcoin. Cette proposition de soft fork, appelée "Nettoyage du Grand Consensus", inclut une correction d'une vulnérabilité grave connue sous le nom d'"attaque de distorsion temporelle".
Mécanisme de protection des horodatages de blocs Bitcoin
Avant d'aborder l'attaque par distorsion temporelle, nous devons comprendre les règles actuelles de protection contre la manipulation du temps :
Règle du temps médian passé (MPT) : L'horodatage du bloc doit être postérieur au temps médian des 11 blocs précédents.
Règles de temps de bloc à l'avenir : l'horodatage du bloc ne peut pas être supérieur de plus de 2 heures à la médiane du temps des nœuds pairs.
Ces règles visent à empêcher la manipulation excessive des horodatages des blocs. Cependant, les attaques par distorsion temporelle exploitent une vulnérabilité qui permet de ramener considérablement l'horodatage dans le passé.
L'erreur "presque" de Satoshi Nakamoto
Le cycle d'ajustement de la difficulté du Bitcoin contient 2016 blocs, soit environ deux semaines. Lors du calcul de l'ajustement de la difficulté, le protocole compare la différence de timestamp entre le premier et le dernier bloc dans la fenêtre de 2016 blocs. Cependant, ce calcul présente une petite erreur : il utilise 2016 au lieu de 2015 comme intervalle. Cela entraîne un temps cible supérieur de 0,05 % au temps réel, ce qui signifie que le temps de génération cible du Bitcoin est en réalité de 10 minutes et 0,3 seconde, et non de 10 minutes pile.
Principe de l'attaque par distorsion temporelle
L'attaque par distorsion temporelle a été découverte pour la première fois en 2011, exploitant une erreur de Satoshi Nakamoto dans le calcul de la difficulté. L'attaquant manipule les horodatages des blocs, faisant avancer la blockchain lentement dans le temps, tout en utilisant des horodatages réels pour le dernier bloc de chaque période d'ajustement de difficulté. Cette opération entraîne une diminution de la difficulté après le deuxième cycle d'ajustement, permettant à l'attaquant de créer rapidement des blocs et d'obtenir une grande quantité de Bitcoin.
Impact et faisabilité de l'attaque
Dans des cas extrêmes, cette attaque pourrait entraîner la création de plus de 6 blocs par seconde. Cependant, la mise en œuvre de cette attaque fait face à de nombreux défis, y compris la nécessité de contrôler la majorité de la puissance de calcul, la présence de mineurs honnêtes pouvant limiter l'effet de l'attaque, et le fait que le processus d'attaque soit visible par tous, ce qui pourrait déclencher des réparations d'urgence.
Solution
Pour résoudre les attaques de distorsion temporelle, la proposition de Poinsot suggère de définir une limite sur le temps du premier bloc du nouveau cycle de difficulté. Plus précisément, le timestamp du premier bloc du nouveau cycle ne doit pas être antérieur de plus de 2 heures au temps du dernier bloc du cycle précédent. Cette limite peut efficacement empêcher une manipulation significative de la difficulté, tout en maintenant une flexibilité suffisante pour s'adapter aux variations des conditions du réseau.
Cette solution de réparation réduit au maximum le risque de génération accidentelle de blocs invalides, tout en restant cohérente avec les règles de timestamp des futurs blocs existants. Bien qu'il soit encore permis de réduire légèrement la difficulté d'environ 0,6 % à chaque cycle, cet impact est limité et ne peut pas s'accumuler pour être amplifié.
En mettant en œuvre cette amélioration, le réseau Bitcoin pourra mieux résister aux attaques par distorsion temporelle, augmentant ainsi la sécurité et la stabilité globales du système.
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.
15 J'aime
Récompense
15
4
Partager
Commentaire
0/400
LootboxPhobia
· Il y a 2h
Il y a aussi ce genre d'attaque, ça fait peur.
Voir l'originalRépondre0
alpha_leaker
· Il y a 2h
Encore en train de corriger des bugs, Bitcoin n'est vraiment pas sûr.
Voir l'originalRépondre0
ZkProofPudding
· Il y a 2h
On a l'impression que tout est défaillant, tout est fissuré, vraiment pas rassurant.
Voir l'originalRépondre0
DaoGovernanceOfficer
· Il y a 2h
*sigh* un autre patch de protocole qui ne parvient pas à traiter les métriques de gouvernance essentielles...
Correction de la vulnérabilité de l'attaque par "distorsion du temps" de Bitcoin : nouvelle proposition renforçant les règles de horodatage du bloc.
Bitcoin : attaque par déformation temporelle - un potentiel risque de sécurité
Le développeur Bitcoin Antoine Poinsot a proposé le 26 mars 2025 une nouvelle proposition d'amélioration visant à corriger plusieurs vulnérabilités et faiblesses qui existent depuis longtemps dans le protocole Bitcoin. Cette proposition de soft fork, appelée "Nettoyage du Grand Consensus", inclut une correction d'une vulnérabilité grave connue sous le nom d'"attaque de distorsion temporelle".
Mécanisme de protection des horodatages de blocs Bitcoin
Avant d'aborder l'attaque par distorsion temporelle, nous devons comprendre les règles actuelles de protection contre la manipulation du temps :
Règle du temps médian passé (MPT) : L'horodatage du bloc doit être postérieur au temps médian des 11 blocs précédents.
Règles de temps de bloc à l'avenir : l'horodatage du bloc ne peut pas être supérieur de plus de 2 heures à la médiane du temps des nœuds pairs.
Ces règles visent à empêcher la manipulation excessive des horodatages des blocs. Cependant, les attaques par distorsion temporelle exploitent une vulnérabilité qui permet de ramener considérablement l'horodatage dans le passé.
L'erreur "presque" de Satoshi Nakamoto
Le cycle d'ajustement de la difficulté du Bitcoin contient 2016 blocs, soit environ deux semaines. Lors du calcul de l'ajustement de la difficulté, le protocole compare la différence de timestamp entre le premier et le dernier bloc dans la fenêtre de 2016 blocs. Cependant, ce calcul présente une petite erreur : il utilise 2016 au lieu de 2015 comme intervalle. Cela entraîne un temps cible supérieur de 0,05 % au temps réel, ce qui signifie que le temps de génération cible du Bitcoin est en réalité de 10 minutes et 0,3 seconde, et non de 10 minutes pile.
Principe de l'attaque par distorsion temporelle
L'attaque par distorsion temporelle a été découverte pour la première fois en 2011, exploitant une erreur de Satoshi Nakamoto dans le calcul de la difficulté. L'attaquant manipule les horodatages des blocs, faisant avancer la blockchain lentement dans le temps, tout en utilisant des horodatages réels pour le dernier bloc de chaque période d'ajustement de difficulté. Cette opération entraîne une diminution de la difficulté après le deuxième cycle d'ajustement, permettant à l'attaquant de créer rapidement des blocs et d'obtenir une grande quantité de Bitcoin.
Impact et faisabilité de l'attaque
Dans des cas extrêmes, cette attaque pourrait entraîner la création de plus de 6 blocs par seconde. Cependant, la mise en œuvre de cette attaque fait face à de nombreux défis, y compris la nécessité de contrôler la majorité de la puissance de calcul, la présence de mineurs honnêtes pouvant limiter l'effet de l'attaque, et le fait que le processus d'attaque soit visible par tous, ce qui pourrait déclencher des réparations d'urgence.
Solution
Pour résoudre les attaques de distorsion temporelle, la proposition de Poinsot suggère de définir une limite sur le temps du premier bloc du nouveau cycle de difficulté. Plus précisément, le timestamp du premier bloc du nouveau cycle ne doit pas être antérieur de plus de 2 heures au temps du dernier bloc du cycle précédent. Cette limite peut efficacement empêcher une manipulation significative de la difficulté, tout en maintenant une flexibilité suffisante pour s'adapter aux variations des conditions du réseau.
Cette solution de réparation réduit au maximum le risque de génération accidentelle de blocs invalides, tout en restant cohérente avec les règles de timestamp des futurs blocs existants. Bien qu'il soit encore permis de réduire légèrement la difficulté d'environ 0,6 % à chaque cycle, cet impact est limité et ne peut pas s'accumuler pour être amplifié.
En mettant en œuvre cette amélioration, le réseau Bitcoin pourra mieux résister aux attaques par distorsion temporelle, augmentant ainsi la sécurité et la stabilité globales du système.