Invoice Lightning
Une invoice Lightning est une demande de paiement contenant le montant, le hash de la preimage et la route possible. Encodée BOLT-11 ou BOLT-12. Doit être présentée par le destinataire pour recevoir un paiement. Indispensable au modèle pull du protocole.
Ce qu'on présente pour être payé
Une invoice Lightning est une demande de paiement structurée que le destinataire présente au payeur. Elle contient un payment hash (engagement cryptographique sur un secret), un montant (parfois 0 = open), une description et une expiration. Le payeur scanne l'invoice, son wallet calcule la route et exécute les HTLCs nécessaires.
Deux formats coexistants
BOLT-11 est le format historique, à usage unique, encodé en Bech32 avec le préfixe "lnbc". Standard depuis 2017. BOLT-12 Offer est le format moderne, réutilisable, supportant les blinded paths, avec le préfixe "lno". En adoption depuis 2023.
Pourquoi un payment hash
Le payment hash est SHA-256(preimage), où la preimage est un secret aléatoire choisi par le destinataire. Tant qu'il ne l'a pas révélée, personne ne peut encaisser le paiement. Quand il l'a révélée, elle voyage en arrière à travers la route et débloque chaque HTLC. C'est l'engrenage cryptographique central de Lightning.
La preuve de paiement
Une fois le paiement réussi, le payeur obtient la preimage. C'est sa preuve de paiement : il peut prouver à n'importe qui qu'il a payé l'invoice en dévoilant la preimage qui hashe vers le payment hash. C'est l'équivalent du reçu de carte bancaire, mais cryptographiquement vérifiable.
Les pièges
Quelques précautions classiques s'imposent. Vérifier l'expiration : une invoice expirée ne sera plus acceptée. Vérifier le montant : ne te fie pas à ce que ton wallet affiche, vérifie avant de signer. Vérifier la description : pour t'assurer que tu paies bien ce que tu crois. Pas de rétractation : un paiement Lightning réussi est définitif et non-réversible.
Hodl invoices
Variation : une hodl invoice garde le paiement en attente jusqu'à ce que le destinataire libère manuellement la preimage. Permet l'escrow et les conditional payments. Implémenté par LND, plus rarement utilisé mais puissant pour certains usages avancés.
Termes lies
- BOLT-11BOLT-11 est le format historique des invoices Lightning. Préfixe « lnbc... ». Encodé en Bech32 avec un checksum. Limité à un usage unique et un montant fixé. Remplacé progressivement par BOLT-12.
- BOLT-12 (Offers)BOLT-12 introduit les Offers : des « factures réutilisables » Lightning. Permet recouverts récurrents, demandes statiques, métadonnées riches. Combiné aux blinded paths pour la confidentialité. Implémenté par CLN, LND et Phoenix.
- Payment hashLe payment hash est le hash SHA-256 de la preimage choisie par le destinataire. Inclus dans l'invoice et dans chaque HTLC. La preimage révélée déverrouille le paiement le long de la route. Cœur cryptographique de Lightning.
- 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.