Bitcoin Forum
May 14, 2021, 10:44:05 AM *
News: Latest Bitcoin Core release: 0.21.1 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1] 2 3 »  All
  Print  
Author Topic: Basics of the Lightning Network  (Read 1642 times)
Rath_
aka BitCryptex
Legendary
*
Offline Offline

Activity: 1302
Merit: 1851


Write @Rath or quote my post to notify me


View Profile WWW
August 22, 2018, 07:43:13 PM
Last edit: November 03, 2020, 07:09:02 PM by Rath_
Merited by LoyceV (12), dbshck (10), malevolent (7), ebliever (5), suchmoon (4), marlboroza (4), o_e_l_e_o (4), Carlton Banks (3), Welsh (3), DdmrDdmr (3), ETFbitcoin (2), Anon136 (2), bob123 (2), aplistir (2), d5000 (1), JayJuanGee (1), Timelord2067 (1), mocacinno (1), harizen (1), nutildah (1), bones261 (1), buwaytress (1), asu (1), hosseinimr93 (1), Heisenberg_Hunter (1), casperBGD (1), wilwxk (1), vphasitha01 (1), btj (1)
 #1

Table of contents

      1. What is the Lightning Network?
      2. How do I use it?
             a) Creating a payment channel
             b) Sending and routing payments
             c) Closing a channel
      3. Wallets and nodes
      4. Planned features
      5. Security risks
      6. Useful sources of information

1. What is the Lightning Network?

The Lightning Network is an alternative to the traditional Bitcoin on-chain transactions. It doesn’t replace them completely because on-chain transactions are still needed for closing and opening payment channels. The Lightning Network is a second layer solution and is fully opt-in. Transactions done between Lightning Network participants have no negative impact on the Bitcoin network. The Lightning Network allows for instant and extremely cheap P2P (micro)payments.

The Lightning Network consists of nodes which maintain payment channels with some of the participants of the network.

2. How do I use it?

To start using the Lightning Network, you have to use a compatible software (see Wallets and nodes section). Every wallet has a different setup process and features so you should look up a guide for the one you choose on your own.

a) Creating a payment channel

What is exactly a payment channel?

Payment Channel is class of techniques designed to allow users to make multiple Bitcoin transactions without commiting all of the transactions to the Bitcoin block chain. In a typical payment channel, only two transactions are added to the block chain but an unlimited or nearly unlimted number of payments can be made between the participants.

Two people establish a payment channel by locking up funds in a multi-signature address which needs both signatures to spend from it. Payment channels can be used as long as both participants remain cooperative. The maximum size of a channel is about 0.16 BTC. All major implementations now allow node operators to lift this limitation manually.

b) Sending and routing payments

Both parties transact without broadcasting the current state of their trade to the blockchain. They both keep the copy of the channel information. Each time a channel is updated, both parties sign a commitment transaction which keeps a record of the current state of the channel. This transaction can be published to perform an uncooperative channel close.

Sending payments over the Lightning Network is possible as long as there is at least one path from you to the other person through other nodes which have open channels between themselves. All nodes in the path must have enough liquidity. Each node is rewarded for routing the payment accordingly to their fee policy. Large payments can be split and routed via different routes thanks to MPPs (multipart payments); while all implementations support them, most wallets don't.

Ensuring that there is enough liquidity is the most difficult thing for most beginners. When you open a channel to someone, you gain outbound capacity. You won't be able to receive any coins through that channel unless you spend the channel reserve (1-3% of the channel's capacity). The more coins you spend, the more you will be able to receive. If someone opens a channel to you then you will gain incoming capacity and be able only to receive through that channel unless you receive more coins than the value of the channel reserve.

Secure payment routing would not be possible without Hashed Timelock Contracts (HTLCs). The example below explains why they are needed.

