Faire évoluer les blockchains en toute sécurité
La solution Nym Mixnet au problème des attaques par divulgation sélective

Partager
Les mixnets tels que celui de Nym peuvent contribuer à résoudre ce problème en empêchant les attaques ciblant le consensus de la chaîne.
Le problème de sécurité lié à la mise à l'échelle
les blockchains sont des registres permanents et publics de transactions qui ne peuvent pas être altérés par des tiers. Pour que les nouvelles transactions soient vérifiées (par exemple, afin de s'assurer qu'une pièce n'est pas dépensée deux fois), ce registre complet (contenu dans des blocs) doit être constamment mis à jour et vérifié. C’est là que résident deux problèmes non résolus pour la technologie blockchain :
- Comment une blockchain peut-elle évoluer sans solliciter excessivement les ressources des vérificateurs, qui doivent utiliser leur propre bande passante et leurs propres ressources pour vérifier les transactions de la chaîne commune ?
- Les moyens plus efficaces de vérification des données se font-ils au détriment de la sécurité de la chaîne ?
Mustafa Al-Bassam, cofondateur de Celestia et chercheur en sécurité informatique, analyse le problème de la manière suivante : à mesure que la taille des blocs augmente, l’exécution de « nœuds complets » pour la vérification de la disponibilité des données devient de plus en plus gourmande en ressources. L’introduction des comités et des nœuds légers constitue une alternative plus efficace, mais ceux-ci peuvent être vulnérables à une attaque réseau spécifique connue sous le nom de divulgations sélectives.
L'équipe de Nym travaille en étroite collaboration avec Celestia afin d'étudier comment le Noise Generating Mixnet pourrait ajouter une couche d'anonymisation au processus de vérification de la blockchain afin d'offrir une protection contre cette attaque spécifique. Comme nous le verrons, cela impliquerait un mode d’échantillonnage de la disponibilité des données non reliaables.
Avant d'esquisser la solution de Nym, examinons d'abord la nature technique du problème de scalabilité des blockchains sans recourir à des nœuds complets, et comment les solutions existantes exposent les blockchains à des attaques par divulgation sélective.
Vérification de la disponibilité des données
La disponibilité des données désigne la garantie que toutes les données contenues dans un bloc de la blockchain ont été correctement publiées et sont accessibles lorsque le réseau en a besoin. Cela garantit que toutes les informations nécessaires relatives à un bloc sont disponibles pour que les nœuds puissent les télécharger et les vérifier, afin que le réseau puisse valider l’exactitude et l’exhaustivité des transactions et de l’état du bloc.
Dans les systèmes de blockchain, la vérification de la disponibilité des données est cruciale pour empêcher des acteurs malveillants de dissimuler ou de retenir certaines parties des données d’un bloc tout en continuant à prétendre que ce bloc est valide. Sans disponibilité des données, un bloc pourrait être ajouté à la chaîne avec des données manquantes ou incomplètes, ce qui pourrait entraîner des transactions invalides, des risques de sécurité et un état incohérent sur l'ensemble du réseau.
Les blockchains traditionnelles exigent que les utilisateurs (exécutant des nœuds complets) vérifient toutes les données en synchronisant l'intégralité de la chaîne. Mais garantir la disponibilité des données peut s'avérer difficile, d’autant plus que la taille des blocs augmente.
Des techniques telles que l’échantillonnage de disponibilité des données permettent aux nœuds légers de vérifier la disponibilité des données sans télécharger l’intégralité du bloc, ce qui rend la vérification de la disponibilité des données globalement plus efficace. Les blockchains modernes adoptent cette approche pour vérifier la disponibilité des données en utilisant moins de ressources. Celestia est l’exemple phare de l’utilisation de la disponibilité des données pour alimenter toutes les chaînes modernes.
Mécanismes de mise à l'échelle, sécurisés et non sécurisés
Il existe plusieurs façons de procéder à la vérification de la disponibilité des données avec différents niveaux de sécurité :
Nœuds complets (sécurité maximale)
Les nœuds complets vérifient toutes les données en téléchargeant l'intégralité du réseau afin de garantir une sécurité maximale en rejetant les blocs incomplets. Cette solution de base devient toutefois de plus en plus inefficace à mesure que la taille des blocs augmente. Après tout, ce travail de vérification nécessite des ressources physiques et financières.
Aucune garantie de disponibilité des données (sécurité nulle)
Il n’y a aucune garantie que les données soient disponibles, seulement un engagement (à l’instar des URI IPFS). Cela peut s’avérer suffisant pour des cas d’utilisation tels que les NFT, où la sécurité n’est pas une exigence, mais ce n’est certainement pas une solution pour la plupart des transactions sur la chaîne impliquant des enjeux réels.
Comité de disponibilité des données
Grâce à une majorité honnête, une commission spéciale garantit la disponibilité des données, conciliant ainsi disponibilité des données et performances.
Comité sur la disponibilité des données et la sécurité crypto-économique
Cette méthode est également confrontée au même problème d’évolutivité, car les membres du comité doivent faire face à des surcoûts croissants en termes de données pour effectuer leur travail de vérification. Pour remédier à cela, les comités peuvent également bénéficier d’« incitations crypto-économiques », c’est-à-dire se voir attribuer des jetons proportionnellement au travail de vérification effectué.
Les comités peuvent également être sanctionnés (« slashés » ou « suspendus ») en cas de manquement à l’honnêteté, ce qui renforce la sécurité globale. Cela fonctionne lorsque le comité fait partie du mécanisme de consensus de la chaîne.
Nœuds légers
L'introduction de nœuds légers dans ce cadre peut également permettre d’effectuer des vérifications de disponibilité des données, réduisant ainsi davantage les besoins en ressources. Il existe deux façons de procéder :
- Échantillonnage des données sans minorité honnête de nœuds légers : Les nœuds légers utilisent des techniques d’échantillonnage pour vérifier les données sans télécharger le bloc entier, mais ils ne peuvent pas garantir une récupération complète des données si certaines d’entre elles sont manquantes. Cela repose sur le comité de disponibilité des données et les interfaces d'échantillonnage.
- Échantillonnage des données disponibles avec une minorité honnête de nœuds légers : s’il existe une minorité de nœuds légers honnêtes, ceux-ci peuvent reconstruire un bloc si certaines données sont dissimulées pour renforcer la sécurité. Notez qu’un réseau synchrone est nécessaire pour que les nœuds puissent partager efficacement des données.
Échantillonnage de la disponibilité des données non liables
Ce niveau avancé empêche les attaques ciblées (telles que les divulgations sélectives de parts, que nous aborderons ensuite) en rendant les requêtes provenant des nœuds légers non associables et uniformément aléatoires. Cela nécessiterait des avancées supplémentaires dans les technologies d’anonymisation, et c’est là que la solution de Nym entre en jeu.
Mais tout d’abord, qu’est-ce qui rend exactement ces solutions antérieures inadéquates et vulnérables ?
Le problème : les attaques par divulgation sélective
Une attaque par divulgation sélective est un type d’attaque visant la disponibilité des données, dans laquelle un adversaire malveillant tente de convaincre un nœud (ou plusieurs nœuds) que les données d’un bloc sont entièrement disponibles alors qu’en réalité, une partie de celles-ci est dissimulée. Cela rend de fait le bloc incomplet ou irrécupérable.
L’objectif de l’attaquant est de manipuler le processus de vérification en répondant de manière sélective aux requêtes concernant les données de bloc dans un réseau peer-to-peer. Au final, cela rompt le consensus, provoque une bifurcation de la chaîne et compromet les transactions réelles ainsi que la confiance générale.
Voici donc comment cela fonctionne, d’après les informations actualisées.
Aperçu de l'attaque
L'attaque comporte deux volets simultanés :
- L’adversaire retient suffisamment de parts de données du bloc pour que celui-ci ne puisse pas être reconstruit par le réseau, rendant ainsi le bloc indisponible.
- Parallèlement, l’adversaire répond de manière sélective aux requêtes des nœuds légers cibles afin qu’ils croient que le bloc est disponible.
Mécanisme de l'attaque
Le réseau s'appuie sur l’échantillonnage de disponibilité des données (DAS), dans le cadre duquel les nœuds légers demandent des échantillons aléatoires de données de blocs à d’autres nœuds afin de vérifier leur disponibilité.
- Lors d’une attaque par divulgation sélective, l’adversaire identifie une partie des données du bloc à retenir, s’assurant ainsi que le bloc ne puisse pas être reconstitué.
- Cependant, l’adversaire répond de manière sélective aux requêtes des nœuds honnêtes, tels que les clients légers, en fournissant des données issues des parts qui n’ont pas été retenues. Cela donne l'impression erronée que le bloc est entièrement disponible.
Défis pour les nœuds honnêtes
- Étant donné que les nœuds malveillants sont impossibles à distinguer des nœuds honnêtes et répondent correctement lorsqu’on les interroge, ils ne peuvent pas être mis sur liste noire à moins d’être détectés.
- Les nœuds honnêtes envoient des requêtes d’échantillonnage, et les réponses de l’adversaire semblent valides car les données dissimulées sont masquées aux requêtes spécifiques des nœuds honnêtes.
Deux solutions
- Une contre-mesure suggérée consiste à ajouter une couche d’anonymisation où la source de chaque requête échantillon ne peut pas être reliée au client (nœud léger) et où les requêtes sont traitées dans un ordre aléatoire à travers le réseau. Cela empêche l'adversaire de cibler des nœuds spécifiques par le biais d'une divulgation sélective.
- Une autre approche consiste à s’assurer que chaque nœud effectue un nombre suffisant de requêtes (ce qui augmente les chances de détecter des données dissimulées), ou à s’appuyer sur un nombre de nœuds suffisamment important pour couvrir les parts manquantes.
Résultats de la simulation
- Si un client effectue un petit nombre de requêtes (par exemple, 15), la probabilité d’une attaque réussie est relativement élevée (~0,0133) — l’adversaire pourrait piéger le client après environ 75 tentatives.
- À mesure que le nombre de requêtes par client augmente (par exemple, jusqu’à 50 requêtes), la probabilité de réussite de l’attaque chute considérablement (jusqu’à près de 0).
- De même, cibler davantage de clients augmente le taux de réussite de l’attaque, mais cette probabilité diminue à mesure que le nombre de requêtes augmente.
Résumé du problème
L'attaque par divulgation sélective manipule l'échantillonnage de la disponibilité des données en révélant de manière sélective des données à des nœuds spécifiques, les convainquant ainsi que le bloc est entièrement disponible. Les contre-mesures consistent à utiliser (1) des techniques d'anonymisation et (2) à s'assurer que les clients effectuent suffisamment de requêtes aléatoires pour détecter les données manquantes.
Solutions possibles étudiées
Dans une « Évaluation des réseaux privés pour Celestia », des chercheurs ont analysé différentes solutions possibles pour ajouter une couche d’anonymat à la blockchain de Celestia. Solutions possibles pour un réseau privé :
- Un réseau superposé Tor avec Snowflake pour masquer le trafic Tor à l’aide de WebRTC et empêcher l’écoute clandestine
- Mixnet, comme avec Loopix de Nym, pour l’anonymisation du trafic
- Tolérances de latence qui implémentent des délais aléatoires dans le trafic afin de désynchroniser les requêtes des clients
- Trafic de couverture ou trafic factice pour dissimuler les véritables schémas de requêtes
- L'utilisation de VPN pour une protection supplémentaire
Ces solutions présentent chacune des avantages et des inconvénients (par exemple, en termes de latence potentielle).
Au-delà des avantages et des nombreux problèmes posés par un réseau superposé Tor, il est important de noter que bon nombre de ces solutions fondamentales sont des techniques réseau (par exemple, le trafic de couverture et les délais aléatoires) déjà utilisées par le réseau Mixnet Nym. L'équipe principale de Nym a donc décidé de mener une étude de R&D pour déterminer ce que Nym pourrait faire pour aider Celestia et d’autres à offrir une expérience blockchain plus respectueuse de la vie privée.
Solution d’échantillonnage anonyme de Nym
Nym Technologies propose d’intégrer son infrastructure à des réseaux modulaires, en exploitant le Mixnet Nym comme couche d’anonymisation pour contrer les attaques par divulgation sélective grâce au Private Data Availability Sampling (P-DAS).
P-DAS permet d’effectuer des requêtes via le Nym Mixnet, en dissociant la requête de son auteur, ce qui garantit que ce dernier ne peut pas être ciblé. Cette méthode offre une approche sécurisée et respectueuse de la vie privée pour l'échantillonnage de la disponibilité des données, permettant aux nœuds de vérifier la disponibilité des données sans s'exposer à des attaques malveillantes.
Une intégration à Nym Mixnet pourrait offrir plusieurs avantages clés :
- Un module d'échantillonnage de disponibilité des données anonymisées compatible avec le Mixnet Nym, garantissant une vérification des données respectueuse de la vie privée
- Prévention des attaques par divulgation sélective grâce à l'acheminement du trafic chiffré via le réseau Mixnet Nym, ce qui masque l'activité des utilisateurs tout en préservant l'intégrité des données à l'aide de techniques telles que le trafic de couverture, le mélange et l'obfuscation temporelle
- Optimisation des performances via des simulations visant à déterminer les paramètres idéaux du Mixnet pour trouver le juste équilibre entre performances et sécurité
L’intégration de Mixnet renforcerait la sécurité des données pour les réseaux modulaires, les rendant plus résistants à la manipulation tout en protégeant la vie privée des utilisateurs. Les travaux de recherche de Nym se poursuivront afin d’offrir une protection robuste dans le cadre d’un avenir modulaire.
Restez à l'écoute pour d'autres actualités sur le projet !
Nym's Noise Generating Mixnet
Sécurité de la blockchain : FAQ
Le routage Mixnet masque l’identité de l’auteur de la requête et de celui à qui elle s’adresse : même si des explorateurs de blocs ou des contrats intelligents surveillent les modèles d’accès RPC, les métadonnées restent impossibles à relier dans le modèle de Nym.
Oui — les validateurs et les votants du DAO peuvent soumettre des propositions, des votes ou des transactions de mise via le Mixnet afin d'empêcher tout lien entre l'activité du portefeuille et les actions de gouvernance.
Un certain délai est induit par le routage aléatoire, mais pour de nombreux cas d’utilisation de la blockchain — où la gouvernance ou la confidentialité sont importantes —, il s’agit d’un compromis acceptable pour garantir l’impossibilité d’établir des liens.
Les nœuds physiques Nym pris en charge via les modèles DePIN augmentent la capacité de bande passante et la couverture géographique, ce qui permet d’absorber d’importantes charges de travail tout en préservant la décentralisation.
À propos des auteurs

Casey Ford, PhD
Responsable de la communicationTable des matières
Continuer à lire...

L'anonymat réel est possible : NymVPN accepte maintenant les paiements ZEC blindés
Obtenez NymVPN avec des paiements anonymes via Zcash

NymVPN accepte maintenant le Litecoin (LTC)
Payer pour le VPN le plus privé au monde avec LTC

