Depuis sa conception, Bitcoin a toujours eu comme vocation une utilisation monétaire. Satoshi Nakamoto l'avait d'ailleurs clairement explicité dans le whitepaper désormais iconique. Dans ce dernier, Satoshi définit Bitcoin comme étant un système de monnaie électronique de pair-à-pair.
Cependant, le roi des crypto monnaies fait face à un problème de taille : sa limite de 7 transactions par secondes. C'est ici qu'intervient le Lightning Network, une surcouche de Bitcoin permettant des paiements pair à pair quasi instantanés et des frais de transactions extrêmement bas.
Problèmes de scalabilité sur Bitcoin
Problématique de bande passante
Depuis la création du premier bloc constituant la blockchain Bitcoin en 2011, beaucoup de choses ont évoluées. À travers le temps, les capacités de scalabilité de cette dernière ont commencé à montrer leurs limites. En effet, les caractéristiques techniques de Bitcoin démontrent qu'il serait difficilement possible de se servir de Bitcoin comme un réseau de paiement à grande échelle.
Avant de comprendre en quoi ces caractéristiques sont limitantes, il est bon de rappeler comment Bitcoin fonctionne au niveau de ses transactions. Pour faire simple, Bitcoin est constitué de blocs contenant les transactions se déroulant sur son réseau. La capacité de traitement de ces transactions est limitée par deux choses : le temps moyen de création des blocs (10 minutes), et par la taille maximale des blocs, qui est de 1 mégaoctet. Ces deux éléments ont donc une incidence sur la bande passante du réseau. Résultat, le réseau Bitcoin est limité à 7 transactions par secondes.
Problématique de frais
Revenons rapidement sur le concept de création des blocs. Comme cité, le temps moyen de création de blocs sur Bitcoin est d'environ 10 minutes. Cependant, ce temps moyen dépend de l'usage du réseau. Lorsque l'usage du réseau reste raisonnablement bas, cela ne pose pas de soucis. Les transactions sont validées par les mineurs (Proof of Work) et intègrent donc le bloc suivant. Mais que se passe-t-il en cas d'accroissement considérable de l'usage du réseau ?
Lorsque le réseau Bitcoin connaît une période plus agitée, le nombre de transactions survenant sur ce dernier peut augmenter de manière significative. De ce fait, la limite des blocs évoquée est atteinte plus rapidement et les blocs deviennent donc saturés. Pour rappel, chaque transaction réalisée est accompagnée de ses frais. Dans ce cadre de réseau fortement utilisé, les mineurs, dont le but est de maximiser leurs profits, vont donc privilégier les paiements de frais les plus élevés.
Par simple mécanisme d'offre et demande, les frais de transactions vont donc considérablement augmenter. Les individus ayant moins de moyens pour payer des frais élevés, quant à eux, verront également le temps de confirmation de leurs transactions largement augmenter. Vous l'aurez donc compris, Bitcoin ne peut s'adapter à une croissance trop élevée des transactions opérant sur son réseau. Ce problème d'ajustement à la demande fait référence à la scalabilité du réseau.
Origine du Lightning Network
Ces problèmes de scalabilité ont été sujet de nombreuses discussions au sein de la communauté Bitcoin. De multiples solutions ont été proposées par de différents membres de cette dernière. Parmi elles, il y a le cas de la mise à jour SegWit.
SegWit, ou Segregated Witness, est une mise à jour du protocole Bitcoin qui sépare les signatures de transaction des données de transaction pour augmenter la capacité de la blockchain et améliorer plusieurs aspects de son fonctionnement, notamment la malleabilité des transactions.
D'autres initiatives prises ont été beaucoup plus drastiques : c'est le cas de Bitcoin Cash (BCH). Suite aux problèmes de scalabilité, certaines personnes ont stipulé que le problème se trouvait tout simplement dans la capacité des blocs eux-mêmes. C'est suite à ce constat qu'est né le fork Bitcoin Cash, augmentant la taille des blocs de 1 Mégabyte à 8 Mb. Aujourd'hui, la taille est même passée à 32 Mb.
L'histoire nous montre que les partisans de la mise à jour SegWit ont gagné la bataille. L'implémentation de SegWit a notamment permis le développement du Lightning Network, la solution de scalabilité la plus viable actuellement sur Bitcoin.
Lancement du Lightning Network
Le Lightning Network a été proposé en 2015 par deux chercheurs, Thaddeus Dryja et Joseph Poon, dans un article intitulé “The Bitcoin Lightning Network“. Le résumé de l'article décrit un protocole off-chain composé de canaux de paiement. Dans ces canaux de paiement, deux différentes parties peuvent s'échanger de la valeur sans encombrer le réseau principal, puisque ces canaux existent en dehors de la blockchain. Le Lightning Network est donc une surcouche de Bitcoin, aussi appelé layer 2.
En 2016, Dryja et Poon ont fondé Lightning Labs, une entreprise dédiée au développement du Lightning Network. Lightning Labs a rendu le protocole compatible avec Bitcoin, notamment grâce à l'application de la mise à jour SegWit évoquée un peu plus haut, réalisée en août 2017.
En 2018, Lightning Labs a finalement lancé une version bêta de son implémentation du Lightning Network dans le mainnet Bitcoin, et depuis, le réseau est complètement opérationnel.
Fonctionnement du Lightning Network
Canaux de paiement bidirectionnels
Vous avez probablement entendu cette phrase de la part des détracteurs de Bitcoin “oui, mais je ne peux pas payer mon café avec des Bitcoins !”. Avec le Lightning Network, cela devient possible ! Intéressons-nous à : comment fonctionne plus précisément ce fameux réseau.
Comme évoqué plus tôt, le Lightning Network est basé sur des canaux de paiement bidirectionnels. Pour créer un canal de paiement, les deux parties vont déposer une certaine quantité de Bitcoins sur un compte commun. Lors de l'ouverture de ce canal, ces dernières vont publier une transaction sur la blockchain indiquant combien de Bitcoins ont été déposés, et par qui. Les fonds mentionnés sont donc mis sous séquestre sur le réseau principal. La signature des deux parties est nécessaire pour bouger les fonds, assurant un contrôle conjoint.
Arthur et Mike peuvent désormais s'échanger des biens et services en Bitcoins grâce au Lightning Network ! Vu que les paiements n'ont pas lieu sur la blockchain principale, ces derniers peuvent s'échanger leurs Bitcoins à frais minimes. Il leur est cependant impossible d'échanger plus que ce qui n'a été stocké dans le compte commun, à savoir 0.02 BTC dans notre exemple.
Arthur et Mike peuvent à tout moment décider de clôturer le compte. Dans ce cas, ces derniers fermeront le compte d'un accord commun en publiant une dernière transaction sur le réseau Bitcoin. Cette transaction est dite transaction de fermeture. Arthur et Mike récupèreront donc leurs fonds initiaux déposés dans le compte commun.
Réseau de canaux de paiement
Il serait redondant et fastidieux pour Arthur de créer un canal de paiement avec chaque personne avec laquelle il veut échanger. L'idée de réseau de canaux de paiement a donc été mise en place. Ce réseau permet un paiement entre deux personnes qui n'ont pas de canal de paiement bidirectionnel direct. À la place, il y aura une interconnexion grâce à un canal de paiement existant avec une autre personne.
Supposons qu'Arthur veut réaliser un paiement à Sophie. Il n'a cependant créé aucun canal de paiement avec cette dernière. Néanmoins, Sophie a un canal de paiement avec Mike. Arthur va donc effectuer le paiement à Mike, qui le transfèrera ensuite à Sophie.
Comme vous le constatez ici, Mike sert d'intermédiaire. Mike pourrait choisir de devenir un nœud Lightning en facilitant le routage des transactions. Le routage représente tout simplement la route qu'empruntent les transactions dans le réseau. En possédant un nœud, Mike prélèverait des frais et gagnerait des Satoshi à chaque transaction effectuée. Il contribuerait également au Lightning Network en facilitant les transactions. Notons que cela n'impliquerait en rien un quelconque contrôle de la part de Mike dans le réseau.
Avantages du Lightning Network
L'avantage premier et évident du Lightning Network se trouve au niveau des transactions. Grâce au Lightning Network, les transactions sont plus rapides et moins chères, permettant des micropaiements impossibles à effectuer jusqu'alors. Sans le réseau Lightning, les utilisateurs devraient payer des frais élevés pour une simple transaction et attendre une heure ou plus pour qu'elle soit validée.
Les transactions sont également bien plus confidentielles grâce au réseau. Comme mentionné plus haut, les transactions sont réalisées off-chain. Il n'est donc pas possible de tracer ou suivre les transactions sur la chaîne principale.
Le réseau Lightning bénéficie également de la sécurité de Bitcoin. En effet, le réseau est une deuxième couche de Bitcoin, donc toujours connecté à celui-ci. Les utilisateurs peuvent ainsi choisir la blockchain principale pour les transactions plus importantes et passer sur le Lightning Network pour les plus petites sans se soucier de la sécurité. Pour citer Yorick de Mombynes, le Lightning Network serait votre petit portefeuille quotidien, là où Bitcoin serait un coffre-fort contenant toutes vos économies.
Inconvénients du Lightning Network
Afin d'interagir avec le réseau, il faut disposer au préalable d'un wallet Lightning. Ce wallet doit naturellement être alimenté en fonds, et pour ce faire, il faut d'abord passer par une transaction on-chain. Cet approvisionnement en fonds doit être réalisé régulièrement au fur et à mesure des dépenses. Ces transactions on-chain sont donc soumises aux problèmes évoqués en début d'article. En outre, il est nécessaire d'être connecté au réseau pour recevoir un paiement, par souci de sécurité.
Des doutes ont également été émis sur la centralisation du réseau. Rappelez-vous de la notion de routage évoquée dans la section dédiée au réseau de canaux de paiement. Supposons qu'un certain nombre de personnes décident d'ouvrir beaucoup de canaux de paiement leur appartenant, en y maintenant beaucoup de liquidités. De manière logique, énormément de transactions passeraient par ces derniers dans le réseau entier, vu la liquidité disponible. Ce groupe de personnes pourrait alors contrôler les transactions passantes ou encore facturer des frais aberrants.
Envie d'en appendre plus sur le Lightning Network et commencer à l'utiliser ? 👉 Formation (gratuite) à Lightning Network
Conclusion
Le Lightning Network est donc une technologie extrêmement prometteuse contribuant fortement au futur de Bitcoin. Bitcoin a pour vocation de se démocratiser et d'avoir une réelle utilité chez un grand nombre de personnes. Il était donc impératif de résoudre ce problème de scalabilité afin d'exploiter le plein potentiel de Bitcoin.
Les habitants de plusieurs pays en voie de développement tels que le Salvador ou le Nigeria utilisent régulièrement le réseau, attestant de sa bonne mise en pratique. Le futur du réseau Lightning pourrait, tout comme Bitcoin, révolutionner le monde financier de demain.