1. Alice opens a payment channel to Bob, and Bob opens a payment channel to Charlie.
2. Alice wants to buy something from Charlie for 1000 satoshis.
3. Charlie generates a random number and generates its SHA256 hash. Charlie gives that hash to Alice.
4. Alice uses her payment channel to Bob to pay him 1,000 satoshis, but she adds the hash Charlie gave her to the payment along with an extra condition: in order for Bob to claim the payment, he has to provide the data which was used to produce that hash.
5. Bob uses his payment channel to Charlie to pay Charlie 1,000 satoshis, and Bob adds a copy of the same condition that Alice put on the payment she gave Bob.
6. Charlie has the original data that was used to produce the hash (called a pre-image), so Charlie can use it to finalize his payment and fully receive the payment from Bob. By doing so, Charlie necessarily makes the pre-image available to Bob.
7. Bob uses the pre-image to finalize his payment from Alice

Mobile clients establish private channels which do not take part in the payment routing.

c) Closing a channel

Payment channels can be closed either cooperatively or uncooperatively (forcefully).

Uncooperative channel close can be initiated at any time. Although, it doesn't make much sense to do it if the other node is online and fully cooperative. By default, one has to wait 144 blocks (~24 hours) before one will be able to spend the closing transaction. This value is decided during initial channel negotiations. Note that this value can be significantly higher in some cases. For example, Eclair Mobile sets the delay to 2048 blocks (~2 weeks) if one enables receiving over the LN. The delay gives the other party time to come back online and check if the latest commitment transaction was published. If the other party broadcasts an old commitment transaction then one can revoke it and broadcast a penalty transaction within the delay.

Cooperative channel close can be initiated only when the other party is responsive. The closing transaction can be spent immediately if both parties agree on the current state of the channel.

3. Wallets and nodes

There are only few Lightning Network implementations and each of them might contain some bugs which may lead to the loss of funds. Keep in mind that the Lightning Network is still in beta. iOS and Android wallets are easy to use and don’t require much setup as opposed to LND, Eclair and c-lightning which are used to run stand-alone nodes.

Implementations


Desktop clients


Android clients


iOS clients


4. Planned features

  • Dual-funded channels - two users instead of one will be able to fund a payment channel as originally described in the Lightning Network Paper.
  • Eltoo - eltoo will be an alternative to the current method of settling payments between users. Channel updates are done by building a chain of timelocked transactions. A soft fork is needed to make eltoo available on the Lightning Network (in order to avoid having to broadcast the whole transaction history between users). Here you can find out which opcodes need to be modified.
  • Channel factories - existing Lightning Network channels could be used for creating new channels without broadcasting anything to the rest of the Bitcoin network. Normally, a channel is opened to only one person. In channel factories we have multiple people forming a group. Group members maintain channels between themselves. More interested users = higher savings. If one of the participants is uncooperative, existing channels are not affected - new channels can't be created, though.
  • Splicing In/Out - currently, it is not possible to add or remove funds from channels without reopening them.

There are a few things which can be changed in the Bitcoin code in order to improve privacy. Introducing Schnorr, MAST and Taproot would make transactions opening/closing channel indistinguishable from any other ordinal transaction.

5. Security risks

  • Improper timelocks - sufficient time should be given in case of interaction with non-cooperative or malicious channel counterparties.
  • Forced expiration spam - closing many channels at the same time might lead to filling up the whole block completely. If the spam lasts enough time, some timelocked transactions might become valid.
  • Data loss - most of the Lightning Network clients don’t provide reliable method of backup. Using an old copy of the database might be considered as cheating. The other party broadcasts a penalty transaction in such a case. Data Loss Protection is available in all implementations.
  • Coin theft - most of the Lightning Network nodes work 24/7 and store their coins in hot wallets which makes it easier for an attacker to steal them.
  • Colluding miner attacks - miners have power to decide which transactions they want to include in the block so they can refuse certain transactions selected by an attacker. This attack is very unlikely to happen due to high cost and complexity (all miners would have to cooperate).

6. Useful sources of information

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

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

