Avatar
Nick Slaney
38609f8bb73a240a557511257c8917120a160657d9cb54d499315c1ff8ab8f0c
MOE maxi

Doug bf pepper ann gf

How do you have a trust relationship with liquid key holders? (Who are they?) There is not much difference between liquid and fedimint / cashu and in some ways rug risk is worse, with Liquid having $220M assets under management.

If you want to trust your funds to an entity as a business to maximize fee efficiency, you’d want to make sure you know exactly who is custodying your funds and how (this is how we got banking licenses in the first place). That trust trade off is potentially on-chain fees for the entire bag.

There is a natural filter to discussion of ideas, engineering and otherwise. Paying people to listen to you.. it’s giving “we’ll give you $5 to take 5 surveys” vibes

Damn they’re going to pay a million bucks just to get people to talk about their idea

Replying to nicodemus

I am in video. And, to do it right, is a tall order.

I’ve been working on something in my spare time. It will make use of blossom and nostr for the distribution of content and discover ability, but that’s really where nostr’s reach ends.

Video needs to be adaptive to best ensure it can be watched. A lot of people will throw mp4s up and call it a day, but the content really needs to be segmented with sane, adaptive variants.

To aid/incentivize creators, as well as for security reasons, a kind of drm where they can maintain some ownership and/or proof of origin needs to exist. I’ve implemented (from scratch) all of the big DRM protocols, and they are all so close be Ming a great *open* platform - they just need to make use of a creator-owned key pair for identification purposes. What gets harder is trying to tie that with someone who pays for content, and having the option of that content being encrypted specifically for that viewer - this is resource intensive.

Finally, an open license server is needed to manage the collection of streams in a place the creator can control. I am working on this, too. I believe a creator should have the option to take down their content or move it to a different identity if they want. They can’t influence others ability to duplicate it (unless encrypted) nor block those who’ve paid for it from keeping their own local copy.

That’s just for serving the content.

You need a player, which is non-trivial. I think HLS (vs DASH) is more universal (and a shit ton simpler), and is supported by every mobile platform, TVs, and most major browsers (given a JS implementation). So I think a universal format can be achieved.

Then there’s the encoding. To have mass compatibility, you really need to narrow the options to a known “ladder” of quality variants everyone can then follow. If you’re new to video, this is non-trivial. But, existing streaming providers have already settled on a good subset (which we could reduce further - need to optimize for storage!).

It’s a thing. It’s being worked on, silently and anonymously. Security and proof of origin are, I believe, paramount to help reduce distrust.

For me, I’m looking way beyond TikTok clones. I want disrupt the fucking *media* the way websites did to newspapers. And it needs to be open and permissionless. And it needs to be *10x better* than the incumbents (YouTube, media corps). I think it’s not only possible, but likely to organically converge to a medium like nostr. It’s a race to the bottom, cost-wise, right now. We can out-perform all of these companies. But careful thought and planning is needed.

Hm I wouldn’t drm and make it pay per play, I’d go optional micropayments and distributed hosting

This was an idea I threw on here a while ago, I think it has legs, but like most things nostr needs to be open source. I fleshed out the idea more and am putting it out here before I try to ChatGPT it into reality

https://github.com/npslaney/nostrtok

Video is the way most consume content now a days and it’s about time YouTube and TikTok got disrupted.

A protocol like this would-

- pay creators directly

- distribute and potentially pay for hosting

- potentially be very easy to onboard onto as a creator or consumer of content

We have a good set of primitives to build this, and I think the incentives line up to make it work.

I think something like this turns nostr into a 🚀

Going custodial makes everything easier 🙂

Lightning is the most liquidity efficient way to do self-custody Bitcoin payments.

Fees for end user payments are still much better than L1, comparing to custodial isn’t apples to apples as custodial has limitations for access

Plenty of batching between pleb nodes (which are self-custody!)

I think you’re asking about mobile wallets, which brings some challenge as they can go offline, but I don’t think it’s impossible to get some scale via batching there

Plenty of batching happening across the network, risk of someone going offline is there, and may cause the need to start over, but time and time again I see Jeremy bend towards complexity too quickly.

