Probing
Le probing envoie un paiement avec un payment hash invalide pour tester la viabilité d'une route. Permet d'auditer ses pairs et le réseau. Coût quasi nul. Outil clé du tuning de nœud.
Définition
Le probing (« sondage ») est une technique Lightning qui consiste à envoyer un faux paiement sur une route afin de tester si elle a la liquidité suffisante, sans qu'aucun bitcoin ne change réellement de mains. Le payeur fabrique un payment_hash aléatoire dont il ne connaît pas la preimage. Le paiement chemine donc jusqu'au destinataire, mais il échoue à la dernière étape, ce qui rembourse l'expéditeur.
L'information précieuse récupérée : où exactement le paiement a échoué.
Pourquoi sonder
Lightning souffre d'un problème structurel : le payeur ne connaît pas la liquidité des canaux intermédiaires. Le graphe public annonce les capacités totales, mais pas les soldes courants. Conséquence : un paiement réel peut échouer en milieu de route. Le probing permet de :
- Tester la viabilité d'une route avant un paiement important
- Cartographier la liquidité des canaux du graphe
- Auditer ses propres canaux (savoir combien on peut envoyer/recevoir)
- Mesurer la santé de pairs spécifiques
Comment ça fonctionne techniquement
- Le payeur calcule un
payment_hashaléatoire (32 octets) dont il ignore la preimage. - Il construit un HTLC vers la route cible.
- Chaque nœud relais accepte le HTLC selon les règles normales.
- Le dernier nœud essaie de matcher le hash avec une invoice connue : aucune correspondance trouvée.
- Il renvoie l'erreur
unknown_payment_hash(ouincorrect_or_unknown_payment_details). - L'erreur remonte la route, tous les HTLC sont annulés.
Si le paiement a échoué en cours de route (insuffisance de liquidité), l'erreur précise quel nœud a refusé et avec quel code.
Cas d'usage
Tuning de canal
Un opérateur peut probing ses propres canaux pour mesurer :
- Inbound capacity réelle
- Outbound capacity disponible
- Liquidité du partenaire
C'est plus précis que les valeurs annoncées dans le gossip.
Vérification avant gros paiement
Avant d'envoyer 0,1 BTC sur LN, on probing à 0,1 BTC sans preimage. Si ça réussit (échec uniquement au dernier saut), la route est viable.
Estimation de fiabilité d'un pair
Probing répété permet de générer des statistiques de succès par pair.
Coût
Le probing est quasi gratuit : pas de paiement réel, donc pas de frais Lightning facturés. Seuls coûts :
- Quelques ms de latence
- Charge réseau marginale
- Risque de griefing : un attaquant peut probing intensivement pour gêner (channel jamming variant)
Limites
1. Information partielle
Une route qui réussit le probing pour 0,01 BTC ne réussira pas forcément pour 1 BTC. Il faut probing avec le bon montant.
2. Information dépassée rapidement
La liquidité change à chaque paiement. Un probing à T n'est plus valable à T+10 minutes si le canal est actif.
3. Considéré semi-malveillant
Certains nœuds détectent les probings systématiques et les pénalisent : refus de canal, taux de frais punitif. Le probing excessif est mal vu socialement.
4. Privacy
Un attaquant qui probing systématiquement le réseau peut cartographier la liquidité entière du graphe — outil de surveillance. C'est l'une des raisons d'être des travaux sur Just-In-Time (JIT) routing et channel jamming protection.
Outils
| Outil | Plateforme | Usage |
|-------|------------|-------|
| lncli probe | LND | Probing manuel |
| lightning-cli paystatus | CLN | Diagnostic |
| balanceofsatoshis | LND wrapper | Probing batch |
| Thunderhub | Web UI | Probing graphique |
Évolutions
- BOLT-12 paths : routes blinded plus difficiles à probing.
- Stuckless payments / PTLC : reduce le besoin de probing.
- Reputation tokens : pénaliser le probing abusif.
À retenir
Le probing est l'outil de diagnostic n°1 sur Lightning. Il transforme un graphe partiellement observable en une cartographie utilisable, et permet aux opérateurs comme aux gros payeurs d'optimiser leur usage. Utilisé avec modération, c'est un outil légitime ; abusé, c'est une nuisance que les protocoles modernes cherchent à limiter.
Termes lies
- PathfindingLe pathfinding est l'algorithme qui calcule la route optimale d'un paiement Lightning. Repose sur le gossip et la connaissance locale du graphe. Compromis entre frais, latence et fiabilité. Difficulté centrale du protocole.
- Lightning NetworkLe Lightning Network est une solution de seconde couche construite sur Bitcoin permettant des paiements instantanes et quasi-gratuits. Il fonctionne via des canaux de paiement entre utilisateurs, avec un reglement final sur la blockchain principale. Ideal pour les micropaiements et les transactions quotidiennes.
Glossaire inspire du dictionnaire de Loic Morel sur Pandul.fr.