Questions sur Lightning Network : connectivité, financement, transactions avec de mauvaises contreparties
Acheteur, détenteur et utilisateur de longue date de Bitcoin (depuis 2015). Absolument aucune expérience avec Lightning Network. J’ai lu quelques tutoriels d’entrée de gamme, mais j’ai encore des questions conceptuelles de base concernant le financement, la capacité, les révocations, etc.
Situation hypothetique
Disons que je dirige un site de jeux d’argent. Toutes les affaires sont menées en BTC. De plus en plus de clients demandent que Lightning Network soit mis à disposition pour faciliter les dépôts et les retraits de fonds rapides et bon marché.
Où puis-je me connecter pour une portée maximale ?
Les tutos semblent toujours montrer deux parties, Bob et Alice. Ils ouvrent un « canal » grâce à une opération de financement. L’exemple ajoute ensuite généralement un tiers (par exemple, Festus) et dit quelque chose du genre « et regardez, Bob peut payer Festus via Alice ».
L’implication semble être que la taille du réseau pourrait devenir énorme, au point que n’importe qui peut payer n’importe qui car bon, chaque utilisateur de Bitcoin est inévitablement connecté par seulement quelques degrés de séparation sur le réseau.
Mais cela ne répond pas vraiment à la question de savoir à qui je devrais, en tant que nouvel utilisateur, me connecter. Je pourrais me connecter à toi, je suppose. Mais peut-être êtes-vous aussi un nouvel utilisateur et n’avez aucune autre connexion. Est-ce que je me connecte à une sorte de hub ? Je suppose que cela fonctionnerait, mais cela ne rend-il pas les choses trop centralisées ?
En tant que propriétaire de site (voir hypothèse ci-dessus), est-il préférable pour moi d’agir en tant que hub et d’ouvrir un canal avec chacun de mes utilisateurs, ce qui signifie que j’aurais des milliers de canaux ouverts ? Ou vaut-il mieux établir une connexion unique avec un mec vraiment populaire et bien connecté ? On dirait ce dernier, mais quel mec? Comment le trouver ?
Dois-je toujours être en ligne à la recherche de tricheurs ?
D’accord, je comprends que mon homologue LN peut essayer de me tromper en diffusant une transaction de règlement d’un état de solde antérieur qui lui est plus avantageux. Et je sais aussi que son règlement de triche TX ne sera pas réglé avant vingt-quatre heures, me laissant le temps de diffuser un TX de « révocation » qui règle tout en ma faveur à la place. C’est ce qui dissuade mon pair de tricher.
Mais cela implique également que mon nœud Lightning doit être opérationnel 24 heures sur 24, 7 jours sur 7, ou du moins jamais hors ligne pendant plus de 24 heures et, de plus, je dois être toujours vigilant pour m’assurer que personne ne triche et exécuter les révocations si elles le sont.. Ces hypothèses sont-elles correctes ? Le logiciel Lightning automatise-t-il le processus de détection de triche pour moi ?
Comment ajouter des fonds à une chaîne existante ?
On ne sait toujours pas comment ajouter des fonds à un canal préexistant. J’ai vu du matériel en ligne indiquant qu’un service tiers doit être payé pour cela ? Je ne peux pas imaginer que c’est correct n’est-ce pas? Cela ne semble pas compatible avec toute la philosophie de LN.
En utilisant mon exemple hypothétique. Disons qu’un client ouvre un canal avec moi et m’envoie 1 BTC. Il parie sur un prochain combat UFC (Ronda Rousey contre Oprah Winfrey). Un pari réussi sur Winfrey paie 15x. Cela signifie que dans le cas improbable même où il gagne, j’ai besoin d’au moins 15 BTC disponibles sur ce canal pour le payer.
Comment ajouter des fonds à la chaîne s’il gagne ? Ou ces 15 BTC doivent-ils être placés dans le canal via la transaction de financement initiale ?
Maintenant, si je sers tous les utilisateurs sur un seul canal, ça va. Mais si chaque utilisateur a sa propre chaîne, je devrais financer chacun avec une énorme quantité de BTC – malgré le fait que 99,99% de mes utilisateurs ne parieront même jamais sur cet événement particulier. Ce serait une utilisation inefficace des fonds. Je suppose qu’il existe un moyen d’ajouter des fonds à une chaîne après le financement initial, mais comment ?
Portefeuilles
J’utilise Win 2019 Server et je dois pouvoir créer des canaux, envoyer des fonds, être informé des fonds entrants, etc. à l’aide d’une API. Quels portefeuilles prennent en charge cela ?
Avec la première couche de Bitcoin, j’ai la possibilité d’exécuter un nœud complet ou de tirer parti d’un service centralisé comme Electrum ? LN a-t-il une situation analogue avec deux styles de portefeuille différents ?