Show HN: Lightning Network Search and Analysis Engine
1ml.com
1ml.com
The LN claim is basically decentralized BGP but much more complex and prone to race condition errors.
https://www.youtube.com/watch?v=Ug8NH67_EfE&feature=youtu.be...
The white paper doesn't even mention how LN routing works!
8.4 Payment Routing
It is theoretically possible to build a route map
implicitly from observing 2-of-2 multisigs on the
blockchain to build a routing table. Note, however,
this is not feasible with pay-to-script-hash transaction
outputs, which can be resolved out-of-band from the
bitcoin protocol via a third party routing service.
Building a routing table will become necessary for
large operators (e.g. BGP, Cjdns). Eventually, with
optimizations, the network will look a lot like the
correspondent banking network, or Tier-1 ISPs.
It seems impossible to implement true decentralized routing, so it's likely they're using some sort of hack to prioritize "masternodes" as the backbone routers instead of actual peer to peer routing.Satoshi himself proposed the first version of payment channels [1]. The Lightning Network paper has zero authors from Blockstream [2]. At least two other entirely independent companies are working on Lightning Network implementations [3][4]. It's well understood how trustless LN transactions work [5]. The spec [6] and code are open source, feel free to look for a "backdoor".
1. https://en.bitcoin.it/wiki/Payment_channels#Nakamoto_high-fr...
2. https://lightning.network/lightning-network-paper.pdf
3. https://github.com/lightningnetwork/lnd
4. https://github.com/ACINQ/eclair
> How do we know that there isn't an easy backdoor that allows this network to be controlled for Blockstream's purposes?
The code of clightning is open source, so is the code of most known clients out there.
> The fact that it is so complex and ill defined is dangerous and an antithesis of decentralized system design and ethos
Your comment really seems like a baseless conspiracy theory full of ad hominems with no proof of what you mention: - it's not that crazy complex compared to all the intricacies / op codes and game theory of the Bitcoin base layer - it is more easily distributed than the base layer since it's easier to run a LN node by itself (albeit still relying on a bitcoin full node that may not be in your control if you wish it so).
And like other said, Blockstream doesn't have many employees working on the base protocol (3 now afaik since Luke Dash JR & G.Maxwell do not work for Blockstream anymore). The few they have actually made very useful contributions to the code base since 2011/2012 which you can easily see through and most of their code is also used in all forks of Bitcoin aka BTG, BCH etc...
> They were responsible for all the propaganda and talking points against bumping the block size leading to the BCH fork
Any proof on that? Almost no bitcoin developers (albeit none apart of maybe 1 if you count Gavin which didnt contribute for years on the code base) left to work on this particular fork. There was no scientific consensus stipulating larger blocks (than 4mb) would be safe hence why the community at large did not support BCH (and why it has a minority of market share and mining share, TX usage etc).
What do you mean "impossible to implement true decentralized routing"? Many examples of decentralized distance vector and link state algorithms exist. I'm not sure what they are doing but routing isn't some mystical thing that requires a master node.
Here's a thing I did a while ago: https://github.com/jtremback/reactive-payment-routing
It seems like p2p routing might work for a small network, but the complexity turns chaotic at scale very quickly. I guess time will tell how effective the LN implementation is.
Which I have to say, is a very cool project and one I would love to help spread when your protocol can handle 3G or LTE-like speeds. Keep up the good work: you're really on to something with this project!
Routing does not work. And it will never work.
Long live Bitcoin Cash
Better, physical proximity (via Bluetooth or WiFi mesh networks) would provide immediate local routing. This would work with the above.
It's a nice tool, akin to the block explorers out there. One minor thing I noticed, where you define the node colour in the sidebar, sometimes if it is dark the hexcode cannot be seen.
There's a way to fix this by dynamically determining the color in javascript for example, and changing the text atop of it to white.
While bitcoin might continue, most citizens will stop bothering at that point because buying or selling bitcoin shows up in tax audits.
The government can also make it illegal to operate a bitcoin node or transmit bitcoin transactions, including for ISPs, which would get the protocol quickly blocked.
Additionally they could rule Bitcoin to be an illegal form of monetary exchange which would mean that anything you buy via bitcoin would get you in hot water in addition to the tax problems if you can't prove you used a legal monetary method.
Of course, some people might use Tor and somehow manage to get money extracted from the Tax system so they can buy bitcoin without their local tax office knowing... but how many of the Mr. Normal population are able and willing to do that for bitcoin?
I think you severely underestimate the power of the government.
It's a losing game, and I think you forget that there are way too many rich people in positions of power who like crypto for it to be successfully killed. The ruling classes actually like it more than the lower classes do.
Mainstream users will not use bitcoin if it becomes illegal. End of story. Maybe some people continue to use it but it'll probably be far below any drug usage levels.
>It's a losing game, and I think you forget that there are way too many rich people in positions of power who like crypto for it to be successfully killed. The ruling classes actually like it more than the lower classes do.
That's barely relevant because the "rich ruling classes" could still do it. I'm evaluating this as "what if they do" not "would they do"
The government doesn't have to make it impossible for cypherpunks and superhackers to use bitcoin, it just has to scare normal people. That's easily done with a few laws and some gratuitous enforcement, e.g., throw a few thousand people in jail for tax evasion, watch how long it takes for these casual hodlers to liquidate. That's 90% of the battle won, and 90% will probably be enough.
With drugs you had families ruined by drug addiction desperate for a solution.
With bitcoin you have... what? Unwavering respect for the right of governments to restrict something most people can identify has at least some utility?
The social consensus for a harsh crackdown is not there, and like the internet on issues with copyright, governments will continue to muddle along as this all evolves way quicker than they can deal with it (kind of like Uber).
You have a government losing its sovereignty over its own money supply, for all practical purposes. After being invaded, or losing territory due to an invasion, that's about as serious a threat as any on offer.
But they'd only show up for a short period of time (in this scenario) because after a while bitcoin wouldn't really be worth anything. Lol.
I think the most important aspect is that Lightning Nodes are just sending bitcoin transactions, the whole system is trustless, the node relying your transaction to destination can't steal your money any more then bitcoin full node relying your transaction to miners can.
The onion routing is very unfortunate, because it means regulators are likely to treat the network as a blatant money-laundering tool.
A LN node is no more a "money transmitter" than any internet router that a bank transaction flows through is a "money transmitter".
The node or router can't "steal" or modify the amount or destination in any way, and there is no counterparty risk with either of them, so they both aren't "money transmitters".
The end user experience will be having a hot wallet in your computer/phone or online service like coinbase that will handle all the routing, channel setup, etc for you. Like when you use bittorrent you don't need to manually connect to peers, the bittorrent client handles that for you.
ALICE --(IOU to bob for 10k)---> CAROL --(IOU from alice for 10k)--> BOB
a. What effect does this have on transaction sizing?
b. Does the the node owner charge fees for each transaction?
c. How are the channel amounts calculated? Do they include mining and node fees?
b. The node owner do charge fees every time someone use their node : https://bitcoin.stackexchange.com/questions/68767/how-are-fe...
c. There's not mining in lightning, it's only done on blockchain. What do you mean "channel amounts" ?
b. Yes, it's part of node configuration, you can set whatever fee you like, but most probably at this point everybody will just route around you.
c. When creating the funding transaction you decide the amount of satoshi to be locked up in a channel for use in LN. Funding transaction is subject to normal Bitcoin transaction fees (x sat/byte, the higher you pay the faster it's committed and your channel becomes usable).
b. Thanks for the answer. (Edited): So, it seems the current argument there will be too much competition for nodes hence people will automatically set low or no fees.
c. This is unclear to me. Normally, when I am paying for stuff in bitcoin sellers tend to attach an estimated fee for the transaction. Lets take an example, I need to pay 0.1 BTC they will charge 0.101 BTC. The 0.001 BTC is the transaction fee.
With LN nodes charging fees on top of it, businesses now will have two fees to account for?
Additionally, my understanding now is that there are three fees now:
a. Channel Opening fees to miners
b. Node fees which might be zero
c. Channel Closing fees to miners
LN deposit/close transactions don't carry any information about LN payments made on the channel, so their size doesn't grow with usage. They are simply 2-2 multisig transactions, so somewhat larger than the minimal 1-in-1-out tx, but probably (didn't check this) not larger than median bitcoin transaction.
> And how does Segwit work for these transactions
those are always pay-to-witness-script-hash transactions, so they don't even work without segwit: https://github.com/lightningnetwork/lightning-rfc/blob/maste...
> current argument there will be too much competition for nodes hence people will automatically set low or no fees
it's not as easy, there are multiple incentives and discentives working here. lowering fees will bring more volume but increase cpu/io load. higher volume also means you need to have more capacity on your channels, which essentially means lots of funds in a hot wallet - a target for hackers. high volume also means you might become target for authorities wanting to track payments in LN. et cetera.
> With LN nodes charging fees on top of it, businesses now will have two fees to account for?
technically yes, but the fee for deposit transaction is paid only once per channel and merchants (usually) won't be involved with it. it's reasonable to assume that users will mostly fund channels with larger nodes because that brings better connectivity (you don't want to have a channel with starbucks, mcdonalds and burger king, you want single channel with a node that invested in having a lots of channels).
as for the three fees you listed - yes (but not necessarily to miners?). the assumption is that you will rarely be opening and closing channels, just like you're rarely opening and closing a new debit card. you'll open with a reliable node that makes you routable, you'll once in a while deposit more funds and eventually you will close the channel. in between you can have bajillion transactions for which you will pay close to zero fees.
> mostly fund channels with larger nodes because that brings better connectivity (you don't want to have a channel with starbucks, mcdonalds and burger king, you want single channel with a node that invested in having a lots of channels).
Lets take an example. Bob wants to pay Starbucks for his coffee. Alice is running a node which has a channel open to Starbucks. Now he can open a channel to Starbucks directly and pay for his coffee. But that is time/fees consuming so he will pay Alice, who will then pay to Starbucks on his behalf?
If that is true, doesn't that put too much power in Alice's hand? And if there are some nodes which have heavily invested in cpu/io and coins to their channels, wont they effectively control a large part of the transaction volume and hence make the network more decentralized?
> you will rarely be opening and closing channels, just like you're rarely opening and closing a new debit card.
I get confused every time this analogy is brought up. Sure, I don't need to open/close debit cards but those cards are loaded automatically when I get my salary/income. And the money is not tied, I can move it around as much as I want.
On the other hand, again, as per my understanding LN requires me to commit an amount and I have to make do with it until the amount runs out. So, its more like a prepaid gift card with fixed commitments and a reload feature.
what do you mean by "power"? yes, there will be nodes handling more transactions than other nodes, but that in no way prevents you from using other nodes or even investing into opening channels yourself and competing.
> those cards are loaded automatically when I get my salary/income. And the money is not tied, I can move it around as much as I want.
not everybody carries a debit card connected to their main bank account. and those that do usually have daily limits on how much they can spend, so you can't really move it around as much as you want. similar to that, not every BTC holder stores their BTC in hot wallet. funding your debit card is similar to funding your hot wallet which is similar to funding your LN channels.
don't take the analogy too far though. point is that LN allows you to do is micropayments without flooding the blockchain. there are tradeoffs involved. that's it.
https://www.youtube.com/watch?v=Ug8NH67_EfE&feature=youtu.be...
Without decentralized routing, It seems like they're simply prioritizing nodes with large sums of BTC as the central operator hubs.
Centralized payment processing hubs?
It's not an omission, it was done this way on purpose.
https://cash.coin.dance/blocks/thisweek
Also I'm not sure what definition of fungible you are using that doesn't include Bitcoin Cash, but here's another spurious definition for you: A cryptocurrency isn't fungible if most wallets have balances that can't be spent because of fees.
https://www.newsbtc.com/2017/11/17/bitpay-ceo-claims-current...
Put more simply, if the coins can be 'tainted' because they were transferred to you from a ransomware hoard then they're not fungible because a merchant could say: "I'm not taking those coins, I don't want to be associated with ransomware. You have to pay me with other coins."
Neither BTC nor BCH has this kind of fungibility, though Monero does.
If some bizarre counter-productive legislation does come in requiring such a system for bitcoin, then yes, Monero might suddenly become more fungible in practice.
That definition doesn't mention provenance, even if I concede that something can't be "more (easily) determined" or "less (easily) determined".
My point is that if 99% of debts can, in practice, be paid (or transactions made) without either party paying any attention to the provenance of the coins, then the coins are fungible.
If there were reports of a significant number of a people being unable to transact because their bitcoins were blacklisted, then I would believe that bitcoin is significantly less fungible.
Whether that lack of fungibility is more significant than Monero's differing level of merchant adoption (for which I also don't have statistics) is then another question that a user has to weigh up.
we grew past the global scale fully connected topologies somewhere in late 80s if not earlier (i was in ussr kindergarden at that time, so please somebody correct me).
> Bitcoin Cash seems to be doing just fine with its 8 megabyte blocks
is it maybe because nobody is using it? :) blocks are 15 times smaller, tps is 10 times lower, USD transferred per day is 50 times lower.
gee, no wonder bitcoin cash is doing just fine, it's a copy of bitcoin and that kind of load is where bitcoin was couple years ago.
"At that stage, most users should start running client-only software and only the specialist server farms keep running full network nodes, kind of like how the usenet network has consolidated."
You're right that Bitcoin Cash usually has fewer transactions than Bitcoin Core, though, which alleviates scaling pressure. Similarly, now that people are switching to Bitcoin Cash and altcoins, that same scaling solution is working for Bitcoin Core too.
you've basically described the motivation behind LN.
> Bitcoin Cash usually has fewer transactions than Bitcoin Core, though, which alleviates scaling pressure.
very nice spin ;)
> https://i.redd.it/wbpq99paw74z.png
correlation does not imply causation.
numbers are clear: 15 times more data, 10 times more transactions, 50 times more USD transferred. no altcoin is even close to that level of economic activity, even those with inflated tps numbers.