News: Telegram channel, bitcoinlightning.com, coindesk, Cointelegraph

Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction. Advertise here.
Anon136
Legendary
*
Offline Offline

Activity: 1722
Merit: 1216



View Profile
August 22, 2018, 08:42:59 PM
Merited by Rath_ (3), dbshck (2)
 #2

This post is a quick proof reading and critique as per the request of OP.


Quote
It has no impact on the Bitcoin network.
Technically I mean if it reduces the total number of on chain transactions this is an impact on the bitcoin network. I understand what you mean but perhaps this sentence could be more clear. Something like "once a lightning channel has been established transactions within said channel do not impact the bitcoin blockchain". Or something like that. Not trying to write it for you, just explaining what I mean.


Quote
To start using the Lightning Network you have to use a compatible software.


Quote
To start using the Lightning Network you have to use a compatible software. Two people establish a payment channel by locking up funds in a multi-signature address which needs both signatures to spend from it. Payment channel can be used as long as both participants agree to cooperate. One can close the channel even if the other participant is offline but it won't happen instantly in that case.
I would change wording and the order a bit here.

To start using the Lightning Network you have to use a compatible software. Two people may establish a payment channel by locking up funds in a multi-signature address which needs both signatures to spend from it. This transaction is time locked so that the funds will be automatically dispersed in the event that one of the parties becomes uncooperative. Payment channel can be used as long as both participants agree to cooperate remain cooperative. One can close the channel even if the other participant is offline but it won't happen instantly in that case.


Great post. Thanks for being a continued asset to the community. +merit

Rep Thread: https://bitcointalk.org/index.php?topic=381041
If one can not confer upon another a right which he does not himself first possess, by what means does the state derive the right to engage in behaviors from which the public is prohibited?
d5000
Legendary
*
Offline Offline

Activity: 2814
Merit: 2299


Decentralization Maximalist


View Profile
August 23, 2018, 01:16:50 AM
Last edit: August 23, 2018, 05:32:27 AM by d5000
 #3

Thank you for that great post!

It confirmed a doubt I had for a long time but nobody was able to "refute" it: the "forced expiration spam" problem. That weakness has an important consequence: We should never let Lightning "hubs" become too big, otherwise they would become a systemic risk, as they could spam the blockchain for a long time if they're malicious.

I'm currently installing Neutrino+LND to test the "light client" scenario which would make LN available "for the masses", but I ran into some problems. But I won't spam this thread with them - I'll look if I can solve them myself (I'm a total Go noob, so maybe a bit of RTFM is enough Wink ). Perhaps we can start another thread of this "Lightning series": "Lightning Network Experiences"?

ETFbitcoin
Legendary
*
Offline Offline

Activity: 1862
Merit: 2782


NotYourKeys.org - Not Your Keys, Not Your Bitcoin


View Profile
August 23, 2018, 06:49:30 AM
 #4

Thanks for neat and well written article, there's few things that i think should be included :
1. Implementation of Schnorr Siganture which reduce transaction size (which have multiple input since LN use 2-of-2 multisig) should be added to "Planned features", even though AFAIK Schnorr Signature should have backward compability.
2. There are few other 2nd layer scaling solution worth mentioned such as Mimblewimble which focus on privacy/fungibility
3. Add https://lnroute.com/ to "Useful sources of information"

buwaytress
Legendary
*
Offline Offline

Activity: 1708
Merit: 1577


Join the world-leading crypto sportsbook NOW!


View Profile
August 23, 2018, 08:11:43 AM
 #5

Thanks for this well laid out piece, I'm really going to dig in at some point soon! My burning question is actually about that "Other" second layer you mention: Rootstock. So I apologise if this is completely unrelated, though since I saw you linking to Rootstock...

My first encounter with it was in 2016 I believe, when looking at Bitcoin smart contracts. The interest then, (and still now) was in smart contract use for e-scrow. This is also the use case described by some old articles on Google, but then I can't seem to find a link to an actual code that shows a working example for such a trustless escrow, a service still very much in demand.

