When I design systems, one of my favorite things is looking at "abuse cases" which define how they behave when confronted by bad actors.
I am a big fan of cryptocurrencies. They give us an opportunity to design systems which enforce and incentivize behaviors, e.g. removing risk and rewarding good behavior. It's important to recognize that these are new, unregulated markets, though, and some of the protections from bad actors that we expect aren't there unless we build them in.
A replacement for credit cards?
If we think of Bitcoin as simply being a decentralized replacement for credit cards, then we may forget the consumer protections which are built into the current credit card system.
If I am a merchant selling products from my online store, criminals can buy my products with a stolen credit card. When we charge the card, it looks good, and we ship the products. A month later the card holder gets their bill and disputes the transaction. We have to refund their money and take the loss, or we get in trouble with the credit card company and lose our ability to make sales.
From the merchant's perspective, one of the nice things about Bitcoin is that transactions are final. If there is fraud, where is my incentive to refund the money? This goes against consumer expectations and consumer protection laws.
There is a very interesting opportunity to rate vendors and consumers to deal with this situation, but it's not part of Bitcoin.
In most lotteries, the players are ok with the payouts not matching the inputs. Governments take advantage of this to fund various things, and, as my economist friend says, "lotteries are a way for the government to convert post-tax money into pre-tax money".
The winners are happy with this situation, as they get a windfall. Some people say that a lottery is a tax on people that can't do math, but even the losers gain something they value, the hope of winning.
Lotteries tend to be very heavily regulated due to abuse. In a legal lottery, there can be a complete accounting of the money going in and going out. It's actually a perfect application for a blockchain system.
Years ago there was no government lottery in Taiwan. Chinese people like to gamble, though, so the mob offered an underground lottery based on the Hong Kong government lottery. They sold tickets to Taiwanese customers, then when the Hong Kong lottery announced its winners, it would use their numbers and pay out.
There was no accountability in the first place for what percentage got paid out, and there was an interesting twist: if you won, then they would negotiate with you about how much you would actually receive. Getting out your winnings was a lot harder than putting in your money, but the people who won were still happy.
A gambling platform?
A company once contacted us for a quote on a website for online sports betting. We designed a system and gave them an estimate to build it. They said, however, that they had found an open source package that would do the job, written in PHP. We had a look at the code and found a lot of issues with accuracy, error handling, etc. I told them, but much to my surprise, they were unconcerned.
In a standard gambling system, the odds are a mathematical reflection of how people bet, e.g. 2:1 odds means that twice as many people are betting for one team to win compared to the other. The house makes their money by taking a percentage of the bids / payouts. In sports, though, it's common for people to bet for their home team whether or not they actually think it will win. So some gambling site operators take people's money but don't change the published odds. If people are being emotional, then they will bet on a losing team and the operator doesn't have to pay out. In this case, the accuracy of the system is less important to the operator.
There is an interesting opportunity for perfectly accountable gambling systems based on the blockchain.
A stock exchange?
Right now, I am wondering whether the current cryptocurrency exchanges look more like the gambling systems or lotteries described above than their regulated equivalents. What does a bad actor exchange look like? How could you tell?