Bitcoin Lightning Network

The Lightning Network (LN) har tatt noen betydelige fremskritt gjennom hele 2018. Evaluering av hvor langt Bitcoins andre lag har kommet siden lanseringen, avslører noen imponerende utvikling og en betydelig økning i adopsjon. Med for tiden mer enn 18.000 åpne kanaler og nesten 487 BTC totalt innenfor disse kanalene, er LN klar til å utvide seg videre som et levedyktig P2P-betalingsnettverk..

Imidlertid står LN fremdeles overfor noen bemerkelsesverdige hindringer før den kan oppnå sitt fulle potensiale og samle videre adopsjon av både selgere og brukere. Å navigere i problemene rundt rebalansering av LN-kanaler og utviklingen av designområdet bør være viktige skritt i den fremtidige adopsjonen av nettverket, og noen spennende løsninger blir foreslått.

Bitcoin Lightning Network

Problemet med LN-rebalansering

Problemet med rebalansering stammer fra toveis betalingskanaldesign av LN og kravet om en finansieringstransaksjon på kjeden. Beløpet som en kanal finansieres av to parter som åpner en off-chain LN, er forhåndsbestemt av partene og er kjent som kanalforpliktelsen.

Hvis Alice og Bob åpner en kanal og Alice setter inn 2 BTC mens Bob også setter inn 2 BTC, er kanalforpliktelsen 4 BTC. Bob og Alice kan bytte BTC i denne kanalen så mange ganger de vil uten gebyrer og nær øyeblikkelig avregning.

Beløpet som byttes er imidlertid avhengig av avsenderen, da den ikke kan overstige avsenderens saldo, noe som gjør off-chain LN-kanaler praktisk for enheter som vil finansiere kanalen med en større verdi fordi de vil samhandle gjennom kanalen regelmessig. Omvendt er det for øyeblikket ubeleilig å bruke LN-kanalen for engangssaker, ettersom både finansieringstransaksjonen og avslutningstransaksjonen til kanalen krever gebyrer og tid til å utføre.

Der de funksjonelle begrensningene til rebalanseringsproblemet spiller inn, er brukere som ønsker å gjøre transaksjoner gjennom LN med flere parter eller parter som de ikke har en åpen kanal med. Hvis Alice vil åpne en kanal med Bob, Charlie og Daisy, må hun åpne hver kanal hver for seg og finansiere dem med et bestemt beløp. Hun kan ikke behandle store transaksjoner til noen av partene fordi finansieringen hennes er spredt og låst i separate kanaler, noe som krever at hun konsekvent åpner og lukker nye kanaler basert på den dynamiske dynamikken som hun betaler for og hvor mye hun betaler dem..

LN nærmer seg dette problemet ved å gjøre det mulig for brukere å gjøre transaksjoner via kjedede betalingskanaler i nettverket ved hjelp av Hash Time-Locked Contracts (HTLCs). Brukere trenger ikke eksplisitt å åpne direkte betalingskanaler med andre parter de ønsker å gjøre transaksjoner med siden HTLC-er skaper muligheten for mellomliggende noder mellom to samhandlende parter som fungerer som rutingnoder.

Til slutt utvider potensialet til HTLC-er og rutingnoder LN-kapasiteten til det punktet hvor brukere ikke trenger å åpne direkte kanaler med noen på nettverket, og betalinger vil automatisk bli dirigert mellom brukere basert på protokollen. Imidlertid står rebalanseringsproblemet i veien for den praktiske realiseringen av dette målet. Så hva er egentlig problemet?

Hvis Alice og Bob ønsker å gjøre transaksjoner uten å åpne en direkte betalingskanal, kan de gjøre det hvis Charlie har en betalingskanal åpen med dem begge.

Alice 2 → 2 Charlie 2 → 2 Bob

I eksemplet ovenfor har Charlie en balanse på 2 BTC med både Alice og Bob (4 BTC totalt) mens Alice og Bob begge har en balanse (sendingbalanse) på 2 BTC med Charlie.

Hvis Alice ønsker å sende Bob 1 BTC uten å åpne en direkte kanal med ham, kan hun gjøre det via Charlie som rutingnode. Dette krever imidlertid at alle saldoer i betalingskjeden oppdateres tilsvarende, noe som fører til følgende saldoer nedenfor.

Alice 1 → 3 Charlie 1 → 3 Bob

