Peter R (OP)
Legendary
Offline
Activity: 1162
Merit: 1007
|
|
March 05, 2014, 08:28:54 PM Last edit: March 06, 2014, 12:37:30 AM by Peter R |
|
Fraud is usually considered a detriment to a prosperous society, and most societies have laws and social pressure to discourage such behaviour. A common definition of fraud is:
fraud: wrongful deception intended to result in financial or personal gain
The poll question relates to the ethics of bitcoin miners facilitating double-spends for users for profit.
BACKGROUND: Successfully double-spending a zero-confirm transaction is difficult. If a customer broadcasts a transaction to pay a merchant, and simultaneously double-spends those coins to an address under his control, the merchant's listening node will very likely detect the double spend attempt and the customer will not be successful. If the customer waits until he has left the store with his merchandise before broadcasting the double spend, then most network nodes won't propagate this transactions and most miners won't add it to their memory pool, and again the customer will not be successful.
However, if the customer can broadcast the double-spend transaction privately to a miner that controls, say, 10% of global hash power, over a non-public back channel, and if the miner agrees to replace the original transaction (the payment to the merchant in our example) with this new transaction, then the double spend will be successful 10% of the time.
If a miner offers this service for profit and if customers use it to deceive merchants, would you consider the miner to be complicit in fraud?
(This is not a discussion about enforcement, just whether or not this qualifies as fraud in your opinion)
|
|
|
|
cdog
|
|
March 05, 2014, 08:47:57 PM |
|
Yes.
|
|
|
|
BADecker
Legendary
Offline
Activity: 3962
Merit: 1382
|
|
March 05, 2014, 09:26:30 PM |
|
On the other hand, since Bitcoin is only BETA - even though it seems to work well - and since most Bitcoin users know that they know very little about the underlying process that makes Bitcoin work, and since many in government and the media have been suggesting (often loudly) to watch out for Bitcoin, and since we all know that there might be many different "things" not thought of regarding the Bitcoin processes, how can there be any fraud, since anything goes, because there isn't any complete "perfection" as yet, and it is all a risk that folks have wildly jumped into? Now, if it goes through the courts, then will it be fraud if the courts say it is? Or is it only fraud in that case if you want to believe the courts?
|
|
|
|
Mike Christ
aka snapsunny
Legendary
Offline
Activity: 1078
Merit: 1003
|
|
March 05, 2014, 09:52:47 PM |
|
...how can there be any fraud, since anything goes, because there isn't any complete "perfection" as yet, and it is all a risk that folks have wildly jumped into?
Users of Bitcoin do not have their own special moral category; the warning that comes with bitcoin refers to the technology itself failing in some fashion, not the people who use it. It's fraud under the following condition: fraud (frôd) n. 1. A deception deliberately practiced in order to secure unfair or unlawful gain. Which is precisely what double-spending is.
|
|
|
|
BADecker
Legendary
Offline
Activity: 3962
Merit: 1382
|
|
March 05, 2014, 09:57:58 PM |
|
...how can there be any fraud, since anything goes, because there isn't any complete "perfection" as yet, and it is all a risk that folks have wildly jumped into?
Users of Bitcoin do not have their own special moral category; the warning that comes with bitcoin refers to the technology itself failing in some fashion, not the people who use it. It's fraud under the following condition: fraud (frôd) n. 1. A deception deliberately practiced in order to secure unfair or unlawful gain. Which is precisely what double-spending is. Thank you. But it made you think, didn't it? Now ask yourself, is government fraud?
|
|
|
|
Peter R (OP)
Legendary
Offline
Activity: 1162
Merit: 1007
|
|
March 05, 2014, 09:59:18 PM |
|
...how can there be any fraud, since anything goes, because there isn't any complete "perfection" as yet, and it is all a risk that folks have wildly jumped into?
Users of Bitcoin do not have their own special moral category; the warning that comes with bitcoin refers to the technology itself failing in some fashion, not the people who use it. It's fraud under the following condition: fraud (frôd) n. 1. A deception deliberately practiced in order to secure unfair or unlawful gain. Which is precisely what double-spending is. Well put Mike.
|
|
|
|
Mike Christ
aka snapsunny
Legendary
Offline
Activity: 1078
Merit: 1003
|
|
March 05, 2014, 10:13:13 PM |
|
Thank you. But it made you think, didn't it? Now ask yourself, is government fraud? I see what you did there
|
|
|
|
Peter R (OP)
Legendary
Offline
Activity: 1162
Merit: 1007
|
|
March 06, 2014, 05:53:03 AM |
|
Just wanted to add some fuel to this fire! (It's a good fire!)
Does the miner know the intention of the individual committing the double spend? Does it matter?
Is there ever a situation where double spending is legitimate?
I thought this was some kind of riddle, so I racked my brain trying to come up with a situation where I felt double spending would be legitimate. I couldn't think of anything. A corollary of this is that when accepting transactions into your memory pool, I also couldn't think of any situation where you should not simply accept the first transaction that you are aware of as the legitimate one.
|
|
|
|
Light
|
|
March 06, 2014, 05:59:55 AM |
|
It a clearly fraud if the miner is aware that he is being complicit/aiding someone wishing to commit fraud themselves. It is really no different from an accomplice in a crime, both are guilty. On the other hand if the miner isn't aware ethically there isn't anything he could do. Although, it is rather hard to see a legitimate reason for such a service.
|
|
|
|
grau
|
|
March 06, 2014, 06:45:39 AM |
|
I thought this was some kind of riddle, so I racked my brain trying to come up with a situation where I felt double spending would be legitimate. I couldn't think of anything.
A double spend could also be a legitimate attempt of correction for excessive fee, wrong address or whatever previous software or human error. The problem lies with the assumption the miner could know better. You simply can not assume that, and then call the miner a fraudster depending on your view of order. Transactions do not have a timestamp of their own, network propagation is random. kjj summed it up nicely: https://bitcointalk.org/index.php?topic=500345.msg5540800#msg5540800
|
|
|
|
mustyoshi
|
|
March 06, 2014, 07:07:08 AM |
|
A merchant should not rely on unconfirmed transactions ever.
|
|
|
|
exapted
Newbie
Offline
Activity: 51
Merit: 0
|
|
March 06, 2014, 07:23:04 AM |
|
Bitcoin is about security by algorithmic design, not security by policy. We should assume nothing about peoples' intentions when using the Bitcoin network. Don't expect anyone to swoop in and save you, unless you're ready for them to be your overlord.
Double spending is a legitimate use of the Bitcoin network.
|
|
|
|
luv2drnkbr
|
|
March 06, 2014, 07:31:07 AM |
|
The protocol is the protocol. If it enables fraud, that is part of the protocol. Thankfully, with a modicum of simple measures, it does not allow fraud.
The protocol is the protocol. It doesn't care if your transaction is a double spend or if there's a fee or no fee or if it's non-standard or standard or if you accidentally send 0.01 bitcoins with a 300 bitcoin miner fee.
The protocol is the protocol. You will relay any transactions you think should be relayed, just as others will do. You will mine transactions you think should be mined, just as others will do. Most people don't mine dust or non-standard transactions, some do.
The protocol is the protocol. The protocol is amoral. It doesn't care about what you use your bitcoins for, or if you are attempting to defraud somebody. All it knows is that's a valid transaction. And that's all it needs to know.
Anything allowed by the protocol is fair game.
In fact that's the entire point of the protocol. You are actually doing bitcoin wrong if you are placing your trust in people with bitcoin. The whole idea is that the protocol prevents fraud where possible with cryptography, and where crypto is not possible, it prevents it with economic incentive. That is how the protocol works. If you can change those parameters, more power to you. If you can break the crypto, you get the coins. If you can change the economic incentive, you can pressure the miners.
All's fair in love and crypto, because the whole purpose of crypto is that you aren't supposed to trust it.
Something worth double spending for is something worth waiting a few confirmations for. All's fair in crypto.
The protocol is the protocol.
|
|
|
|
Peter R (OP)
Legendary
Offline
Activity: 1162
Merit: 1007
|
|
March 06, 2014, 05:51:57 PM |
|
You are on this list and don't want your money trapped in limbo. https://blockchain.info/unconfirmed-transactionsYou've made a copypasta error and sent money to the wrong address, yet it has not been confirmed yet. Someone has hacked your computer and sent your money to an address that you do not control, yet it has not been confirmed yet. Yes, I came up with all these reasons myself, but they just don't hold up to scrutiny in my mind. 1. I've had money trapped in limbo, and it was annoying, but it eventually got confirmed. If it didn't then the other nodes would have dropped it from their memory pool. Neither I nor the recipient was ever at risk of losing funds. When we have smarter miners that implement the "child pays parent" scheme then this annoyance should disappear. 2 & 3. Both these arguments seem like slippery-slopes: what if it has only received 1 confirmation? Is it ethical to pay a miner to attempt to orphan this block? From an ethical perspective, I believe that the transaction becomes legitimate the moment it is broadcast to the network. Again, just because it is technically possible to intentionally orphan a block or swap an earlier TX variant with a later one, doesn't mean that doing so is ethical. Additional thoughts: Copypasta: I hope that in most cases, copypasta errors don't result in the loss of funds. I only store addresses in my address-book of people I trust: if I made a copypasta error, I would simply ask for my funds back. (Readers should note that typo errors are safe, as the typo will result in an invalid bitcoin address and your wallet will flag the error.) Furthermore, as wallet technology improves, this will naturally become less of a risk. Theft: If hackers stole the limited funds accessible on my computer...hmm that reminds me that I need to make another transaction to cold storage. I don't know. This is the hardest one for me, and...you know...I would probably try to double-spend in this case if I had the ability to attempt it. But I would rather not have this ability if it means that others do not have this ability. For this reason, I don't believe I would ever accept the later TX variant into my memory pool. That being said, if a hacker breaks into my computer and steals my bitcoin, they still committed a crime!
|
|
|
|
Peter R (OP)
Legendary
Offline
Activity: 1162
Merit: 1007
|
|
March 06, 2014, 06:32:15 PM |
|
It sounds like you are accepting at least one scenario as a legitimate reason to double spend.
May I ask you what your opinion on the matter is? Do you think there is ever a legitimate reason to double spend? I am also curious how you would vote in my poll. The poll question wasn't about double-spending in general, but the particular case where a miner offers an OOB double-spending service for profit that enables users to defraud merchants (the service keeps the later TX variant private from the network). Do believe the miner is or is not complicit in the fraud in such a case?
|
|
|
|
deltanine
|
|
March 06, 2014, 07:34:39 PM |
|
However, if the customer can broadcast the double-spend transaction privately to a miner that controls, say, 10% of global hash power, over a non-public back channel, and if the miner agrees to replace the original transaction (the payment to the merchant in our example) with this new transaction, then the double spend will be successful 10% of the time.
If a miner offers this service for profit and if customers use it to deceive merchants, would you consider the miner to be complicit in fraud?
(This is not a discussion about enforcement, just whether or not this qualifies as fraud in your opinion)
Whoever would scam like this would be the dumbest criminal of all time. The double-spending miner would need 3 petahashes to have 10% of the network. That's at least $6-7,000,000 in asics to achieve that. But they would constantly need to add as the difficulty continues to rise. All this so that 10% of the time you are successful at a small purchase scam? If you had that much hashing power wouldn't you just use it to mine bitcoins honestly, raking in around 900 a day?
|
Freedom is a state of mind, and then Bitcoin comes along..... -S4VV4S
|
|
|
deltanine
|
|
March 06, 2014, 07:49:44 PM |
|
However, if the customer can broadcast the double-spend transaction privately to a miner that controls, say, 10% of global hash power, over a non-public back channel, and if the miner agrees to replace the original transaction (the payment to the merchant in our example) with this new transaction, then the double spend will be successful 10% of the time.
If a miner offers this service for profit and if customers use it to deceive merchants, would you consider the miner to be complicit in fraud?
(This is not a discussion about enforcement, just whether or not this qualifies as fraud in your opinion)
Whoever would scam like this would be the dumbest criminal of all time. The double-spending miner would need 3 petahashes to have 10% of the network. That's at least $6-7,000,000 in asics to achieve that. But they would constantly need to add as the difficulty continues to rise. All this so that 10% of the time you are successful at a small purchase scam? If you had that much hashing power wouldn't you just use it to mine bitcoins honestly, raking in around 900 a day? The miner can do both. The miner can add the double spend transactions to the blocks they create and these blocks are compatible with the honest network, raking in all those block rewards. The miner chooses which transactions to add to his blocks. In this example, the double spenders are paying the miner to add their double spend transaction instead of their initial transaction. If this particular miner then finds the next block, the double spend becomes the transaction written in the block chain. If another miner finds the next block, then the initial transaction is most likely the one which will be included in the block chain. This kind of double spending would only work in blocks found by the miner being paid to include the double spend transactions. But why would anyone do this? If you had that type of money invested in bitcoin mining why would you strive to devalue bitcoin? If small transactions failed 10% of the time merchants would be less likely to adopt it. Then at the end of the day your 900 honestly mined bitcoins a day are all valued less and you have left yourself open to legal issues. This move just does not make any sense. And keep in mind, you couldn't scam like this with high dollar purchases. Those would undoubtedly be waited on for full confirmation by the merchant into their wallet.
|
Freedom is a state of mind, and then Bitcoin comes along..... -S4VV4S
|
|
|
grau
|
|
March 06, 2014, 08:11:56 PM |
|
Let me pour a bit more oil to the fire:
What if one broadcasts a double spend of a confirmed transaction with a fee that provides enough incentive not to mine on top of the chain but to fork it just before the confirmation?
Is it ok to accept the bribe?
|
|
|
|
grau
|
|
March 06, 2014, 08:22:51 PM |
|
Let me pour a bit more oil to the fire:
What if one broadcasts a double spend of a confirmed transaction with a fee that provides enough incentive not to mine on top of the chain but to fork it just before the confirmation?
Is it ok to accept the bribe?
Does the miner know the intention of the broadcaster? No. The miner has only publicly available information accessible to all other miner: that is the block chain and a double spend attempt on the network.
|
|
|
|
grau
|
|
March 06, 2014, 08:32:45 PM |
|
Let me pour a bit more oil to the fire:
What if one broadcasts a double spend of a confirmed transaction with a fee that provides enough incentive not to mine on top of the chain but to fork it just before the confirmation?
Is it ok to accept the bribe?
Does the miner know the intention of the broadcaster? No. The miner has only publicly available information accessible to all other miner: that is the block chain and a double spend attempt on the network. Then I would say there is nothing wrong with attempting to grab these coins. There is also nothing wrong with the rest of the network ignoring your fork should they choose. I agree. Just emphasized with the question, that order is not even final with a confirmations it is just more and more likely to be final... There are no good and bad motives in absence of extra information.
|
|
|
|
|