I wonder, if during this LN implementation, it would be too difficult to add a second second layer (or 2 parallel layers) to also allow for escrow, or perhaps within LN itself? Or using LN as an escrow method?

Wind_FURY
Legendary
*
Offline Offline

Activity: 1820
Merit: 1110


www.Crypto.Games: Multiple coins, multiple games


View Profile
August 23, 2018, 09:08:52 AM
 #6

Quote
Colluding miner attacks - miners have power to decide which transactions they want to include in the block so they can refuse certain transactions selected by an attacker. This attack is very unlikely to happen due to high cost and complexity (all miners would have to cooperate).

If miners start censoring transactions, then it would be the only time that I will sell all of my Bitcoins. But, it would also be the best time to start calling for a UAHF type POW change.

████  ███████  ███
██████████
███      ███████
███      ███████████
██████████████████
████████
███   ████  ███████████
███ ███████████████
█████████
█████████████████
███  ███████
██████████████
███        ████████
███████████▀▀███▀▀███████████
██████▀▀     ███     ▀▀██████
████▀   ▄▄█████████▄▄   ▀████
████▄▄▄███▀  ▀█▀  ▀███▄▄▄████
██▀▀▀██▀      ▀      ▀██▀▀▀██
█▀  ▄██               ██▄  ▀█
█   ████▄▄         ▄▄████   █
█▄  ▀██▀             ▀██▀  ▄█
██▄▄▄██▄             ▄██▄▄▄██
████▀▀▀███▄ ▄█ █▄ ▄███▀▀▀████
████▄   ▀▀███▄█████▀▀   ▄████
███████▄     ███     ▄███████
███████████▄▄███▄▄███████████
██
██
██
██
██
██
██
██
██
██
██
██
██
██
██
██
██
██
██
██
██
██
██
██
██
██
..PLAY NOW..
███  ███████  ████
██████████
███████      ███
███████████      ███
██████████████████
████████
███████████  ████   ███
███████████████ ███
█████████
█████████████████
███████  ███
██████████████
████████        ███
bob123
Legendary
*
Offline Offline

Activity: 1526
Merit: 2328



View Profile WWW
August 23, 2018, 09:31:11 AM
 #7

If miners start censoring transactions, [...]

Well, it actually depends on how you define censoring.

Miner do choose transactions based on some properties. And the most important one is the fee rate (sat/B) payed.

Since all miner have to agree, there needs to be an incentive for all of them. And all miner do definitely benefit from higher fees.
So most do choose the top X transactions from their list (ordered by fee rate) from transactions from the mempool.

They might not censor transactions from/to specific addresses since an incentive for all miner is missing here, but as far as all of them can profit, they probably always 'favor' transactions based on some properties.

Kprawn
Legendary
*
Offline Offline

Activity: 1904
Merit: 1068


View Profile
August 23, 2018, 03:43:31 PM
 #8

If miners start censoring transactions, [...]

Well, it actually depends on how you define censoring.

Miner do choose transactions based on some properties. And the most important one is the fee rate (sat/B) payed.

Since all miner have to agree, there needs to be an incentive for all of them. And all miner do definitely benefit from higher fees.
So most do choose the top X transactions from their list (ordered by fee rate) from transactions from the mempool.

They might not censor transactions from/to specific addresses since an incentive for all miner is missing here, but as far as all of them can profit, they probably always 'favor' transactions based on some properties.


But at some point of time the tx will be mined by someone not in the group of miners that wants to censor these tx's right?

These tx's might just take a little bit longer, because they have less miners fees, but they will be picked up by some desperate

miner.  Roll Eyes  Some people might even target these "scraps" because it is being discarded by the big boys? 

THE FIRST DECENTRALIZED & PLAYER-OWNED CASINO
.EARNBET..EARN BITCOIN: DIVIDENDS
FOR-LIFETIME & MUCH MORE.
. BET WITH: BTCETHEOSLTCBCHWAXXRPBNB
.JOIN US: GITLABTWITTERTELEGRAM
Rath_
aka BitCryptex
Legendary
*
Offline Offline

