Live data from Hacker News

BitUndo – Double Spending as a service

bitundo.com

21–30 of 59 posts

Re: BitUndo – Double Spending as a service

#21
Previously, processors and merchants accepting bitcoin payments would wait until a large fraction of bitcoin nodes listed a 0-conf txn as "valid-but-unconfirmed," the so-called memory pool or mempool (because it is a collection of transactions in RAM). This works well, because we empirically know how nodes operate: they accept these valid-but-unconfirmed txns into the blockchain and reject (both discard and fail to relay) any competing txns ("doublespends"). Doublespend attacks worked by filling the global mempool with the doublespends before the original txn fills the mempool. Naïve software wouldn't check the global mempool. So really, there were two types of 0-confs: txns which were agreed upon by >90% of the global mempool and those which it was unknown (but sometimes assumed).

Now, BitUndo changes how people perceive mining nodes! No longer is the mempool immutable, but rather mutable for a price. This price, as it stands, is 10% per successful undo and 0% per failure. So if BitUndo (and federated pools) controls 1% of the network, then 99% of 0-confs will confirm, 1% will be undone, and 0.1% of the total transferred will be paid in fees to BitUndo. It throws more of a wrench into the system as the BitUndo federation varies from 0% to 100%. Empirically, it will be trivial to see what percentage of the network is engaged in BitUndos. If that percentage becomes materially large, then it will have a material effect on how the system treats 0-confs, for better or worse.

Interesting, this service is definitely available privately (or should be assumed to be). As U.S. Supreme Court Justice Louis Brandeis once said: Sunlight Is the Best Disinfectant

Re: BitUndo – Double Spending as a service

#22
post #3
post #2

Wild. So, if this takes off (ie, enjoys miner adoption) and if the incentive structure works as advertised (ie, miners stand to make more by accepting the invalidating transactions), then this pretty much destroys the credibility of 0-confirms except with trusted parties, yes?

There never was any credibility behind an unconfirmed transaction.

Wouldn't that present a horrible UX in some cases when paying with bitcoin? You'd have to wait ~10 minutes to access your purchase while the transaction is confirmed

Figure source: http://blockchain.info/charts/avg-confirmation-time

Re: BitUndo – Double Spending as a service

#23

Doesn't this mean paying with bitcoin in the real world is now broken? Merchants will either have to make people wait for up to 10 minutes for the transaction to confirm or risk that person reversing the transaction after walking out the door.

Now broken? It was always broken in this manner. Merchants have always had to account for the risk of unconfirmed transactions in one way or another (and if they were ignoring that they were negligent).

With online shopping it's relatively easier in that you can wait until the payment posts to the network before you complete the transaction, but this definitely would interfere with brick-and-mortar types of activities, ATMs, etc.

Re: BitUndo – Double Spending as a service

#24

Doesn't this mean paying with bitcoin in the real world is now broken? Merchants will either have to make people wait for up to 10 minutes for the transaction to confirm or risk that person reversing the transaction after walking out the door.

Working as intended. Zero confirmation transactions are exactly as they described.

Re: BitUndo – Double Spending as a service

#25
post #15

This link was also posted to reddit.com/r/bitcoin about an hour ago and was making its way up the front page. Now ... gone. I wonder if it's a scam or it got reported and deleted out of fear of causing a stir or similar.

No fraud or scam. Bitcoin users have acted very aggressively to the idea -- and felt best to censor it. What they seem to not realize, is that double spend attacks were very viable previously (putting conflicting transactions in different part of the network), submitting double-spends directly to pools, finley attack etc. The thing bitundo brings to the table is legitimacy. People can undo a transaction without forek…

> Bitcoin users have acted very aggressively to the idea -- and felt best to censor it.

It's not even ironic anymore when they respond in this fashion. They'd probably even remind you that only the government can technically "censor" something, and that if people want accurate news on Bitcoin they are free to pick a competitor to /r/bitcoin that will provide it.

Re: BitUndo – Double Spending as a service

