Bitcoin Forum
September 25, 2023, 02:52:06 AM *
News: Latest Bitcoin Core release: 25.0 [Torrent]
  Home Help Search Login Register More  
  Show Posts
Pages: [1] 2 »
1  Bitcoin / Development & Technical Discussion / The Lightning Network node experience on: November 06, 2021, 01:44:32 AM
Note: This thread is self-moderated to prevent it from being derailed. Please, keep the discussion on Lightning implementations and your experience of running a node. Any related questions are welcome.

I have been running my current c-lightning node for over 4 months now so I would like to share some data with you. I would appreciate if other node operators could share their experience, thoughts and anything else like plugins, fee strategy, third-party software.

My node's URI is 0273da0a525390c36857841e208f1d289275c76ebfa7ecfde697c6cbf4f235b4f5@fjpmf23cd2c6sqp7e4wzexa6ixkttl3jabivldakwq733tw634ymjbid.onion:9735

My node has successfully routed 143 payments (until the 31st October) with ~0.09 BTC capacity and 5 active channels. Here's a breakdown of my earnings from payment routing into each month:

July: 539.54 sat/17 forwards

August: 114.64 sat/34 forwards

September: 161.75 sat/28 forwards

October: 75.56 sat/64 forwards

The largest payment I have ever routed was 960,320 satoshi and I got paid 77.825 satoshi for it. The highest fee I have ever charged was 91.476 satoshi for a 952,385 satoshi payment. 23 forwards were free of charge. As you can see, I made the highest profit in July. That's probably because I was adjusting my fee policy for each channel manually every few days unlike the other months - I adjusted my fee policy only at the beginning and at the end of each month. I haven't used any fee auto-adjusting plugins yet.

While it's true that earnings from my Lightning node do not cover the electricity cost of my server (which I also use for other projects anyway), I have already earned back the fees I paid to open my channels. Note that some of my channels were not opened by me which means that I did not have to pay anything for them. Also, I saved some money by opening more than one channel in a single transaction and opening dual-funded channels so that I would not have to worry about using paid third-party services to balance my channels.

You might be surprised by the number of failed forwards - 389 payments. Why are there so many of them? More than 95% of them failed at some further point in the route. It's difficult to tell how many of them were legitimate payments and not channel/route probing attempts. I used some website a couple of time to probe routes from/to my node and each time I would get another three failed payments.
2  Bitcoin / Electrum / ElectrumX - extremely long sync time on: May 15, 2021, 11:13:47 PM

I am running a virtual machine under Proxmox with bitcoind and ElectrumX. It took about 24 hours for the ElectrumX to process about 430,000 blocks. It's been a few more hours and only 15,000 blocks were processed.

ElectrumX dbcache is set to 2000 MB. Bitcoind dbcache is 2048 MB. I assigned 4 cores and 5 GB of RAM to the VM. htop reports that electrumx-server process uses less than 10% of the CPU (11th gen Intel i5). Both bitcoind and ElectrumX use less than 2 GB of RAM in total. They both read/write data from the same external SSD.

Height       Machine A     Machine B
447,168       2d 13h 20m      9h 47m

Machine B: a late 2012 iMac running Sierra 10.12.2, 2.9GHz quad-core Intel i5 CPU with an HDD and 24GB RAM. Running bitcoind on the same machine. DB_CACHE set to 1,800. LevelDB

I wonder if there is a major bottleneck in my setup or if I misconfigured something.
3  Bitcoin / Bitcoin Technical Support / Raspberry Pi - corrupted blocks on: January 20, 2021, 04:59:05 PM

does anyone know if there are any Raspibolt/Raspiblitz alternatives with c-lightning support instead of LND? I had no luck so far in finding any. I will end up installing everything manually if I can't find any alternatives by tomorrow.
4  Local / Polski / Lightning Network - ogólna dyskusja on: January 11, 2021, 10:26:26 AM
Z uwagi na szalejącą cenę Bitcoina, a co za tym idzie - szaleją również opłaty za transakcje, myślę, że warto by było powrócić do tematu Lightning Network.

Na sam początek mogę polecić Wam portfel BlueWallet. Środki "on-chain" są pod pełną kontrolą użytkownika, zaś środki "off-chain" zarządzane są przez osobę postronną. Nie trzeba martwić się otwieraniem kanałów oraz ich odpowiednim balansowaniem. Odbieranie płatności przy użyciu Lightning Network jest możliwe zaraz po utworzeniu portfela - nie ma konieczności jego wcześniejszego doładowania. Każdemu chętnemu mogę przesłać 1000 satoshi do wykorzystania w dowolny sposób. Chętnych proszę o wygenerowanie wezwania do zapłaty ("invoice") i przesłanie go pod tym tematem.

Przydatne tematy:

- Basics of the Lightning Network/Podstawy Lightning Network - wyjaśnienia, portfele (tłumaczenie starej wersji oryginału),
- The Lightning Network FAQ/Częste pytania dotyczące sieci Lightning Network (tłumaczenie starej wersji oryginału),
- Electrum Lightning Network walkthrough/Przewodnik do sieci Electrum Lightning.

Jeżeli macie jakieś pytania, na które nie mogliście znaleźć odpowiedzi w powyższych tematach, to z chęcią na nie odpowiem poniżej.
5  Bitcoin / Electrum / Electrum Lightning Network walkthrough on: July 04, 2020, 06:39:46 PM
Table of contents

      1. Introduction
      2. Creating a payment channel
             a) Disabling Trampoline routing
      3. Sending a payment
      4. Receiving a payment
      5. Closing a channel
      6. Frequently Asked Questions