Charlies kanal med Alice mottar 1 BTC for å oppdatere til 3 BTC mens balansen med Bob synker til 1 BTC fordi han sendte 1 BTC (fra Alice) til Bob. Charlie beholder fortsatt 4 BTC, men kanalen hans med Bob ble redusert til 1 BTC. Du kan se hvor dette går etter hvert som transaksjoner blir mer komplekse med flere involverte parter.

Til slutt, hvis Alice ønsker å sende Bob ytterligere 1 BTC gjennom den samme betalingsruten, vil Charlie ha 0 BTC i sendesaldoen med kanalen som er delt med Bob, og effektivt deaktivere rutekanalen mellom Alice og Bob fordi den er ubalansert. De kan alle ganske enkelt lukke kanalene sine og åpne dem igjen med nye saldoer, men den metoden skalerer ikke godt og gir ulemper som selgere vil unngå.

Det resulterende dilemmaet er rebalanseringsproblemet, og det blir mer komplekst med flere betalingsruter som stammer fra flere mellommenn og rutingnoder.

Rute noder mottar små avgifter for sitt arbeid, så rebalansering er i stor grad deres mål i sammenheng med problemet. Det er blitt foreslått flere løsninger for å overvinne rebalanseringsproblemet, hvorav mange er smarte og har forskjellige fordeler og mangler.

Løse LN-ombalansering

Selv om det er flere foreslåtte løsninger tilgjengelig for ombalansering i LN, er ingen av dem perfekte. Å gi et eksempel på noen av de kjente vil gi et innblikk i den pågående innovasjonen på dette området. Det er to hovedtyper av metoder for å omgå problemene med ombalansering:

  1. On-Chain
  2. Off-Chain

La oss evaluere to av de primære metodene; spleising for on-chain og sirkulære betalinger for off-chain.

On-Chain-metoder

Den enkleste metoden er å åpne og lukke kanaler, refundere dem og starte på nytt. Dette koster imidlertid både gebyr on-chain og tid for hver kanal (samt bekreftelsestid on-chain) som Charlie stenger og åpner, en upraktisk løsning. En annen løsning som bruker en on-chain-metode, er kjent som spleising, som er en litt mer effektiv måte å utnytte funksjonaliteten for åpen / lukking på kjeden.

La oss for eksempel bruke situasjonen der Charlie sitter igjen med 1 BTC i sin kanal med Bob, og Alice ønsker å sende 1 BTC til Bob igjen. For eksemplets skyld har Alice nå 3 BTC i sin sendekanal med Charlie.

Alice 3 → 3 Charlie 1 → 3 Bob

|

|

Alice 2 → 4 Charlie 0 → 4 Bob

Basert på denne dynamikken, hvis Alice vil sende Bob 1 BTC mer, kan hun det ikke fordi Charlie ikke har noen gjenværende BTC i sendingsbalansen med Bob. Splicing gjør det mulig for Charlie å lukke kanalen sin med Alice og gjenåpne den i to trinn.

  1. Spleiser ut
  2. Skjøter inn

I spleisen stenger Charlie kanalen sin med Alice og refunderer den med 3 BTC mens han beholder 1 BTC on-chain, fortsatt lik den 4 totale BTC han hadde tidligere. Nå vil oppsettet i kanalen se slik ut:

Alice 2 → 3 Charlie 0 → 4 Bob

1 BTC on-chain (Charlie)

Den andre fasen – spleising i – er hvor Charlie stenger kanalen sin med Bob og legger til i 1 BTC som er i kjeden etter spleisen, noe som fører til følgende dynamikk:

Alice 2 → 3 Charlie 1 → 4 Bob

Charlie kan nå rute en 1 BTC eller mindre betaling mellom Alice og Bob igjen. Imidlertid pådrar Charlie to separate forekomster av on-chain avgifter for både spleisen og spleisen inn. De påløpte avgiftene er grunnen til at Charlie kan kreve små avgifter for å være rutingnoden mellom Alice og Bob.

Samlet sett er skjøting mer effektivt enn å stenge og åpne kanalene igjen mellom partene, siden bare Charlie er involvert. Til tross for økt effektivitet påløper det fortsatt avgifter og krever bekreftelsestid for en on-chain-transaksjon, ikke ideell for selgere å balansere kanalen sin. Avgiftsstrukturer fra denne modellen fører også til ytterligere balansere kompleksiteter.

Metoder utenfor kjeden