Activity: 1302
Merit: 1851


Write @Rath or quote my post to notify me


View Profile WWW
August 23, 2018, 07:41:30 PM
 #9

I'm currently installing Neutrino+LND to test the "light client" scenario which would make LN available "for the masses", but I ran into some problems. But I won't spam this thread with them - I'll look if I can solve them myself (I'm a total Go noob, so maybe a bit of RTFM is enough Wink ). Perhaps we can start another thread of this "Lightning series": "Lightning Network Experiences"?

That might be a good idea. Feel free to PM me if you need some help.

~snip

Thanks for your suggestions. I haven't mentioned Schnorr signatures because they are not strictly connected with the Lightning Network. Updated.

I wonder, if during this LN implementation, it would be too difficult to add a second second layer (or 2 parallel layers) to also allow for escrow, or perhaps within LN itself? Or using LN as an escrow method?

There won't be any problems with having more than one second layer, especially if they have different features. It is possible to build more layers on top of the Lightning Network. Some think that ordinary people will use them instead of on-chain transactions.

I am going to write a long guide on the Lightning Network wallets once they stop changing so much. Developers are constantly updating their implementations.

Wind_FURY
Legendary
*
Offline Offline

Activity: 1820
Merit: 1110


www.Crypto.Games: Multiple coins, multiple games


View Profile
August 24, 2018, 07:22:33 AM
 #10

If miners start censoring transactions, [...]

Well, it actually depends on how you define censoring.

Miner do choose transactions based on some properties. And the most important one is the fee rate (sat/B) payed.

Since all miner have to agree, there needs to be an incentive for all of them. And all miner do definitely benefit from higher fees.
So most do choose the top X transactions from their list (ordered by fee rate) from transactions from the mempool.

They might not censor transactions from/to specific addresses since an incentive for all miner is missing here, but as far as all of them can profit, they probably always 'favor' transactions based on some properties.


What I am trying to say is real censorship by miner collusion or miner centralization. If that becomes real in the network then it will become nothing but an inefficient and expensive FED 2.0.

But a community-backed UAHF will happen before FED 2.0 happens in my opinion. The miners should be careful.

████  ███████  ███
██████████
███      ███████
███      ███████████
██████████████████
████████
███   ████  ███████████
███ ███████████████
█████████
█████████████████
███  ███████
██████████████
███        ████████
███████████▀▀███▀▀███████████
██████▀▀     ███     ▀▀██████
████▀   ▄▄█████████▄▄   ▀████
████▄▄▄███▀  ▀█▀  ▀███▄▄▄████
██▀▀▀██▀      ▀      ▀██▀▀▀██
█▀  ▄██               ██▄  ▀█
█   ████▄▄         ▄▄████   █
█▄  ▀██▀             ▀██▀  ▄█
██▄▄▄██▄             ▄██▄▄▄██
████▀▀▀███▄ ▄█ █▄ ▄███▀▀▀████
████▄   ▀▀███▄█████▀▀   ▄████
███████▄     ███     ▄███████
███████████▄▄███▄▄███████████
██
██
██
██
██
██
██
██
██
██
██
██
██
██
██
██
██
██
██
██
██
██
██
██
██
██
..PLAY NOW..
███  ███████  ████
██████████
███████      ███
███████████      ███
██████████████████
████████
███████████  ████   ███
███████████████ ███
█████████
█████████████████
███████  ███
██████████████
████████        ███
bob123
Legendary
*
Offline Offline

Activity: 1526
Merit: 2328



View Profile WWW
August 24, 2018, 09:03:46 AM
 #11

But at some point of time the tx will be mined by someone not in the group of miners that wants to censor these tx's right?

Theoretically, yes.
But practically, most miner (probably each one) has a financial incentive to mine bitcoins.
And with choosing the transactions with the highest fees to be included (either the pool operator or the solo miner decides this) the financial benefit will be the biggest.



