[Lightning-dev] A proposal for up-front payments.

ZmnSCPxj ZmnSCPxj at protonmail.com
Tue Nov 26 08:12:08 UTC 2019


Good morning Orfeas,

> Hi ZmnSCPxj,
>
> > > > requiring a fee is equivalent to requiring proof-of-work, incentive-wise.
> > >
> > > Not necessarily, given that
> > >
> > > 1.  there is a finite bitcoin supply but an eventually infinite PoW
> > >     supply (relevant in the unlikely case fees are burned)
> > >
> > > 2.  sats are transferrable, whereas PoW isn't (relevant in the case fees
> > >     are paid)
> > >
> >
> > Not actually.
> > Again, let me point out that PoW can be bought, that is precisely what Bitcoin blockchain layer does.
> > And the blockchain layer PoW is bought with two things: fees and subsidies (inflation).
> > Thus PoW, being purchaseable, is incentive-wise equivalent to paying somebody to spend electricity (possibly with efficiencies at scale).
> > Just cut the middleman.
>
> I wasn't clear enough, sorry for that. I agree that in general PoW can
> be bought. However if I understand this particular PoW proposal
> correctly, a brand-new PoW has to be created for each intermediary.
> These PoWs cannot be reused by the intermediary for later payments (or
> for anything else).
>
> I will now show that there exist spam-prevention schemes that differ
> only on whether the payer gives sats or PoWs to intermediaries, such
> that economically rational agents are incentivized to cheat in the case
> of sats but not so in the case of PoWs. This proves that fees are not
> equivalent to PoWs incentive-wise.
>
> In our model, an intermediary can follow one of three possible
> strategies (we make the assumption that other strategies are strictly
> dominated by one of the three). Each strategy results in different
> resource utilization and proceeds from fees.
> (A) do nothing. This results in resources_A = 0 and sats_A = 0
> (B) play honestly. resources_B < 0 (negative because they constitute
> an operating cost) and sats_B = anti_spam_fee + routing_fee
> (C) mount a plausibly deniable attack. Here resources_C < 0 and sats_C
> = anti_spam_fee.
> We assume that resources_C > resources_B + routing_fee (1).
>
> In case intermediaries receive PoWs as an anti-spam measure, it is
> anti_spam_fee = 0 which means that resources_C + sats_C < 0 =
> resources_A + sats_A, therefore strategy C is strictly dominated by A.
> (The fact that A also strictly dominates B is an interesting
> observation, but beside the point for the argument made.)
>
> OTOH, in the case of anti-spam sats, it is anti_spam_fee > 0. Therefore
> we have resources_C + sats_C > resources_B + sats_B (using (1)) and for
> a big enough anti_spam_fee, it is resources_C + sats_C > 0, therefore
>
> strategy C strictly dominates both A and B.
>
> In other words, by just changing whether we use anti-spam PoWs or fees,
> we change the economically rational behavior.
>
> I apologize for the previous ambiguity and I hope this has made my
> argument clearer.

This can be made "the same" by any of the following methods:

* Burning the up-front fees.
* Locking the up-front fees for a time, then reverting them to the original sender.

Fees and PoW are equivalent.
The artificial difference here is that in the PoW case, the PoW cannot be reused by the intermediate node.
Then we only need to make the up front fees also not reusable by the intermediate node, which can be done by either of the above.
I believe the latter would be more palatable: you pay fees, part of which is just there to prove you are not spamming the network, and which will be returned to you after a few days.
Or just provably burn the funds by sending it to a P2WSH containing `OP_RETURN "ZmnSCPxj is not an AI"`.

This lets us get around having to *design* a PoW, which devs have to change every few months to get around the inevitable ASIC targeting the algorithm, and just lets us reuse existing mechanisms (i.e. Bitcoin).
The same thing is used in spam prevention in defiads, for example -- the money backing an advertisement is locked, and this justifies the propagation of the advertisement as long as the money remains locked in the UTXO.

Regards,
ZmnSCPxj



More information about the Lightning-dev mailing list