QR of node information



Summary:

Bech32 is a Bitcoin address format that is designed to make small QR codes because of the ability to create text-mode QR-codes which are much smaller. If the string is made uppercase and certain characters, such as '@' and ':', are avoided, then Bech32 can save more than ASCII. Blockstream is the only live case that actually makes the QR code for invoices uppercase but it remains optional. Invoices are pure Bech32 and satisfy requirements for small QR codes. In terms of payment, if you cannot find a route that will handle the amount, it's better to connect to the receiving party directly rather than randomly select a node and open a channel to that one and hope that one has a path. It might be best to have the UX ask the user if they want to open a new channel directly to the store or to a randomly selected goat farmer on the other side of the world that might have a well-funded path - this could be optional. If a direct channel is used, the invoice already contains the node-ID so your wallet can establish a properly sized connection depending on your payment history, perhaps automatically even after successful payments via other routes. It would be awesome if the invoice contained the addr-part (from node) as well to provide for automatic opening of a channel without having to scan the graph. A proposed bolt12 could make this possible but reliance on DNSSEC might be necessary to ensure that mcdonalds.com isn't hijacked by someone that wants to prevent using LN. The Lightning Network grows in connectivity and capacity, but direct channels to the nodes you pay frequently and from the guys that pay you will make the network grow faster and more natural rather than if you only make random channels to nodes. Even when the Lightning Network is well funded, avoiding routing fees may still be desirable. This method would make mcdonalds nodes turn into big hubs, slightly bigger and cheaper than burger king ones. Regarding sizes of QR codes, there is a reckless PoC-implementation of current hex, Bech32, and bolt12 QR-codes so you can compare the sizes. Rusty Russell anticipates a move away from "manually connect to node" and this wart will be less visible. A Bech32 'ln1' encoding could be created, but it would be 62 chars vs. 66.


Updated on: 2023-05-24T22:49:56.761482+00:00