1. Introduction

You don't know what the Lightning Network is? Visit "Basics of The Lightning Network" and "The Lightning Network FAQ" first.

The Lightning Network support has been introduced in the recent Electrum update (4.0.1). Lightning Network support is experimental - neither I nor Electrum are responsible for any loss of funds. This guide has been updated for the 4.1.1 version. The walkthrough for versions prior to 4.1.0 can be found here.

Important things to note:

- a P2WPKH wallet is required; this type of wallet is now the default for standard wallets,
- Lightning funds cannot be restored from seed. You need to perform backups ('File -> Save backup'). You have to make a new backup every time you open a new channel. Backups will forcefully close channels,
- do not copy your wallet file! If you run an old copy of your wallet with active LN channels, some nodes might broadcast a penalty transaction if any of your channels' balance has changed,
- in a case of an uncooperative channel close, you have limited time to verify if the other node didn't cheat by broadcasting an old state of the channel (see #5),
- you cannot open a channel smaller than 0.002 BTC,
- Electrum creates private channels which do not route payments.

2. Creating a payment channel

Payment channels related options are available under 'Channels' tab which is hidden by default. You can enable it by going to 'View -> Show Channels'

In the 'Channels' tab there are two available options. 'Swap' allows to exchange on-chain coins for an LN incoming payment and vice-versa. 'Open Channel' allows you to create a new payment channel. Click on that option.

By default, Electrum does not download the network graph and delegates path estimation to special trampoline nodes to which only you can connect. If you want to open a channel to any Lightning node, see Disabling Trampoline routing.

As for now, there are three hard-coded trampoline nodes: ACINQ, Electrum and Hodlister which you can choose from the drop down list. The minimum funding value is 0.002 BTC.

Next, you have to select the funding transaction fee. If the transaction is not confirmed within 24 hours, the channel won't be created. It is another hard-coded value.

You might encounter these two errors when opening a channel, the former was mentioned above. The latter is other node's fault. Choose a different node if it happens.

Your payment channel will become active once your transaction reaches 3 confirmations.

a) Disabling Trampoline routing

At the top of the Electrum window, select "Tools -> Preferences".

Select "Lightning" tab and make sure that "Use trampoline routing (disable gossip)" is unticked. Close the window.

You should see a new icon in the bottom-right corner. The number indicates the progress of obtaining information about all publicly known nodes and channels. Having an up-to-date map of the network might help with finding the best route for your payments.

Now, you can open a channel to any Lightning Network node. If you are not sure which node you should choose, select 'Suggest'. If you want to decide on your own then use this Lightning Network explorer to find a suitable node.

3. Sending a payment

Invoiceless payments are not standardized yet, so you need to get an invoice from the person your are trying to send your coins to. Lightning Network payments are routed through other nodes if you are not directly connected to the recipient. Such payments might fail from time to time if there is no route available to the destination node or if the payments is too large. The latter problem has been addressed by splitting one large payment into multiple smaller ones, but this feature is not available in this release. Note that each node participating in the routing process might charge a small fee.

Go to the 'Send' tab and paste your invoice. 'Description' field will be automatically filled since this information is usually provided in the invoice. Note that you will not be able to send all of your coins. Each channel must maintain a reserve for its closure fees. You can see how much you can send from each channel by going to the 'Channels' tab, right-clicking on a channel and selecting 'Details...'. You cannot send from multiple channels at once.

Your transaction might be instant or it might take a few seconds. I have sent a transaction worth about $5.59 (0.00065301 BTC) and paid only a 1 satoshi fee. Your transaction will look like this in the 'History' tab:

4. Receiving a payment

Before you create an invoice, you need to learn how much you can receive. Your inbound capacity depends on if there is any remote balance on any of the channels. You can't receive payments without spending any coins. Switch to 'Channels' tab, right-click on a channel and select "Details...". You will see 'Can Receive' there. Note that an incoming payment will be sent via a single route to one of your channels so you shouldn't add up all of your channels' inbound capacity just like Electrum does in the 'Channels' tab.

To create an invoice, go to 'Receive', fill out 'Description' and 'Requested amount', optionally change when the invoice should expire and press 'Lightning'. Your invoice will be shown on the right side. Copy it and send it to the other person. Keep in mind that you can't receive payments over the Lightning Network if Electrum is turned off.

Closing a channel

Closing a channel is really simple. Go to the 'Channels' tab, right-click on the channel you want to close and select 'Close channel'. You should use 'Force-close channel' only if the other party is offline. In such a case, you will get your funds back after up to two weeks (2016 blocks). Most channels can be force-closed with a 144 block (~1 day) delay. In both cases, you won't be able to specify the closing transaction fee. Other implementations have such a feature.

5. Frequently Asked Questions

Can I make money off payment routing?

No, Electrum creates private channels which are not advertised across the network so they cannot be used for payment routing.

Can I open a channel if I use a hardware wallet?

Yes, you will need to connect your hardware wallet to sign the channel opening transaction. You won't need your hardware wallet to send Lightning payments.

Why does my payment fail? "Payment failed. No path found"

There are a couple of possible causes:

1) The receiver might not have enough incoming liquidity,
2) There is no path between the nodes both of you are connected to,
3) There is an available path, but the payment is too large to go through,

Is there any risk in using the Lightning Network?

