Glossaire / Lightning et couche 2
Watchtower
- Qu'est-ce qu'une watchtower ?
- Une watchtower est un service que vous payez ou sollicitez pour surveiller la blockchain pendant que votre nœud Lightning est hors ligne, prêt à sanctionner un partenaire de canal qui publie un ancien solde.
Les canaux Lightning restent honnêtes parce que chaque côté peut prendre la totalité du solde du canal si l'autre diffuse un état périmé, mais seulement si quelqu'un s'en aperçoit à temps. Une watchtower est ce quelqu'un : elle détient un indice de 16 octets et un blob chiffré qu'elle ne peut pas lire avant que la transaction correspondante n'apparaisse on-chain. Si votre nœud tourne sur un ordinateur portable qui se met en veille, vous en voulez une.
Comment cela fonctionne
Une watchtower ne détient jamais vos clés et n'apprend jamais quel canal elle protège avant que quelque chose ne tourne mal.
Chaque fois que le solde de votre canal change, votre nœud construit la transaction de sanction pour l'état qu'il est sur le point de révoquer, la chiffre et remet à la tour deux choses : un indice, qui correspond aux 16 premiers octets du txid de la transaction d'engagement révoquée, et le texte chiffré. La tour stocke des blobs de taille fixe et scanne chaque bloc à la recherche d'une transaction dont le txid commence par l'un de ses indices. Rien d'autre. Quand une correspondance apparaît, la tour dérive la clé de déchiffrement à partir de ce même txid, extrait les instructions de balayage, ne signe rien de nouveau elle-même et diffuse la transaction de sanction terminée. Les bitcoins récupérés arrivent à une adresse que votre portefeuille a choisie à l'avance.
Deux limites valent la peine d'être connues avant de s'appuyer sur une tour. Dans lnd, une session de tour accepte jusqu'à 1024 sauvegardes avant que le client n'en ouvre une autre, et la transaction de justice est assemblée à un taux de frais par défaut de 10 sat/octet, que vous pouvez augmenter avec le réglage wtclient.sweep-fee-rate. La seconde limite est la couverture : les tours lnd sauvegardent les sorties to_local et to_remote d'un engagement révoqué, pas les sorties des paiements encore en vol, donc engager une tour réduit votre exposition plutôt que de l'effacer.
Où le voir
Les watchtowers apparaissent dans la configuration des logiciels de nœud, pas dans les applications que la plupart des gens utilisent pour envoyer des sats.
En exécutant lnd, vous ajoutez une tour avec sa clé publique et son hôte, et vous pouvez en exploiter une pour des amis sur le port 9911, qui est le port par défaut. Chaque tour déployée est une tour altruiste : elle restitue tout ce qu'elle récupère moins les frais de minage au lieu de prélever une commission, parce que la version payante du protocole a été spécifiée mais jamais terminée. Les applications Lightning dépositaires n'exposent rien de tout cela, et la plupart des portefeuilles mobiles non plus, puisque leurs canaux sont gérés par un fournisseur dont les propres machines ne dorment jamais.
La version honnête pour quelqu'un qui veut surtout acheter et conserver : vous n'en avez probablement pas besoin. Vous en avez besoin si vous exploitez un nœud de routage, ou si vous laissez un solde important dans des canaux sur un ordinateur qui finit enfermé dans un tiroir pendant des semaines. Si Lightning est une application mobile qui contient de l'argent de poche, la perte à prévoir est celle du téléphone qui tombe dans une rivière, pas celle d'un pair qui triche.
Watchtower vs nœud de routage
Une watchtower défend des canaux, tandis qu'un nœud de routage achemine les paiements d'autres personnes contre des frais, et les deux tâches ne partagent rien d'autre qu'une machine. Un nœud de routage reste en ligne parce qu'être hors ligne lui coûte des revenus, ce qui explique justement pourquoi les opérateurs de routage sérieux engagent des tours plutôt que d'en être une. Vous pouvez exécuter les deux sur une seule machine. Elles répondent à des questions opposées : comment continuer à gagner, et comment éviter d'être volé pendant que je ne regarde pas.