#26
post #21

Previously, processors and merchants accepting bitcoin payments would wait until a large fraction of bitcoin nodes listed a 0-conf txn as "valid-but-unconfirmed," the so-called memory pool or mempool (because it is a collection of transactions in RAM). This works well, because we empirically know how nodes operate: they accept these valid-but-unconfirmed txns into the blockchain and reject (both discard and fail to r…

> processors and merchants accepting bitcoin payments

Citation needed. The existing behavior is very easy to rip off: You write two transactions, the one paying yourself, one paying the merchant. Simultaneously you hand a big miner the first while handing every other node you can reach the second. It's very likely that the first doesn't propagate at all, but you'll have a decent successrate at reversing.

Blockchain.info even had a handy tool before to author double spends but they've removed it.

In any case; there is some real subtly here. Both the case where miners are alturistic and don't help doublespends even if bribed and where miners always just take the highest bidder are consistent models which can enable safe zero conf transactions. But the transaction styles you use to get safe zeroconf are very different, and inconsistent behavior in the network is basically pessimal. There has been some debate in the past if the greedy behavior shouldn't already be the default: most people believe that it will eventually be in that state, and so there is a tradeoff between setting the right expectations for the long term but requiring more advanced handling of zero-conf vs having the best security for the simplest possible ways of using Bitcoin. I don't think there is a clear answer to the tradeoff, but because the inconsistency is bad I think if non-trivial hashpower picks this up the network will need to change the default behavior.

(Since I expect someone will ask: To get safe-zero-conf in the greedy miner world, you have the party pay you (optionally with an additional security fee if they are really untrusted), and if you see them a doublespend you spend the entire payment to fees (so you'll win the auction very likely). If they've provided any security at all their expectation is negative, if you make them provide enough security (E.g. security = tx value plus ε) then you can give them negative expectation without losing money yourself.)

Re: BitUndo – Double Spending as a service

#27
post #7

Interesting product. It doesn't really look like this is meant to make any money for the developer yet (maybe the plan is to add fees to their mining pool at some point in the future?). I suspect the point is to drive policy so that companies and individuals don't trust transactions with zero confirmations, or at least start checking for double-spend attempts. The standard right now for many companies is to accept ze…

> It doesn't really look like this is meant to make any money for the developer yet Incorrect. > the new fee you will need to pay is 10% of the undo amount, plus the original mining fee. Note: If you are sending a secret transaction, you must then double this fee http://www.bitundo.com/developer.html

Ah, I didn't catch that part. 10% of the transaction seems like quite a steep fee. I don't really like how they hide the fee breakdown buried in the developer documentation.

Re: BitUndo – Double Spending as a service

#28
Well, this throws a real wrench into services like BitPay that rely on verifying _only_ that a transaction has been broadcast, instead of making you wait until 1 or more confirmations (which can take 10 minutes, or 30, who knows). This always seemed like a hack to me anyway. Bitcoin is just not really set up well for quick transactions, which is just about the only kind of transaction you actually want on the internet.

Re: BitUndo – Double Spending as a service

#29
post #3

Earlier quoted context omitted.

There never was any credibility behind an unconfirmed transaction.

You can't pretend like zero-confirmation transactions have never been useful. They have been used in practice for small amounts, many times, with no issues, and this system obviously changes things.

They are useful in customer-merchant contexts because the merchant can cancel the order after anyway in case of a double spend, and in in-person contexts because you're in person so the risk of trying to cheat is too high. That's the main reason why zero-confs are fine; you only really need the preliminary notification to be instant, not total security.

Re: BitUndo – Double Spending as a service

#30
post #15

This link was also posted to reddit.com/r/bitcoin about an hour ago and was making its way up the front page. Now ... gone. I wonder if it's a scam or it got reported and deleted out of fear of causing a stir or similar.

It's still on the front page, not sure what you're talking about http://www.reddit.com/r/Bitcoin/comments/234iem/bitundo_allo...
Post reply on HN