The biggest risk is that the other person might attempt to steal your coins by broadcasting an old state of the channel when you are offline. This can be feasible for the other party if you sent some coins and received them back through the same channel at some point.

Electrum founds channels with a to_self_delay of 1024 blocks (~1 week), so this means that you can be safely offline for slightly less than a week. As for now, this value can be only changed directly in the code. If you are afraid of losing funds, you should set up a watchtower or use a different implementation and run your node 24/7.
6  Bitcoin / Hardware wallets / Trezor announces Tropic Square on: May 14, 2020, 11:26:49 PM
Trezor announced the foundation of Tropic Square - a company whose aim will be to develop a chip which will be open and fully audible. The rest of the article reveals that Trezor attempted to create a new device with Secure Element and they managed to find some flaws in the chip which they are unable to disclose due to NDA. You should read the rest of the text on your own, especially if you are disappointed with the recently found vulnerabilities in Trezor.
7  Bitcoin / Hardware wallets / BitHD Razor review on: April 30, 2020, 01:13:49 AM

I was provided with a test unit by BitHD about a month ago. HCP has already unboxed the wallet so I am going to skip this part. Just for the record, I am not affiliated with BitHD and I was not paid to post or modify my review. A list of sellers is available at At the time of writing this review, the device costs $99.99 + shipping with a limited warranty.


The device feels surprisingly sturdy considering its thickness and weight (12 grams). I tried bending it a little and I believe it should withstand any stress while being in a wallet. On the bottom, there is a proprietary connector which is used only for charging. All the communication is handled via Bluetooth. The back is made out of aluminium while the front is plastic. On the front, there are two tactile buttons and a 128x64 OLED screen which is exactly the same as the Trezor One's except being a little bit brighter.

Note: Both screens are fully functional. The black lines are my camera's fault.


Razor runs a modified version of trezor-mcu which was used by Trezor One until last year. The code is open-source and available at GitHub. This means that most of the actions that take place on the device (PIN entry, seed generation/recovery, confirming transactions) look exactly the same as on Trezor One. Razor requires BitPie app which is available for both Android and iOS. At the moment, it is not possible to use Razor with a PC and any third-party software.

The app dashboard has a simple design. The 'More' button reveals a few more options such as signing Bitcoin messages (available only for legacy addresses temporarily), address book, a list of previously generated addresses and a shortcut to the settings. It is possible to add those hidden features to the main screen; the existing shortcuts can also be hidden if you don't intend to use them.

The hardware wallet settings are hidden under 'Me -> BitHD Setting'. Here, one can change the device label (this setting does not affect the Bluetooth name), reset PIN, switch between Chinese and English, enable Passcode Account (which is basically a single passphrase protected account), wipe the device, verify the seed (without exposing it to the phone), upgrade firmware and do a few other minor things.

The device generates legacy addresses by default but it is possible to change the address type to both nested and native SegWit. It would be nice if nested SegWit was the default type in the future! The wallet supports pay-to-many, local labels, spending the whole balance, saving addresses in a address book and adding OP_RETURN opcode. There is no coin control; one cannot freeze coins or spend from specific addresses.

At the time of writing this review, Razor supports BTC, LTC, BCH, BSV, EOS, DASH, ZEC, USDT-ERC20/OMNI and DOGE.

Comparison with other wallets

Razor has a strong competition. It costs almost twice as much as Trezor One and Ledger Nano S. It offers basically the same features as Trezor One. However, Razor lacks support for some coins that Trezor One supports. I have also used Ledger Nano X for some time and both devices offer smooth Bluetooth experience. There weren't any problems with it during normal usage and software updates. The Nano X costs just slightly more (+$19), offers better altcoin support and a different security model.

There is a similarly priced and looking product - CoolWallet S. While the form factor is identical, it is a completely different device. It has an e-ink display which can display limited amount of information compared to Razor's OLED display; it uses a secure element while Razor has the same microcontroller as Trezor One and its software is not open-source.


Is it worth its price? Well, if you don't need a credit card form factor then there are cheaper or slightly more expensive alternatives which have a similar or even greater functionality (third-party app support, more altcoins supported, better hardware). However, if you are interested in having a hardware wallet in your wallet, Razor seems to be the most interesting of the very few options available on the market. Needing a small wallet and given the choice between CoolWallet and Razor. I would go for the latter one. Again, it all comes down to personal preference and priorities.

Feel free to ask me any questions. I also own Trezor One, Trezor T and Ledger Nano X if anyone would be interested in more detailed comparison between these wallets. Although, I don't think if there is anything more I could add.

Official website:
ANN thread:
BitPie bitcointalk profile:;u=1939709
YouTube playlist:
8  Bitcoin / Hardware wallets / Trezor T (2.3.0) and Trezor One (1.9.0) firmware update on: April 16, 2020, 12:41:50 PM
I usually post information about Trezor software updates in their official thread but exceptionally, this update drew my attention. You can read about all the changes here.

A lot of people have been complaining about the unfixable seed extraction which Trezor recommends to mitigate using a passhrase. Trezor T finally can make use of its SD card reader. An SD card can now store a secret which along with the PIN can decrypt the data stored on the device. So, as long as the device owner keeps the SD card and the device separated, physical attacks such as theft or losing the device shouldn't be a problem anymore (if one is afraid that someone would exploit the vulnerability). It's not a perfect solution as some of you will probably point out but at least there's a way to protect the device.

9  Local / Tablica ogłoszeń / Sprzedam nowego Ledgera Nano X on: August 01, 2019, 07:55:50 PM

