The protocol is purposefully built in such a way that DoS attacks are mitigated and reduced in impact. Each channel_announcement contains a reference to the funding transaction, and each node verifies that this funding transaction matches the information in the announcement. This makes the creation of a channel_announcement non-free, and binds some resources ...
When you start using lightning, the minimum bitcoin you need is the cost of opening the channel + anything else you want in the channel.
The cost of opening the channel is equal to the fees you pay to send a transaction.
So as a minimum you will need:
the lowest fees you can get away with to send a transaction + the amount you want to put in the channel.
This might not be a satisfying answer but if you look at the eclair git repo and their Wiki you will find that the eclair API is a JSON API and is exposed via http and web sockets and can be queried with regular http requests.
If you look at the c-lightning python client it is a tool that talks via a unixDomainSocket to the exposed lightningd api. So I ...
While Eclair itself doesn't provide the information, you can use the information from Eclair to look up the capacity using some other block information provider.
The capacity of channels is not part of the gossip information broadcast over the Lightning Network. The capacities are looked up on the blockchain from the shortChannelId, which fortunately is ...
Click the three dots in the top right corner, tap "Network Info".
Your NodeId is visible on this screen
Now, go to the URL ip.tyk.nu to find your IP address.
Now, in a Linux prompt (or WSL), install the PyPI qrcode package. On Ubuntu, it is available in the python3-qrcode package.
Now, execute this command (substitute the values you just learnt):
Here is a simple implementation that just works
def __init__(self,host, port, password, service_name=None, session=None):
self._host = host
self._port = port
self._password = password
self._session = session
if session is None:
self._session = requests.Session()
I don't see the attack here. You cannot claim you are a different node, because you cannot sign for that. All you can do is give a false IP address FOR YOUR OWN NODE. Which probably just leads to people not being able to reach you.
I guess the only interesting case is where the IP you give is already known as another node. Maybe the spec should spell out ...
Each channel participant sets their own policy for forwarding HTLCs through the channel. They broadcast a channel_update message containing the policy, which is received and forwarded over the gossip network, and also received by the channel's counter party. The channel_update has a bit flag indicating whether the update belongs to node1 or node2.
A missing ...
As far as I know there is no way of knowing this on a protocol level... What you could do is to set up your own nodes (each node with a certain implementation) or some people say publicly which nodes they run. For example my node is c Lightning, ACINQ is using eclair and I believe rompert is running on lnd.
Also on 1ml.com some owners register their nodes ...
It seems you're having technical issues with the app. I would recommend to bring this issue to the devs on their forum: https://gitter.im/ACINQ/eclair. Also, please prepare to have all info such as the version of the app, your OS, mainnet or testnet.
There are a few lightning network full node implementations, that follow the LN specifications. Note that in many ways the specs, and software, are considered experimental, and should be used at your own risk.
C-lightning is written in C
LND is written in Golang
For future reference:
Lightning Network explorers are also nodes and just make their own "world view" of the network publicly available
Your node will only become publicly visible once a channel has been opened and that information is announced to the network (and reaches the Explorer)
Explorers do update irregularly, so it makes sense to give it some time ...