These tx's might just take a little bit longer, because they have less miners fees, but they will be picked up by some desperate
miner.  Roll Eyes  Some people might even target these "scraps" because it is being discarded by the big boys? 

This is definitely a possiblity.
But why should a miner be desperate enough to pick a low-fee tx over a high-fee tx (assuming the mempool is by far NOT empty).
He would give up on some btc's.

buwaytress
Legendary
*
Offline Offline

Activity: 1708
Merit: 1577


Join the world-leading crypto sportsbook NOW!


View Profile
August 24, 2018, 03:44:24 PM
 #12

I wonder, if during this LN implementation, it would be too difficult to add a second second layer (or 2 parallel layers) to also allow for escrow, or perhaps within LN itself? Or using LN as an escrow method?

There won't be any problems with having more than one second layer, especially if they have different features. It is possible to build more layers on top of the Lightning Network. Some think that ordinary people will use them instead of on-chain transactions.

I am going to write a long guide on the Lightning Network wallets once they stop changing so much. Developers are constantly updating their implementations.

This is actually the scenario I believe will happen as well. I mean, the way people use Bitcoin now, most don't realise which implementation they're using, or even if they're actually signing any transactions at all. If/When these LN implemetations get to the point they look just like any Bitcoin wallet, you can be sure people will be using LN without ever interacting with the chain. In the end, this probably won't matter I suppose. It will take a lot more to convince me to move over, though I'm really keen (if I'm the typical example of a mainstream user).


btj
Member
**
Offline Offline

Activity: 115
Merit: 14


View Profile
August 25, 2018, 01:35:55 AM
 #13

Thank you for this nice post !

Unfortunately this confirm that LN = centralization ! It's against Bitcoin's primary objective and personally i can't support this technology (In the current state and especially if nothing will be made to improve the idea more in decentralized way).

2 importants depreciated factors join the game: Middle man and Trust.

Of course there adventages using it like enjoying a micro transaction fees, save Blockchain transactions ... but what about security (Keeping things decentralized) ?

I am not the negative guy of the gang, it's great to offer solutions to improve bitcoin or blockchain technology ... but security first (Especially when people's money at stake).

bob123
Legendary
*
Offline Offline

Activity: 1526
Merit: 2328



View Profile WWW
August 25, 2018, 07:40:01 AM
 #14

Unfortunately this confirm that LN = centralization !

 Huh
How did you get to THAT conclusion ?  Huh
This doesn't make any sense. Please elaborate.



It's against Bitcoin's primary objective and personally i can't support this technology (In the current state and especially if nothing will be made to improve the idea more in decentralized way).

Fortunately, you don't have to support anything.
If you believe the LN is centralized, take a look at it again. Read a few articles. And come back with more knowledge. The LN is anything but centralized..



2 importants depreciated factors join the game: Middle man and Trust.

Well, good thing is: The LN does NOT need a middle man and does NOT require trust.

You seem to be overwhelmed by looking at the pictures illustrating the LN.
Please, do yourself a favor, and read into the LN.

This takes 5 minutes of your life, but will keep you safe from embarrassing moments/posts (like this one).



Of course there adventages using it like enjoying a micro transaction fees, save Blockchain transactions ... but what about security (Keeping things decentralized) ?

What has security to do with centralization ?! You seem to be mixing up a lot words you have heard.

As already mentioned, LN is no way decentralized. And you would know that if you would have read at least 1 proper article about the LN.

If you have any security concerns, feel free to shout them out. I will be glad to answer all of your questions regarding security.



I am not the negative guy of the gang, it's great to offer solutions to improve bitcoin or blockchain technology ... but security first (Especially when people's money at stake).

You seem to be the 'uneducated' guy of the gang. At least regarding the LN.
You have a lot of misconceptions regarding the LN.


btj
Member
**
Offline Offline

Activity: 115
Merit: 14