czy ktoś z tu obecnych byłby zainteresowany kupnem Trezora T? Zastanawiam się nad zmianą na Ledgera X, gdyż będę potrzebował mniejszego urządzenia, które z łatwością będę mógł używać poza domem. Pre-order złożyłem pod koniec 2017 i urządzenie otrzymałem na przełomie lutego i marca 2018 roku. Zainteresowanym mogę przesłać zdjęcia, urządzenie jest w dobrym stanie.
10  Bitcoin / Hardware wallets / Ledger Live now supports Bech32 addresses! on: July 17, 2019, 02:54:43 PM
Ledger has just released a new update in which support for native SegWit addresses has been introduced.

What are the benefits of using such addresses?

- lower transaction size,
- smaller QR code,
- case-insensitivity.

Note that some services might not be able to send to native SegWit addresses. If you need full compatibility and still want to save some money on fees then use nested SegWit addresses (they start from 3).
11  Economy / Services / Rath's Lightning Network support service on: July 06, 2019, 09:28:37 PM

Would you like to contribute to the network by running your own node? Maybe you are having a hard time choosing the right wallet? You have just found the right place!

I am willing to help anyone who is interested in trying out the Lightning Network. Don't miss the Lightning hype train Cool

Make sure to take a look at the following threads before contacting me!

The Lightning Network FAQ,
Basics of the Lightning Network,
Electrum Lightning Network walkthrough.

I am also running my own c-lightning node. I can consider founding a dual-funded channel if you contact me beforehand.

My service is free of charge.

