Author

Topic: Lightning Network osnove (Read 210 times)

hero member
Activity: 2086
Merit: 761
To boldly go where no rabbit has gone before...
November 15, 2020, 12:21:51 PM
#4
Koji k... su ti ovi "uputi"?
Mislis valjda upute? Il je to neki dijalekt hr jezika s kojim nisam upoznat, tipa bednjanski ili dolje župa dubrovačka?
legendary
Activity: 1526
Merit: 1359
November 15, 2020, 06:47:08 AM
#3
Evo, upravo su takvi clanci glavni razlog zašto sam se pridruzio ovom veselom drustvu.  Smiley
Super objasnjeno. Hvala ti, dkbit98! Zao mi je sto trenutno ne mogu da nagradim tvoj post sa vise merita.
legendary
Activity: 2212
Merit: 7064
November 09, 2020, 11:13:57 AM
#2
Rez
legendary
Activity: 2212
Merit: 7064
November 09, 2020, 11:13:43 AM
#1
Sadržaj

      1. Što je Lightning Network?
      2. Kako da ga koristim?
             a) Stvaranje kanala plaćanja
             b) Slanje i usmjeravanje plaćanja
             c) Zatvaranje kanala
      3. Novčanici i nodovi
      4. Planirano
      5. Sigurnosni rizici
      6. Korisni izvori informacija

1. Što je Lightning Network?

Lightning Network je alternativa tradicionalnim bitcoin on-chain transakcijama. Ne zamjenjuje ih u potpunosti jer su on-chain transakcije i dalje potrebne za zatvaranje i otvaranje kanala plaćanja. Lightning Network je takozvano rješenje drugog sloja ili second layer. Transakcije obavljene između Lightning Network sudionika nemaju negativan utjecaj na Bitcoin mrežu. Lightning Network omogućuje trenutna i izuzetno jeftina P2P (mikro) plaćanja.

Lightning Network se sastoji od nodova koji održavaju kanale plaćanja s nekim sudionicima mreže.

2. Kako da ga koristim?

Da biste počeli koristiti Lightning Network, morate koristiti kompatibilni softver (pogledajte Novčanici i nodovi). Svaki novčanik ima drugačiji postupak podešavanja, i sami morate potražiti vodič za onaj novčanik koji ste odabrali.

a) Stvaranje kanala plaćanja

Što je točno kanal plaćanja?

Lanal Plaćanja je klasa tehnika dizajniranih da korisnicima omoguće višestruke Bitcoin transakcije bez predavanja svih transakcija Bitcoin lancu blokova. U tipičnom kanalu plaćanja u lanac blokova dodaju se samo dvije transakcije, ali između sudionika može se izvršiti gotovo neograničen broj plaćanja.

Dvoje ljudi uspostavljaju kanal plaćanja zaključavanjem sredstava na multi-signature adresi s više potpisa koja treba oba potpisa za trošenje s njega. Kanali plaćanja mogu se koristiti sve dok oba sudionika i dalje surađuju. Maksimalna veličina kanala je oko 0.16 BTC. Sve glavne implementacije sada omogućuju nod operaterima da ručno ukinu ovo ograničenje.

b) Slanje i usmjeravanje plaćanja

Obje strane trguju bez emitiranja trenutnog stanja svoje trgovine na blockchain. Oboje čuvaju kopiju podataka o kanalu. Svaki put kad se kanal ažurira, obje strane potpisuju transakciju obveze koja vodi evidenciju o trenutnom stanju kanala. Ova transakcija se može objaviti radi zatvaranja kanala.

Plaćanje preko Lightning mreže moguće je sve dok postoji barem jedan put od vas do druge osobe kroz druge nodove koji imaju otvorene kanale između sebe. Svi nodovi na putu moraju imati dovoljno likvidnosti. Svaki nod je nagrađen za usmjeravanje plaćanja u skladu s njihovom politikom naknada. Velika plaćanja mogu se podijeliti i usmjeravati različitim rutama zahvaljujući MPP (multipart plaćanja); iako ih sve implementacije podržavaju, većina novčanika to još ne podržava.

Osiguravanje dovoljne likvidnost najteža je stvar za većinu početnika. Kada nekome otvorite kanal, stječete odlazni kapacitet. Kroz taj kanal nećete moći primiti coine osim ako ne potrošite rezervu kanala (1-3% kapaciteta kanala). Što više coina potrošite, to ćete više moći primiti. Ako vam netko otvori kanal, dobit ćete dolazni kapacitet i moći ćete primati putem tog kanala, osim ako ne primite više coina od vrijednosti rezerve kanala.

Sigurno usmjeravanje plaćanja ne bi bilo moguće bez hashiranih ugovora o vremenskoj blokadi (HTLCs). Primjer u nastavku objašnjava zašto su potrebni.

1. Alice otvara kanal za plaćanje Bobu, a Bob otvara za plaćanja Charlie-u.
2. Alice želi kupiti nešto od Charlieja za 1000 satošija.
3. Charlie generira slučajan broj i generira svoj SHA256 hash. Charlie daje taj hash Alice.
4. Alice koristi svoj kanal za plaćanje Bobu da bi mu platila 1.000 satošija, ali dodaje da joj je Charlie dao uplatu uz dodatni uvjet: da bi Bob mogao zatražiti plaćanje, on mora dostaviti podatke koji su korišteni proizvesti taj hash.
5. Bob koristi svoj način plaćanja Charlieju kako bi Charlieu platio 1.000 satošija, a Bob dodaje kopiju istog uvjeta koji je Alice stavila na plaćanje koje je dala Bobu.
6. Charlie ima izvorne podatke koji su korišteni za stvaranje hasha (pre-image), tako da ga Charlie može upotrijebiti za finaliziranje uplate i potpuno primanje uplate od Boba. Čineći to, Charlie nužno čini pre-image dostupan Bobu.
7. Bob koristi pre-image da finalizira svoje plaćanje od Alice