En egen metode for kanalbalansering ved hjelp av en helt off-chain struktur er kjent som sirkulære betalinger, og det forstås best med en litt mer kompleks betalingsmodell. I hovedsak er sirkulære betalinger selvbetalinger gjennom en spesifisert rutebane der en node balanserer seg ved å betale seg selv via kjedede off-chain-transaksjoner i stedet for å åpne en ny kanal.

For eksempel ønsker Charlie å balansere kanalen sin med Bob i diagrammet nedenfor. Sirkulære betalinger kan faktisk fungere som en trekant fordi det ganske enkelt må være minst 3 noder involvert.

I eksemplet ovenfor sendte Charlie 1 BTC (mot klokken) fra sin kanal med Alice til seg selv gjennom pilens retning, og til slutt mottok 1 BTC i sin kanal med Bob. Som et resultat er Charlies sendesaldo med Bob nå 2 BTC.

Charlie kan deretter rute en 2 BTC-betaling fra Alice til Bob i motsatt retning (med klokken). Alice kan ikke sende 2 BTC direkte gjennom kanalen sin med Bob fordi hun bare har 1 BTC i kanalen, men hun kan bruke Charlie til å sende den til Bob.

Med flere noder og kanalverdier kan prosessen bli et selvbærende økosystem basert på gebyrstrukturer. Rebalanseringsnoder fullføres helt utenfor kjeden uten behov for transaksjoner i kjeden. En rutingnode kan balansere kanalen sin når som helst ved å bare starte en transaksjon for seg selv.

Sirkulære betalinger kommer også med forbeholdene. De fører til avgifter fra rutingnodene i selvbetalingssyklusen. Jo større transaksjonskjeden, jo flere betalte gebyrer. Noder trenger fortsatt ikke vente på bekreftelsestider for on-chain transaksjoner, men gebyrstrukturen kan bli komplisert og er begrenset av saldoen til rutingnodene i betalingskjeden.

Selgere i et slikt økosystem vil også samle det meste av den utvekslede BTC i sirkulære betalinger hvis de var en del av kjeden i en lengre periode fordi de bare mottar i stedet for å betale. Et slikt system kan ende opp med å produsere konkurransedyktig ruting og unødvendig store kanalbalanser av ikke-selgere for at det skal fungere konsekvent.

Annen utvikling i LN

Å overvinne rebalansering av LN-kanaler er viktig for LNs evne til å operere uten at brukere trenger å åpne direkte betalingskanaler med hverandre, en av dens kraftigste egenskaper. Tenk deg å gå til en ny kaffebar eller hurtigmatrestaurant og måtte åpne en betalingskanal og sette inn et bestemt beløp på BTC hver gang. Denne metoden er upraktisk, ikke bare for kunden, men også for selgeren.

Til slutt bør disse løsningene fungere i fellesskap blant andre utviklinger for å gjøre det mulig for brukere å sømløst handle med LN uten å måtte åpne en direkte kanal. Det eneste kravet vil være at selgeren og kunden begge har LN-kompatible Bitcoin-lommebøker.

Etter hvert som LN fortsetter å utvikle seg, er det flere viktige komponenter som er verdt å nevne. Spesielt tillater LN også Løk-ruting mikropayments for forbedret nettverkslag personvern og Lightning Labs har gjort fremskritt i oppdateringen av sikkerhet av deres LN desktop-app utgitt tilbake i september.

Brukeropplevelsen til LN er for det meste også rettet mot utviklere. En høy teknisk barriere for adopsjon er naturlig med nye teknologier, men UI / UX forbedres raskt med LN allerede. Pierre Rochard gir noen gode guider for bruk av LN, spesielt med Joule – den nye LN Chrome-utvidelsen.

Ubåtbytter

Les: Hva er Submarine Swaps?

Videre bør utviklingen av ubåtbytter også lette lettere påfylling av kanaler og interoperabilitet, en viktig faktor for å øke fleksibiliteten til LN blant selgere. Blockstreams nylig inkludering av satellitt-kompatibel LN-mikrobetalinger er også et annet viktig skritt fremover for brukere uten internettforbindelse, og åpner kraften til LN for mange mennesker uten banktilgang..

Bitcoins LN gjør merkbare fremskritt i både utvikling og adopsjon. Ombalansering av kanaler i rutekjeder utgjør et hinder for at nettverket kan nå sitt fulle potensiale, men det skal ende opp med å bevise en fartsdump i akselerasjonen mot et levedyktig og allestedsnærværende P2P-betalingslag.

Mike Owergreen Administrator
Sorry! The Author has not filled his profile.
follow me