You can contact me on Telegram (@BitCryptex), send me a private message or an e-mail (, or reply to one of my threads.
12  Bitcoin / Development & Technical Discussion / The Lightning Network FAQ on: June 26, 2019, 09:36:04 PM
This thread is now self-moderated. The previous one got derailed. Please, don't discuss here whether or not the Lightning Network is a good scaling solution.

If you don't know anything about the Lightning Network, consider reading "Basics of The Lightning Network" first.

Table of contents

      1. Lightning basics
      2. Wallets
      3. Running a node
      4. Concerns
      5. Other questions

Lightning basics

How are coins on the Lightning Network different from the on-chain ones?

They are exactly the same coins. They are stored in a multi-signature address and transactions are settled between two parties without broadcasting anything to the blockchain (except when opening and closing the channel). Every time a payment is settled, a new commitment transaction is signed. Such a transaction reflects the current state of the channel and can be broadcast if one of the participant disappears.

How many times can a payment channel be used?

Payment channels can be used as long as both parties continue to cooperate with each other. Channels do not have any use or time limit.

How large is the Lightning Network?

The total number of nodes, channels and network capacity has been constantly increasing for quite some time now. You can use to see up-to-date statistics. Keep in mind that some channels are private; they are not advertised across the network so they are not included in those stats.

How fast are Lightning Network payments?

They are usually instantaneous. Although, some payments might take a few seconds if a wallet needs to try multiple different paths.

How often do payments fail?

A payment fails if there is no route to the destination or if there is no enough liquidity in the channels in the selected routing path. The latter problem can be mitigated by splitting the payment into few small chunks and sending them through different paths.

How high are transaction fees?

Most channels charge a base fee and a fee proportional to the amount sent, so the larger the payment, the more you are going to pay. You should pay less than 3 satoshi for transactions <= $10 for most of the time.

Are Lightning Network payments more anonymous than on-chain transactions?

Yes, Lightning Network payments are more anonymous. They use onion routing. In short, when a payment is being routed, an intermediary node knows only the previous and the next node in the path. It is impossible to tell who initiated the payment and what the final destination is.


Which wallet would be the best for me?

There are quite a few interesting options for different kinds of users.

No-coiners: Strike

Bitcoin newbies: BlueWallet

Regular users: Phoenix Wallet, Breez Wallet, Blixt Wallet

Advanced users: run your own node Smiley

Electrum also has a built-in support for the Lightning Network. Make sure to read Electrum Lightning Network walkthrough if you decide to give it a try.

Should I run my own node instead of using some wallet?

You could benefit from running your own node in a few ways. Assuming that you would run your node 24/7, you would be able to receive payments at all times. Nodes can also help the network by forwarding payments. You would also be able to take advantage of advanced features like: opening multiple channels in a single transaction, dual-funding and keysend payments.

Do I have to generate an invoice every time I want to receive coins over the Lightning Network?

No, invoiceless (keysend/spontaneous) payments are supported by LND and c-lightning. Most wallets do not support this feature, though.

Why can't I receive coins?

In order to receive Lightning payments, some conditions must be met:

1. Nothing can be received immediately after creating a new payment channel, as ‘room’ for incoming funds has to be made by spending some funds first. A payment channel can be thought of as a full bottle of water: in order to pour something in one first has to pour something out.

2. Each channel implicitly contains a reserve which is unspendable and typically takes about 2% of the channel’s capacity. You must spend an amount matching that reserve to make receiving possible. Unspendable channel reserve is the reason you see a negative receive limit when a new channel is full. It indicates how much you need to spend before anything can be received through the channel.

3. Every payment request is disposable, they can’t be fulfilled twice. So you will need to issue a new individual payment request for every incoming payment you wish to receive.

4. Wallet needs to be online in order to receive off-chain funds.

Can I receive a payment when I am offline?

You need to use a third-party service or a custodial wallet (ex. BlueWallet) for that.

Running a node

Which implementation should I choose?

The most popular implementations are: c-lightning, LND and eclair. Each of them offers slightly different features and third-party plugin/software support. You should research it carefully before making a decision. It is impossible to move existing channels between implementations; you would have to reopen them if you changed your mind.

How much money can you make on running a Lightning Network node?

Unless you have a lot of coins, your earnings won't be enough to cover both hardware and maintenance costs. If you are already running a full node to support the network then a small Lightning node won't put much stress on your hardware.

I have been running a small node (6 channels; ~0.10 BTC capacity) for about 3 months now. I earned over 500 satoshi in the first month during which I was experimenting a lot with my fee settings for each channel. In the second and the third month I earned ~110 and ~160 satoshi respectively without paying much attention to my node. If you want to see up-to-date stats, check out The Lightning Network node experience thread.

Does opening new channels help to increase the earnings?

Maybe. There are also a few other things that you should take into account: your fee policy, liquidity and the average capacity of your channels. It doesn't make much sense to open channels only to large nodes. They very likely already have large channels between themselves. It might be a good idea to open channels to medium sized nodes which are at the opposite ends of the network.

Does my node have to route payments?

You can either create private channels which are not advertised across the network or you can set extremely large routing fees for your channels to discourage other people from using them.

How do channel owners get paid for routing payments?

The routing fee is added to the balance of the person who routes the payment. The total fee charged is calculated as follows: basefee + (amount * feerate / 1000000), where amount is the forwarded amount. Both basefee and feerate can be adjusted individually for every channel. Note that the fee is charged based on the settings of the outgoing channel.

Is running a Lightning Network node demanding?

Even a Raspberry Pi 3 B+ is capable of running a Lightning Network node. Check out RaspiBlitz, RaspiBolt or Umbrel for fast setup. I used to run a full Bitcoin node and LND on a 2 GB Raspberry Pi 4 and everything was working fine. It might be also a good idea to get a cheap used laptop instead. If you still want to buy a Raspberry Pi then consider paying extra for the latest model which is far more superior in terms of CPU performance.

Is there any risk in running a Lightning Network node?

Yes, due to many factors. Lightning Network implementations might contain critical bugs which could be exploited to steal funds locked up in channels. A Lightning node is basically a hot wallet. You should not keep any significant amount of coins on it unless you know what you are doing.

If you don't keep your node online 24/7, someone can attempt to cheat by broadcasting an old state of your channel. An online node would normally broadcast a penalty transaction. This can be mitigated by the use of watchtowers.

Do I have to run a full Bitcoin node?

No, LND supports neutrino; c-lightning allows using a pruned node. It might be a bumpy experience, though. Keep in mind that you might encounter some problems if your Lightning software crashes. Your Bitcoin node could delete a block which still hasn't been processed by your Lightning node.

How do I backup my channels?

You cannot restore your channels from your seed. The backup process varies on the implementation.

LND: you should back up your channel.backup file whenever you open a new channel. You can use it to reconnect to your peers and ask them to close the channel forcefully. Note that if the other node is offline or refuses to cooperate, you won't be able to recover your coins.

c-lightning: read this; you will probably end up using a backup plugin which maintains a full copy of your channel database. You can keep using your channels after restoring such backup.

Can I refill my channel?

Currently, it is impossible to refill a channel without the use of third-party services. Splicing is supposed to address this problem. It will allow to increase/decrease the total capacity of the channel without closing it.

You can use Boltz, Lightning Conductor, ZigZag to exchange on-chain coins to off-chain ones and vice-versa.

How do I balance my channel?

You can balance your channel by spending coins from it. See the answer above. You can also use those services to convert your off-chain balance to an on-chain transaction.

You can open a dual-funded channel. This feature is currently available only in c-lightning and requires both users to enable it manually.

You can also try setting both your base fee and PPM temporarily to zero or some low value to encourage other people to use your channel. Although, you will have no control over the amount of coins that gets moved to the other side in the process.

What happens to milisatoshis when the channel is being closed?

Example: let's assume that after deducting the fee of the closing transaction, node A is supposed to get 6049.4 sat and node B 10300.6 satoshis. Since Bitcoin blockchain supports only up to 8 decimals, we have to do something about milisatoshis. All such values are rounded down and the remaining 1 satoshi is added to the transaction fee.

It is also worth mentioning that if one of the parties' balance is under the dust limit, it is added to the fee instead.

Who pays the channel opening and closing transaction fee?

The channel opening transaction fee is always paid by the founder of the channel. If the channel is closed cooperatively then the founder also covers the transaction fee. An uncooperative channel close involves two on-chain transactions. If the channel is closed by the other participant then they cover the fee of the second transaction.

How does uncooperative channel close work?

First of all, the timelock is decided before the channel is established. By default, most nodes force the other peer to wait 144 blocks (~1 day). The maximum acceptable value by default is 2016 blocks (~2 weeks). I configured my node to create channels with their_to_self_delay = 432 blocks (~3 days), so if someone decides to close the channel opened to my node uncooperatively, they will have to wait 432 blocks (after the commitment transaction has been included in a block) before they can spend the output belonging to them. Those timelocks are relative which means that you do not have to sign a new commitment transaction whenever a new block is mined. New commitment transactions are signed periodically because their fees need to match the current state of the mempool. There is no point in paying 60 sat/vbyte when 1 sat/vbyte transactions are getting confirmed in just a few minutes. It also applies the other way around.

The first transaction is the commitment transaction. Let's say there's node A(lice) and node B(ob), and node A broadcasts the commitment transaction. That commitment transaction includes two outputs:

- output #0: 3 BTC (spendable by node B's private key) - reflecting node B balance
- output #1: 6 BTC (RSMC) - reflecting node A balance

There is one more important detail before we go any further. Whenever a new commitment transaction is signed, both parties exchange revocation keys for the previous commitment transaction so that they can both be sure that the other party is very unlikely to broadcast an old state of the channel.

RSMC is short for Revocable Sequence Maturing Contract. Such an output contains a relative timelock. This means that you can't spend this output until a certain amount of blocks have been mined since the transaction which includes that output was mined.

Let's say node B didn't change the default value of 144 blocks and the commitment transaction has been confirmed. There are two possible scenarios.

1) Node A attempts to cheat and broadcast an old commitment transaction. Node B has 144 blocks to spend the RSMC output using his and node A's revocation key which he got while they were working on a new commitment transaction.

