ASMAP
ASMAP regroupe les peers d'un nœud par AS (Autonomous System) pour limiter les attaques par éclipse via BGP. Bitcoin Core l'utilise depuis 0.20.
La logique des AS sur Internet
Internet n'est pas un nuage uniforme : c'est un réseau de Systèmes Autonomes (Autonomous Systems, AS) identifiés par des numéros (ASN). Chaque AS appartient à un opérateur (Free, OVH, Cloudflare, Amazon) et annonce des préfixes IP via le protocole BGP. Si tous les peers Bitcoin d'un nœud appartiennent au même AS — ou pire, au même fournisseur d'hébergement — un attaquant qui contrôle ce point peut isoler le nœud du réseau.
Le concept ASMAP
ASMAP est un fichier de mapping IP → ASN que Bitcoin Core charge au démarrage. Il permet au nœud de classer ses connexions sortantes par AS et d'imposer une diversité minimale. Concrètement, Bitcoin Core ouvre 8 connexions sortantes ; ASMAP s'assure qu'elles atterrissent dans 8 AS différents, plutôt que de tomber statistiquement sur quelques gros fournisseurs.
Historique et activation
- 2020 : intégration dans Bitcoin Core 0.20 (PR #16702 par Pieter Wuille).
- Optionnel par défaut : il faut lancer
bitcoind -asmap=<file>; un fichier est fourni danscontrib/asmap. - Mises à jour : la table d'AS bouge ; Bitcoin Core distribue un fichier mis à jour à chaque release majeure.
Quelles attaques cela contre
ASMAP atténue deux attaques connues :
- Eclipse attack (Heilman et al. 2015) : l'attaquant submerge un nœud avec ses propres peers pour l'isoler.
- Erebus attack (Tran et al. 2020) : exploitation d'un AS de transit pour contrôler tous les paquets entre une victime et le réseau.
La diversité par AS rend ces attaques significativement plus coûteuses : il faut compromettre plusieurs réseaux indépendants au lieu d'un seul.
Limites et compléments
ASMAP ne protège pas si l'attaquant possède réellement plusieurs AS, ou s'il exploite un AS de tier-1 (Cogent, Lumen). Il se combine bien avec Tor (-onlynet=onion), CJDNS, et le routing I2P, qui retirent la couche IP du problème.
À retenir
ASMAP est un exemple typique d'amélioration silencieuse de Bitcoin Core : invisible à l'utilisateur final, mais structurelle pour la résilience du réseau. Activer ASMAP coûte zéro effort et améliore concrètement la sécurité d'un nœud.
Termes lies
- BGP hijackingLe BGP hijacking est une manipulation des routes Internet (BGP) pour intercepter du trafic. Risque pour Bitcoin (eclipse + Erebus). Mitigé par Tor, ASMAP, P2P v2.
- Attaque ErebusErebus est une attaque par éclipse exploitant la topologie BGP. Un attaquant contrôlant un AS upstream peut isoler des nœuds. Mitigée par ASMAP.
- Attaque par éclipseUne attaque par éclipse isole un nœud du reste du réseau en occupant tous ses peers. Permet ensuite de lui montrer une fausse chaîne. Mitigée par diversité des peers, ASMAP, anchor connections.
Glossaire inspire du dictionnaire de Loic Morel sur Pandul.fr.