View Profile
August 25, 2018, 12:32:47 PM
Last edit: August 25, 2018, 12:43:38 PM by btj
 #15

I am not the negative guy of the gang, it's great to offer solutions to improve bitcoin or blockchain technology ... but security first (Especially when people's money at stake).

You seem to be the 'uneducated' guy of the gang. At least regarding the LN.
You have a lot of misconceptions regarding the LN.



Before going furthur, stay educated and do not shoot garbage there face to someone you don't know.

So let start with MIDDLE MAN:

Quote
1. Alice opens a payment channel to Bob, and Bob opens a payment channel to Charlie.
2. Alice wants to buy something from Charlie for 1000 satoshis.
3. Charlie generates a random number and generates its SHA256 hash. Charlie gives that hash to Alice.
4. Alice uses her payment channel to Bob to pay him 1,000 satoshis, but she adds the hash Charlie gave her to the payment along with an extra condition: in order for Bob to claim the payment, he has to provide the data which was used to produce that hash.
5. Bob uses his payment channel to Charlie to pay Charlie 1,000 satoshis, and Bob adds a copy of the same condition that Alice put on the payment she gave Bob.
6. Charlie has the original data that was used to produce the hash (called a pre-image), so Charlie can use it to finalize his payment and fully receive the payment from Bob. By doing so, Charlie necessarily makes the pre-image available to Bob.
7. Bob uses the pre-image to finalize his payment from Alice

So Bob here is the middle man, he can affect time of transaction and especially if he go offline.

LN is a network of several centralized hubs ... and you have to choose a performent and all time online to prevent delaying transaction etc ... So here a contract of trust ...

I invite you to read more here for disadvantages of LN in the current state and what make it centralized:
https://medium.com/crypto-punks/lightning-network-ux-centralization-b517037b92ec

Colluding miner attacks - miners have power to decide which transactions they want to include in the block so they can refuse certain transactions selected by an attacker. This attack is very unlikely to happen due to high cost and complexity (all miners would have to cooperate).

You have to trust miners.

And please read more about "what make a technology decentralized" before posting anything else ... and also to prevent spamming this thread since the first goal is to give some knowledge about LN and not to debate it (I given my feedback like you did yourself, there many other threads about this.).
Rath_
aka BitCryptex
Legendary
*
Offline Offline

Activity: 1302
Merit: 1851


Write @Rath or quote my post to notify me


View Profile WWW
August 25, 2018, 05:36:52 PM
Last edit: August 25, 2018, 06:00:10 PM by BitCryptex
 #16

So let start with MIDDLE MAN:
-SNIP
So Bob here is the middle man, he can affect time of transaction and especially if he go offline.

The time is not a real problem since every transaction has its own timeout. It all happens nearly instantly. I have sent about 100 LN payments and the longest one took 1 minute. Bob can't steal funds because of HTLCs

LN is a network of several centralized hubs ... and you have to choose a performent and all time online to prevent delaying transaction etc ... So here a contract of trust ...

You can still open a direct channel to someone who you are going to transact with very often. Here you can see the largest nodes. Only one node has 1/4 of the total Lightning Network capacity. Keep in mind that principal is not the most important factor; the number of connections and channel balancing are much more important. The need of being online is definitely a huge disadvantage for some people, can't argue with that.

Colluding miner attacks - miners have power to decide which transactions they want to include in the block so they can refuse certain transactions selected by an attacker. This attack is very unlikely to happen due to high cost and complexity (all miners would have to cooperate).

You have to trust miners.

If ALL miners decided to cooperate with a single person then you would have to be more concerned about 51% attack. It won't happen since it would scare future investors and users. Miners would lose money long-term.

It took me some time to format this text on my phone. I am going to read what you have linked once I get home.

btj
Member
**
Offline Offline

Activity: 115
Merit: 14


View Profile
August 25, 2018, 06:31:28 PM
 #17

So let start with MIDDLE MAN:
-SNIP
So Bob here is the middle man, he can affect time of transaction and especially if he go offline.