2) Node A broadcasts the latest commitment transaction. In such a case, node B never got node A's revocation key for that commitment transaction, so he cannot spend that RSMC. Node A can broadcast another transaction spending that output after 144 blocks have been mined.


Is the Lightning Network centralized?

The common argument is that users are more likely to open channels to large nodes rather than small/medium ones. While that's true, as the networks continues to grow, we can expect hundreds or even thousands of nodes to concentrate end users. This post speculates on possible types of nodes; you should read it if you are still concerned.

Can it have a negative impact on the first layer?

If many channels are closed at once, the transaction fees could immediately spike and remain high for an extended period of time.

Does the Lightning Network solve Bitcoin's scalability problem?

Not completely. The Lightning Network was designed mostly for micro-transactions which would not be cost-effective on the first layer. Large payments are also feasible thanks to multi-path payments. Opening a channel involves an on-chain transaction so if we expect every user to open at least one channel, the blockchain would quickly become congested for a long time. Thus, other scaling solutions are needed. Alternatively, more layers can be built on top of the Lightning Network.

What would happen if some nodes went temporarily offline?

Should many large nodes go offline at the same time, payment failures might become more common. If you have only one channel and your peer goes offline then you obviously won't be able to send and receive any payments.

Other questions

What shops accept Lightning Network payments?

Here you can find a list of merchants who accept LN payments.

Do any exchanges support the Lightning Network?

Yes, the biggest exchange which supports Lightning deposits and withdrawals is Bitfinex. Here you can find an up-to-date list of exchanges which support the LN.

What are the upcoming features?

Dual funded channels - both parties will be able to fund a channel. This feature is available in c-lightning (experimentally).

Splicing-In & Out - it will be possible to add and remove funds from existing Lightning Network channels without having to close them.

Channel factories - existing Lightning Network channels could be used for creating new channels without broadcasting anything to the Bitcoin network. Normally, a channel is opened to only one person. In channel factories, there is a group of people. Group members maintain channels between themselves. More involved users = more savings. If one of the participants is uncooperative, existing channels are not affected - new channels can't be created, though.
13  Bitcoin / Wallet software / Lightning Labs Lightning Network wallet on: June 19, 2019, 10:19:34 PM
Lightning Labs has released a new non-custodial Lightning Network wallet for both iOS and Android. The wallet is powered by LND and neutrino which allows to verify Bitcoin transactions without having to run a full Bitcoin node. Interestingly, it supports autopilot but lacks many features that other wallets have. It's still in alpha, though. More information can be found here.
14  Bitcoin / Wallet software / Zap (Android) has been released! on: June 19, 2019, 09:43:53 AM
A few days ago, Zap for Android was published. Currently, it only allows user to manage funds and see the channels of an external LND node. iOS version has way more features but that's because the Android version has been developed by a different user who did it voluntarily. Full story can be read here.

This wallet is currently useful only to those who are running a LND node. Creation of payment requests is much easier with it. lndconnect is required on the node.
15  Other / Meta / Lightning Network board on: June 05, 2019, 08:46:41 PM
Lightning Network's popularity has been growing for some time now. More and more threads will be created about it due to growing interest in new scaling solutions. My suggestion is to create a separate board dedicated to the Lightning Network. This will make finding information on it easier for some people.

Recent/Popular threads about the Lightning Network

The Lightning Network FAQ

I am willing to help with keeping this board clean and active.
16  Bitcoin / Hardware wallets / Ledger backup plan on: April 04, 2019, 08:56:47 AM
Ledger introduced a new bundle to their website. Now, you can buy Ledger Nano S and Ledger Nano X at the discounted price (€149).
17  Other / Meta / [Polish section] Merit source application on: March 05, 2019, 08:07:27 PM
The Polish section certainly lacks an active merit source. Our moderator and the only merit source malevolent hasn't been really active in the past few months. He cleaned up our section a bit a few days ago.

There are a few active posters in the Polish section who are doing their best to encourage new users to create new threads and posts in our section instead of using a forum dedicated to the Polish community. I am constantly trying to reward them for their hard work with merit. It might surprise most of you, but, currently, I have exactly 113 sMerit available to spend. Why do I even bother to submit an application? Well, I am trying to save up as much merit as possible so that I could reward people for more sophisticated tasks. Unfortunately, because of this I tend not to reward some posts and wait for others to do so. I wrote a few tutorials and asked if there was anyone interested in translating them for merit. The results are listed below:

The Lightning Network FAQ - Częste pytania dotyczące sieci Lightning Network
Basics of the Lightning Network - explanation and wallets - Podstawy Lightning Network - wyjaśnienia, portfele.
[Guide] Hardware wallets - which one is a good choice? - [Poradnik] Portfele sprzętowe - który wybrać?
TUTORIAL: How to use Electrum (for beginners) - TUTORIAL: Jak korzystać z Electrum (dla początkujących)
TUTORIAL: How to use Electrum (for advanced users) - Jak korzystać z Electrum (dla zaawansowanych)

cryptovigi is maintaining a thread which summarizes merit spent on our board. I am not going to select 10 posts which haven't been merited enough in our section. Other members did a great job by meriting existing threads but almost all of them have run out of merit and they won't earn it anytime soon since they post a lot in our local board in order to make it more lively.

#1 Update:

I have also selected a few posts which deserve more merit in my opinion. Most of them are quite long so I decided to post links instead of quoting them.

18  Bitcoin / Project Development / - dedicated LN community site with various built-in LN functionality on: February 18, 2019, 11:02:46 PM

I would like to present you an idea with which I and Zand_ came up while we were solving his Lightning Network node problems. We would like to create a place where people could easily discuss Lightning Network related problems and projects. Some tutorials are out-of-date which makes it even more difficult to start using the Lightning Network. We would like to fix that by rewriting and keeping them in one place. I have already made two long threads on bitcointalk (Basics of the Lightning Network and The Lightning Network FAQ) which I believe helped quite a few people to understand what it is all about.

We would like to encourage people to use the Lightning Network by introducing a small fee for adding a new thread or post. There would be a section excluded from this rule for inexperienced users where they could describe a problem which makes it impossible for them to pay the fee. We would like to implement a system similar to the merit on bitcointalk. It would be great to see people thanking each other by sending a few satoshis. We are aware that some people won't be able to generate the invoice at specific time so we will handle it instead and pay out the reward on demand.

We would appreciate if you could answer a couple of our questions.

1) Which forum software would you prefer? Invision Community or Discourse?

2) Do you like the idea of paying a small fee (e.g. 1 satoshi) for making a post?

3) What do you think is an appropriate cost for posting a thread vs a comment?

4) What other functionality would you like to see in the site?

5) What features do you think could be added to further incentivize use of the site?

6) Which name do you prefer? or Both domains have been already bought by us
19  Bitcoin / Hardware wallets / [PSA] Native support for Ethereum in Trezor web interface! on: December 04, 2018, 04:07:07 PM
Native support for Ethereum, Ethereum Classic and ERC20 tokens is now available in Trezor Beta Wallet. One can still use MyEtherWallet, MetaMask and other compatible Ethereum wallets. No software updated was released and there is no need to do anything beside using the beta wallet instead of the other one. If you have been using other wallets, your funds should be available. Passphrases are obviously supported.

20  Local / Polski / Jak otrzymywać powiadomienia o zacytowaniu wypowiedzi lub @wspomnieniu? on: November 28, 2018, 08:27:38 PM
Aktualizacja 09.05.20

Bot Piggy'ego przestał działać kilka miesięcy temu. Pojawiły się dwie alternatywy. Bot od LoyceV, który aktualizuje powiadomienia dwa razy w ciągu godziny i przedstawia je w formie prostej strony (przykład) oraz bot od giammangiato, który przesyła powiadomienia o zdobytych meritach i zacytowanych postach poprzez Telegram.

Aktualizacja 17.05.20

Wczoraj pojawiła się kolejna ciekawa alternatywa dla powiadomień, tym razem od TryNinja. Oprócz powiadomień o zacytowaniu posta lub wspomnieniu, bot wysyła także informacje o zdobytych meritach. Co najważniejsze, wykrywa różne kombinacje nicku (BitCryptex, @BitCryptex, bitcryptex), co akurat jest trochę problematyczne dla bota od giammangiato.

Skrócona wersja:
Możesz wypróbować nowy system powiadomień poprzez wysłanie prywatnej wiadomości do Maggiordomo zatytułowaną subscribe wraz z linkiem do twojego tematu (najlepiej stworzonego w dziale Archival), który będzie używany przez bota do informowania ciebie o wzmiankach oraz zacytowaniu twojej wiadomości. Jeżeli zrobisz wszystko poprawnie to otrzymasz wiadomość z podstawowymi informacjami o bocie.
Kiedy ktoś napisze @twojaNazwaUzytkownika lub @twoja=NazwaUzytkownika (jeżeli twoja nazwa użytkownika zawiera spację to musi zostać zastąpiona przez = ) otrzymasz jedno lub więcej powiadomień w swoim temacie.

Przeczytaj sekcję komendy aby dowiedzieć się co jeszcze możesz zrobić.
Przeczytaj sekcję telegram aby dowiedzieć się jak otrzymywać powiadomienia poprzez telegram.

Co wywołuje powiadomienie? (cudzysłów " jest po to, aby ułatwić zauważenie spacji):[/s]
" @użytkownik "
" @użytkownik* "
gdzie * jest dowolnym znakiem. Powinno to uniknąć sytuacji gdzie "," "." "?" oraz inne znaki powodowały brak powiadomień.

Jeżeli @nazwaUżytkownika znajduje się na początku lub na końcu wiadomości to po niej musi dodatkowo zostać umieszczona spacja.

"@użytkownik jak się miewasz?"
"cześć jesteś @użytkownik "  
"cześć @użytkownik
jak się masz?"

Przykłady poprawnego wspomnienia:

@asche! @actmyname? @Loyce( test ) @babo.

Te nie zadziałają:

@Halab?, @TomCrypto... @Piggy(test)

Dłuższa wersja:
Pierwszą z zaplanowanych funkcji bota jest powiadamianie użytkownik o tym, że ktoś o nich wspomniał bądź zacytował ich post. W tej chwili ta funkcjonalność działa poprawnie, a nowe będą powoli dodawane. Potrzebna jest większa ilość użytkowników do przetestowania czy bot będzie działał poprawnie przez dłuższy czas.

Jak działają powiadomienia?

Jeżeli poprawnie powiążesz swoje konto z botem to otrzymasz powiadomienie jeżeli ktoś:
  • Napisze @TwojaNazwaUżytkownika lub @Twoja=NazwaUżytkownika (znak "=" powinien zostać użyty tylko w wypadku gdy twoja nazwa użytkownika zawiera spację)
  • nowe: Bezpośrednio zacytuje twój post
  • nowe: Napisze twoją nazwę użytkownika bez @

Zostaniesz powiadomiony przez użytkownika Maggiordomo. Otrzymasz jeden lub więcej linków oraz częściowy cytat postu, w którym zostałeś wspomniany.

W przyszłości pojawi się więcej opcji modyfikacji treści powiadomień oraz ich całkowitego włączania/wyłączania.

Jeżeli nie zarejestrujesz się to nie będziesz otrzymywał powiadomień od bota.

Jak komunikować się z botem i co on robi?

Zanim będziesz mógł otrzymywać powiadomienia od bota to musisz stworzyć swój własny temat (najlepiej w sekcji Archival), w którym bot będzie mógł dodawać posty. Jeżeli chcesz otrzymywać wiadomości poprzez Telegram to nie musisz tworzyć takiego tematu. Sposób postępowania został opisany poniżej.

  • Aby się zarejestrować: wyślij wiadomość do użytkownika Maggiordomo zatytułowaną subscribe wraz z linkiem do twojego tematu w treści. Otrzymasz wiadomość o poprawnym zarejestrowaniu się wraz z podstawowymi informacjami. Jeżeli chcesz otrzymywać powiadomienia poprzez Telegram to spójrz niżej.
  • Aby zrezygnować z otrzymywania powiadomień: wyślij wiadomość do użytkownika Maggiordomo zatytułowaną unsubscribe i wpisz cokolwiek w treści wiadomości aby móc ją wysłać

Wysyłając wiadomość zatytułowaną subscribe lub options (jeżeli już subskrybujesz) to w treści wiadomości możesz użyć następujących parametrów:



Alias inna nazwa, która będzie wywoływać powiadomienie bez lub z @ w zależności od poniższych ustawień
Twój temat w tym miejscu bot będzie dodawał posty dotyczące twojego konta
Tagusername, włącz/wyłącz powiadomienie gdy ktoś użyje @ do wspomnienia ciebie
Quote, włącz/wyłącz powiadomienie o zacytowanie twojego posta
Plainusername,  włącz/wyłącz powiadomienie gdy ktoś napisze twój nick bez @
Automention,  włącz/wyłącz powiadomienie gdy sam wspomnisz o sobie
notifyby,  wybierz gdzie chcesz otrzymywać powiadomienia (forum/telegram/oba)

Wszystkie opcje powyżej są domyślnie włączone za wyjątkiem aliasu, który musi być ustawiony ręcznie.

Nie będziesz mógł otrzymywać powiadomień jeżeli ktoś inny używa tego samego aliasu.

Powiadomienia poprzez Telegram


Przed albo po rejestracji skontaktuj się z @Maggiordomo_Service_bot poprzez telegram z tego samego konta, które podałeś podczas rejestracji. Napisz dowolną wiadomość aby powiązać oba konta.

Jeżeli korzystałeś już z bota to wyślij wiadomość zatytułowaną options o treści:


Jeżeli jeszcze nie korzystałeś z bota, a chcesz otrzymywać powiadomienia tylko poprzez Telegram to wyślij wiadomość zatytułowaną subscribe o treści:

Lista użytkowników, którzy otrzymują powiadomienia od bota znajduje się tutaj:

Musisz być autorem tematu, aby bot mógł dodawać do niego posty (powiadomienia).
Jeżeli zacytujesz post, który zawiera @JakiśUżytkownik to ten użytkownik nie otrzyma powiadomienia.
Możesz wspomnieć kilkoro użytkowników na raz: @Użytkownik1 @Użytkownik2 @Użytkownik3 ...

W tym momencie bot ma rangę Jr. Member więc obowiązują go ograniczenia związane z tą rangą. Musi odczekać około 8 sekund pomiędzy postami więc jeżeli dostaniesz więcej niż jedno powiadomienie to będą one stopniowo dodawane.

Ograniczenia i pomysły:
  • Temat, w którym są dodawane powiadomienia nie może być ogłoszeniem ani bounty w celu zapobiegnięcia "odświeżaniu" tematu.
  • W przyszłości aby otrzymywać powiadomienia od bota to będzie trzeba zdobyć kilka meritów

Przypadki użycia:
  • zachowanie na przyszłość jakiegoś posta lub tematu
  • wskazanie posta, który powinien zostać nagrodzony meritem
  • zwrócenie czyjejś uwagi na konkretny post/temat

Czasami bot może być wyłączony przez co możesz nie otrzymać powiadomienia na czas lub w ogóle.

Powyższy tekst jest tłumaczeniem tego tematu autorstwa @Piggy[/s][/s]
Pages: [1] 2 »
Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!