Mobilni klijenti uspostavljaju privatne kanale koji ne sudjeluju u usmjeravanju plaćanja.

c) Zatvaranje kanala

Kanali plaćanja se mogu zatvoriti kooperativno ili nekooperativno (prisilno).

Nekooperativno zatvaranje kanala može se pokrenuti u bilo kojem trenutku. Iako nema puno smisla to činiti ako je drugi čvor na mreži i u potpunosti surađuje. Prema zadanim postavkama treba pričekati 144 bloka (~ 24 sata) da bi se moglo potrošiti završnu transakciju. O ovoj se vrijednosti odlučuje tijekom početnih pregovora o kanalu. Imajte na umu da ta vrijednost u nekim slučajevima može biti znatno veća. Npr. Eclair Mobile postavlja kašnjenje na 2048 blokova (~ 2 tjedna) ako se omogući primanje preko LN. Odgoda daje drugoj strani vremena da se vrati online i provjeri je li objavljena najnovija transakcija. Ako druga strana emitira staru transakciju, tada je možete opozvati i emitirati kaznenu transakciju u roku odgode.

Kooperativno zatvaranje kanala može se pokrenuti samo kada druga strana reagira. Zaključna transakcija može se odmah potrošiti ako se obje strane slože oko trenutnog stanja kanala.

3. Novčanici i nodovi

Postoji samo nekoliko implementacija Lightning Network-a i svaka od njih može sadržavati neke bugove koji mogu dovesti do gubitka sredstava. Imajte na umu da je Lightning Network još uvijek u beta verziji. iOS i Android novčanici su jednostavni za upotrebu i ne zahtijevaju puno podešavanja za razliku od LND, Eclair i c-lightning koji se koriste za pokretanje samostalnih nodova.

Implementacije


Desktop klijenti


Android klijenti


iOS klijenti


4. Planirano

  • Dvostruko financirani kanali - dva korisnika umjesto jednog moći će financirati kanal plaćanja kako je izvorno opisano u dokumentu Lightning Network Paper.
  • Eltoo - eltoo je alternativa trenutnom načinu podmirivanja plaćanja između korisnika. Ažuriranje kanala vrši se izgradnjom lanca vremenski zaključanih transakcija. Soft fork je potreban da bi eltoo bio dostupan na LN (kako bi se izbjeglo emitiranje cijele povijesti transakcija između korisnika).Ovdje možete nači više o tome na engleskom.
  • Tvornice Kanala - postojeći Lightning Network kanali mogli bi se koristiti za stvaranje novih kanala, a da se ništa ne emitira na ostatak Bitcoin mreže. Kanal se obično otvara samo jednoj osobi. U tvornicama kanala imamo više ljudi koji čine grupu. Članovi grupe održavaju međusobne kanale. Više zainteresiranih korisnika = veća ušteda. Ako jedan od sudionika ne surađuje, postojeći kanali to neće utjecati - novi kanali se ipak ne mogu stvoriti.
  • Splicing Ulaz/Izlaz - trenutno nije moguće dodavati ili uklanjati sredstva s kanala bez ponovnog otvaranja.

Postoji nekoliko stvari koje se u Bitcoin kodu mogu promijeniti kako bi se poboljšala privatnost. Npr. Schnorr, MAST i Taproot učinio bi da se transakcije za otvaranje / zatvaranje kanala ne razlikuju od bilo koje druge redovne transakcije.

5. Sigurnosni Rizici

  • Nepravilna vremenska zaključavanja (timelocks) - treba dati dovoljno vremena u slučaju interakcije s nekooperativnim ili zlonamjernim kanalima.
  • Prisilno istekao spam - zatvaranje mnogih kanala istovremeno moglo bi dovesti do potpunog popunjavanja cijelog bloka. Ako spam traje dovoljno dugo, neke zaključane transakcije mogu postati validne.
  • Gubitak podataka - većina Lightning Network kiljenata ne pruža pouzdanu metodu sigurnosne kopije. Korištenje stare kopije baze podataka moglo bi se smatrati varanjem. U takvom slučaju druga strana emitira kaznenu transakciju. Zaštita od gubitka podataka je dostupna u svim implementacijama.
  • Kradja coina - većina Lightning Network nodova radi 24/7 i svoje coine sprema u tople novčanike što napadaču olakšava kradju.
  • Napadi rudara - rudari imaju moć odlučivanja koje transakcije žele uključiti u blok i oni bi mogli odbiti određene transakcije koje je napadač odabrao. Vrlo je malo vjerojatno da će se ovaj napad dogoditi zbog visoke cijene i složenosti (svi rudari bi morali surađivati).

6. Korisni izvori informacija

bitcointalk: The Lightning Network FAQ, Electrum Lightning Network walkthrough, Lightning Network Discussion Thread

Lightning Network exploreri: 1ml.com, lightblock.me

Novosti: Telegram kanal, bitcoinlightning.com, coindesk, Cointelegraph

Izvor: Basics of the Lightning Network by Rath_
Jump to: