4 ms·
How is double spend avoided? EDIT: My bad I thought this was a currency.
by petermcneeley 5y ago
How is double spend avoided?
EDIT: My bad I thought this was a currency.
- alisonkisk 5y agoit's not (self-protecting) transferable / decentralized currency. It's same as a paper lottery ticket.
- nightpool 5y agoI don't understand the question. Each lottery ticket is made out to a single "recipient"—in what situation do you imagine a double spend?
- saurik 5y agoYour question is not without merit, as these lottery tickets end up feeling a bit like "checks" (the paper kind you give someone as an IOU against your bank account), which makes it subject to the same general "kiting" attack of writing multiple checks that would all have to pay off at the same time in order to not overdraw your account. In case this isn't obvious how it applies to this case--as the probabilities might be obfuscating things somewhat, and I have now seen multiple replies to you make it sound like your question is invalid, despite being the key question for how to use this technology (as someone who works with it daily and has for years)--imagine if you send four people 50% tickets for your entire balance. In this scenario, you would expect two of them would win; let's just assume this is the actual concrete result. Even if you decide that people who receive a winning ticket will commit their ticket before accepting it, two of these people got losing tickets and a third will succeed in claiming their winner... you just managed to get 1.5x the value of your account, by handing out more (probabilistic) checks than you can (probabilistically) pay. The only protection from it not being a true 2x overdraft was that two of the participants had a naive way to verify they got paid... but really, participants in this system usually accept money from low-probability losing tickets; this then becomes a form of off-chain settlement that is subject to scenarios where people can "double-spend" some of their money if you aren't paying attention, in a way that is actually very analogous to blockchains (such as Bitcoin and Ethereum) that experience routine chain reorganization: you need to have some kind of scheme in place to not only decide a single valid result but also a scheme to feel comfortable with the "finality" of that result (the whole "wait for six confirmations" jazz). The usual solution to this is to have the spender put money down into an on-chain contractual "escrow" that gets "burned" (destroyed) as part of any overdraft, to make it so you hopefully lose more money than you are capable of overspending in any reasonable period of time (which I would argue has at least some parallels to mechanisms in proof of stake blockchains, with the understanding that every single lottery payment account is effectively its own blockchain at this point). Honestly, I find much more inspiration in this much later paper, which extends this scheme to zero-knowledge coins and does some of the math required to understand the bounds on the escrow required to manage this risk. https://eprint.iacr.org/2016/1033.pdf https://eprint.iacr.org/2016/1033.pdf