Posts

Lightning isn't a cryptocurrency or a blockchain

avatar of @brianoflondon
25
@brianoflondon
·
0 views
·
5 min read

This is a value for value post: see the explanation in the footer.


The other day on Twitter I finally guilted @edicted into trying out Lightning and my v4v.app app for exchanging Hive to Lightning.

And he's written a useful and informative review of the process: v4v.app speedrun.

My father always tells me (and he was told this by his father), to try to look through the other person's eyes. This really helps when talking about user experiences on systems like mine. Generally I only get to know when people succeed in using my service, I have no idea if anyone has given up without telling me.

Lightning isn't a cryptocurrency or on a blockchain

This is the number one point which causes those with long experience in crypto to get confused about using Lightning. Paradoxically I think this makes Lightning easier to use IF you don't come to it with preconceptions that it'll work like any other crypto.

To start it looks like a website from the 90's Ah nostalgia... I like this look.

Ouch... that stings a bit :-) lol. I haven't used the blink tag.

Node Address

What I'm expecting is how every other service does it (including centralized exchanges). I send money to the v4v account with a memo that contains my public key on LN... and then v4v will send sats to that account contained within the memo.

This is where the non-blockchain basis of Lightning comes up. Lightning nodes DO have a public/private key pair and a node address. This is my node's public address:

0266ad2656c7a19a219d37e82b280046660f4d7f3ae0c00b64a1629de4ea567668

We use "keysend" to send to that address (which is the process we use for Podcasting 2.0 streaming payments). Keysend (behind the scenes) does something similar to what happens with a Lightning Address (which I explain below).

Invoices and payments

Even if you have your own node, the normal way for Lightning to be exchanged is via "invoices". Your node creates an invoice and waits for it to be paid. The invoice does point to the address of the destination node and might also point to other nodes along the way (routing hints). It will be for a set amount.

I... don't have a public key? I have to tell the wallet how much in advance and create an invoice for it? Da fuk is this?! Give me a public key... damn it!

Whilst Alby does have an option to use it as a front end to your own node (you won't believe what it takes to set that up), @edicted is using it where Alby holds his funds. Essential they have one node and all the sats are on that and they just keep track of which are his. He has got his own shoebox on the Alby node.

So when he requests an invoice on Alby he gets something like this:

lnbc10u1pjpsqnapp5s9vuxyhvvlwhtva4s3argcymlhsrgu5mna8ng7jphtj47htdl8hsdp2235xjueqd9ejqcfqv3jk6meqvehhygz9v35kxar9vscqzpgxqyz5vqsp5yfjnl8ucrf2u6lh62gd6j5vhptnrfn64xpwwgxwhgh9ffg3ltppq9qyyssqncwwd0dcfsufvx55uetkw8jqs8fm5jrtugevt6huv9u3rw4c3mvrwss9ykupvv3wltfv96a45ddhgsmc0pcwp24yl4pv4zd42lz4uycqavrp3c

If you know what you're doing you can decode this (lndecode.com).

At it's heart, all that my "nostalgic" website does is help you use Hive Keychain to send that invoice as a dm to the @v4app account.

Encrypted... not so much

v4v uses encrypted communications so that the data is not stored on chain in a readable format. That's a pretty cool privacy feature!

Admission... it's not really encrypted. As you can see these Lightning invoice can tell you what the destination node is but that's not always enough to know where the funds have gone. For example the Muun wallet creates new node addresses on the fly for every transfer.

And for anyone using a custodial solution like Wallet of Satoshi or Alby knowing the destination tells you nothing much: only WoS or Alby would know where the funds went after that.

I could use encrypted DMs on Hive but this sometimes causes problems if people don't have memo keys in their wallet.

But the other point is that you don't have to use my website to start this process: I sent this transaction direct from Hive Keychain and I put a # in front of the invoice so it is encrypted.

https://hive.ausbit.dev/tx/45ff54fe68d525c188d44140a6018fc564a866d1

The only other thing my site does is tell you the approx cost in Hive and HBD and adds a bit to make sure. This whole system will be improved in the new website I'm working on.

The Lightning Address

Looks like maybe I can send money directly to [email protected], but again I'm not sure and honestly I don't care at this point...

It turns out BTW that instead of needing to copy paste an invoice into my v4v.app site, you can type or paste a "Lightning Address" just like the one Alby gives you.

If you do that, my site actually makes a call to https://getalby.com/.well-known/lnurlp/edicted (I typed that from memory...). That starts a process where you then negotiate minimums and maximums and eventually Alby sends my site a Lightning Invoice.

I take the other side on this crazy dance if someone wants to send lightning to [email protected] and you'll receive it as Hive. BTW there's a new feature I haven't really promoted that if you use [email protected] you'll get HBD.

The whole Nostr tipping system relies on this "LNURLp" system behind the scenes and it is hideously inefficient.

Fees

Yes I charge the base 200sats on everything + 1.5%. I'm using the spot rates and if you look at sites like Simpleswap this is very generous. I'll reword some explanations on the new site. I've literally lost the ability to edit my old site right now (collapse of my old coding machine) but perhaps I can change the explanation on the regularly updated post.

Speed

I wrote about the speed of the system here. The bottom line is that Hive is faster than Lightning. To be honest I was acting as if one block irreversibility was a thing, before it was a thing because I was just taking a small risk. That risk has gone now.

Learning

Here's the issue with trying to explain Lightning in the user interface: I guess I approached this from the point of view of people who are familiar with Lightning already. People who have used a mobile wallet to send and receive Lightning. That was my baseline.

Clearly @edicted was outside that but he seems to have stumbled across the finish line!

I'm not sure covering the UI with a bunch of words would help (though I really want to have multilingual prompts in the new version).

But I do hope the new site and the new features I have planned will help.


Value for Value

For the last few months while building @v4vapp I was generously supported by the DHF. Going forward I have a much more modest support which covers direct server costs and a little of my time.

If you appreciate the work I do on and around Hive, you can express this directly: upvoting posts on Hive is great. Also consider a direct donation (there's a Tip button on Hive or a Lightning Address) on all my posts.

Support Proposal 244 on PeakD Support Proposal 244 with Hivesigner Support Proposal 244 on Ecency Vote for Brianoflondon's Witness KeyChain or HiveSigner