I see plenty of batching across the network. There is additional challenge if someone goes offline, but plenty of ability to batch

This assumes avg $200 / month / user. With unilateral splice out you can pick when you bring back unused liquidity.

You can back out minimum vol if you assume an on-chain cost per user, but if you’re really worried about that you can charge up front or recurring to recoup on-chain fees.

Most are underestimating lightning volume

Why is this so wrong?

John has underestimated this business greatly.

1M sats for every user is a good place to start, but remember, as that user receives bitcoin, the investment decreases per user. Receiving bitcoin into a user channel puts that channel's ownership towards the user’s balance and adds the LSP’s investment back into routing channels. If John onboarded 1M people in the same instant, he would need that liquidity, but over time, he could recycle capital from used channels into new ones.

Thinking of LSP channels as an investment you can get 1% annual return on is grossly underestimating the ROI. Lightning returns are not capital dependent, they are payment volume dependent.

Users – 1M

GPV / user – $2,400

Total GPV – $2.4B

Conservative outside volume (routing begets routing) – $1B

Take rate – 1% (0.5% in, 0.5% out, LSP user only pays for send)

Outside take rate – 0.1%

Revenue – $25M

Investment – I’d peg this at 1500 BTC

ROI – 28%

Hang on, why such a low investment?

Consider a single LSP channel. At the beginning of its life, we allocate 100% of the liquidity for that channel. As the end user uses that channel, they carry some ongoing balance and use a percentage of the channel for daily payments. The more that user holds in that channel, the less capital the LSP has committed to that individual user. The only capital the LSP ends up committing to that user is their receivable capacity. The rest is held by the user. While the initial first investment is 100% of channel capacity, this quickly moves back to more active external channels and back into the LSP’s wallet if they’d like. Total investment depends on how much your users like to hodl as opposed to how many users you have. John is assuming a lot of Hodlers, I assume they hold 85% of the channel they request.

Similarly, with such a successful LSP, we can realize efficiencies of scale on the routing side, assuming many users are sending and receiving, we can open large channels that have little turnover.

On the whole, at steady state an LSP can optimize its liquidity to the point where the capital invested is mostly to support ongoing payment flows (that make money). Inactive hodlers do not add to the overall cost of capital, especially with the ability to splice out inbound from inactive channels over time, which further increases capital efficiency.

Now assume we’re really trying to grow this thing. We have plenty of revenue to invest into free onboarding for new users.

Sad to see this. This is one of the most impressive teams I've seen in the bitcoin space, and the work they put out with just 3 people was remarkable. Thank you for everything you all have done 🫡 nostr:note1mnyfl9hjck35mw67hd659j6a2gxltmyhzq684lm99xnf6wzyeunsh33fy8

Replying to Avatar Rusty Russell

First up, I want to recognize that this is an uncomfortable topic! Bitcoin is inevitably changing towards user-pays, and that's not all positive. But facts we don't like are still facts: can't engineer a solution if we can't think about the problems.

There are three kinds of bitcoiners.

A. Those who can afford any fee.

B. Those who can afford a UTXO, but not often.

C. Those who can't afford a UTXO.

Nobody worries about the A group (and in the early days, that was everyone). Obviously Lightning (my area!) caters to the B group, and we want it to be as large as possible. To do this we can (1) make lightning as resiliant as we can so onchain spends are rare, (2) make bitcoin as efficient as possible so we can cram as much as we can into what we have.

(1) Making lightning more resilient and reliable is engineering. Lots of people working on this, even before we get soft-forks which could help further.

(2) More efficiency has two benefits: obviously if your own onchain spends are 20% smaller, that's 20% cheaper. But if *everyone's* onchain spends are 20% smaller, that means fees are lower *for everyone* too (and it's non-linear). So we really care about all Bitcoin usage! Some things are obvious wins: Taproot so you can avoid even putting the script onchain in many cases, FROST so you can cram your 2 of 3 or other scheme into a single key and signature. We know we want to get more aggressive with sharing one signature across multiple inputs (Cross Input Signature Aggregation), but that needs a lot more research, and a soft-fork.

But even with all these, the math is clear: some people, even if you somehow gave them their wealth in a UTXO, it couldn't afford its own fees to spend. The C group is real. Spoiler alert: we don't have an answer for this! But let's look at some approaches people have tried.

Firstly, there are attempts to move these people into the B group: give them long enough that maybe fees will reach a point they can afford. This seems unlikely to me:

1. As fees increase everyone will start doing the work to take advantage of low fee times, and that itself means that low-fee times won't be so low.

2. These schemes tend to increase onchain footprints, so they need fees to drop a lot to overcome that (typical is 2x the transaction size, so you need fees to halve to gain anything).

3. If you really can't afford the fee, you probably also can't afford to wait.

4. You still haven't actually dealt with those who really, really can't afford the fees. Ever.

Another suggestion is that someone (e.g. a lightning service provider) will lock up funds which would cover fees, in case something goes wrong. This doesn't work economically, because nobody is paying $100 for a $5 user (not at scale), but it doesn't even work mathematically: the reason some people will have small UTXOs is because there are not enough sats for 10 billion people with any realistic distribution.

There are two basic approaches left:

1. Group people, so they fall into the B category (i.e. onchain tx is possible, but expensive).

2. Trust someone, but rely on incentives.

1. Grouping people is possible, but they need to work together if somenthing goes wrong. So grouping inside a community is probably better than grouping with randos.

For example, there are various tree-of-transaction schemes where you go onchain only if the coordinator fails/goes rogue, and how much it costs you depends on whether anyone near you in the tree pays to get themselves out. These are basically free if nothing goes wrong (one UTXO required for thousands of users!). But this is subject to ghettoization, where the coordinator makes sure all the C people are grouped together, knowing none of them can afford the transactions they need to get their funds back. It's particularly bad because the coordinator can insert its own fake "whales" to make it look like it's not ghettoized.

You can play with incentives here, too: more research needed. The details matter!

2. Relying on incentives.

As a simple example, lightning-connected e-cash mints. They can't rug individuals very easily, they have to rug everyone together (or go fractional and rug the last ones to exit). Maybe with enough anonymity and reputation, these would be Good Enough.

More ambitious would be a single UTXO held for multiple people by a coordinator. Can we make it so that if a coordinator is dishonest, you can force them to burn your funds? Maybe burn more than your funds (ie. a bond)? Won't get your money, but it aligns incentives so they're not motivated to rug you. The details here really matter!

There's a cute scheme which has been proposed where the coordinator pays a temporary bond, and asserts that they actually have everyone's signature to transfer the funds. If nobody challenges within a week, they get the bond back and the funds move. If someone challenges, all the signatures are put onchain, and if they're not all valid, the bond gets half-burned and half-given to the (successful) challenger. This is hard to make work, though. Someone needs to get the money to challenge (hard if you don't have the money in the first place, plus it's hard to prove to someone you *didn't* sign something!), and then make sure nobody gets the challenge bond before them (in particular, a dishonest coordinator, seeing the game is up, completes the successful challenge *themselves* and gets half their bond back), and make sure someone can't grief and delay the settlement indefinitely or bankrupt the coordinator.

More research needed, here, too.

Summary

A longer post than I had expected to write. And it's buried in the middle of a thread nobody will read. (I do this sometimes. I suck at marketing I guess!)

Sub-fee bitcoin amounts will have tradeoffs, involving trusting someone who has more money than you (at least, in someone's competence, even if their *financial* incentives can be made to match yours). This is difficult to build well, and not a very exciting thing to build today, so it hasn't really happened (custodial things are much, much easier!).

This is also a key reason I believe we need to make Bitcoin more expressive: if we can do *more* with our own UTXOs, we can build better solutions. And by "we" I mean "someone smarter than me" of course!

Feedback welcome!

Rusty are you not underselling 2 here? Where we can of course get 10 / 20% gains with improvements like taproot and Frost lightning can represent 90-95% efficiency gain over the lifetime of an individuals bitcoin usage.

We still have the limitation of the # of satoshis that exist and the # of UTXOs that can exist, but this pushes against blockspace driving the threshold of subfee UTXOs as well