The time is not a real problem since every transaction has its own timeout. It all happens nearly instantly. I have sent about 100 LN payments and the longest one took 1 minute. Bob can't steal funds because of HTLCs

LN is a network of several centralized hubs ... and you have to choose a performent and all time online to prevent delaying transaction etc ... So here a contract of trust ...

You can still open a direct channel to someone who you are going to transact with very often. Here you can see the largest nodes. Only one node has 1/4 of the total Lightning Network capacity. Keep in mind that principal is not the most important factor; the number of connections and channel balancing are much more important. The need of being online is definitely a huge disadvantage for some people, can't argue with that.

Colluding miner attacks - miners have power to decide which transactions they want to include in the block so they can refuse certain transactions selected by an attacker. This attack is very unlikely to happen due to high cost and complexity (all miners would have to cooperate).

You have to trust miners.

If ALL miners decided to cooperate with a single person then you would have to be more concerned about 51% attack. It won't happen since it would scare future investors and users. Miners would lose money long-term.

It took me some time to format this text on my phone. I am going to read what you have linked once I get home.

Instructive return, thank you.

Waiting your feedback about the link of my previous answer.
LoyceV
Legendary
*
Online Online

Activity: 2212
Merit: 7959


Thick-Skinned Gang Leader


View Profile WWW
August 26, 2018, 11:10:01 AM
 #18

Colluding miner attacks - miners have power to decide which transactions they want to include in the block so they can refuse certain transactions selected by an attacker. This attack is very unlikely to happen due to high cost and complexity (all miners would have to cooperate).

You have to trust miners.
If ALL miners decided to cooperate with a single person then you would have to be more concerned about 51% attack. It won't happen since it would scare future investors and users. Miners would lose money long-term.
The same applies to the current Bitcoin network, without Lightning Network. If all miners decide to reject transactions from a certain address, they break the one thing that makes Bitcoin so great, and severely treaten the value of their investment.

Rath_
aka BitCryptex
Legendary
*
Offline Offline

Activity: 1302
Merit: 1851


Write @Rath or quote my post to notify me


View Profile WWW
August 26, 2018, 08:11:36 PM
 #19

Waiting your feedback about the link of my previous answer.

The article linked by you is well written. It covers a lot of problems and suggests solutions which are quite reasonable. However, one thing drew my attention.

[...]It will be very dangerous, if a counterparty has an older state, where all or most money on his side, because it becomes very lucrative to cheat (risk almost nothing for a chance to get all channel’s funds)[...]
User should keep untrusted counterparty from exhausting a channel
Solution: a minimum collateral should be set automatically (especially if routing is enabled), but user still should be aware of a problem and not change default settings when dealing with untrusted nodes.[...]

That's why eltoo was proposed. It will be an alternative to the current penalty system. A softfork is needed. Also, it's not possible to spend all funds that are locked up in the channel - there is such a thing as reserve which is a minimum balance that channel must maintain. For example, one of my channels has 0.0049 BTC capacity; the reserve is 0.000049 BTC.


btj
Member
**
Offline Offline

Activity: 115
Merit: 14


View Profile
August 27, 2018, 12:54:45 PM
 #20

That's why eltoo was proposed. It will be an alternative to the current penalty system. A softfork is needed. Also, it's not possible to spend all funds that are locked up in the channel - there is such a thing as reserve which is a minimum balance that channel must maintain. For example, one of my channels has 0.0049 BTC capacity; the reserve is 0.000049 BTC.

Thank you for your time reading the article ! Yes it cover many cases with offering a solutions to remedy the problems.

Eltoo solve the problem by continuously updating payment channel balances off-chain.

Soft fork is required since “SIGHASH_NOINPUT” flag for signature must be introduced to Bitcoin Protocol to make it working.

I suggest you to edit your post and add this basic video explaination about how LN works:
https://www.youtube.com/watch?v=rrr_zPmEiME

Pages: [1] 2 3 »  All
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!