http://fermatslibrary.com/s/ethereum-a-next-generation-smart...
http://fermatslibrary.com/s/ethereum-a-next-generation-smart...
The document mentions creating a crop-insurance application that would depend on a weather feed.
The problem is if the weather feed isn't something that's uniformly secureable the result could be bad given that the insurance application would take action automatically and no appeal to any higher authority concerning the fraud would be possible - without a "fork" as happened earlier. Hack an insecure feed, an insecure site or whatever and viola, free money.
And this seems like a problem any interface with the "real world" would face. The idea of automatically occurring, no-appeal financial transactions sounds but I would claim it's always going to be problematic - only a fool or a crook would put their money in this kind of system and the crook only puts in enough money to remove the money of the fool.
The ideal of say, money, is it belongs to you, where you is a broad but understandable concept. Something that belong to "whoever has X, Y, Z pieces of information about you" may sound great until someone beside you gets that information and there is no recourse. Indeed, the person who had the information "did nothing wrong" if the account really, really did belong to "whoever has this information" rather than belonging to you.
You still end up trusting a human - an "oracle". You trust the weather feed, or you trust some exchange to give you the accurate price of some other asset. If that oracle is mistaken (bug, intentional misinformation), the smart contract can be manipulated.
However, I know of at least 1 promising project on Ethereum (Augur) that provides decentralized oracles, and you can trust these oracles due to some clever game theorish mechanics.
The gist is randomized Reporters submit real-world information to the blockchain and earn a fee for their service. Reporters purchased a cryptoasset to have this priviledge, and if a certain Reporter submits information in conflict with a majority of other reporters (e.g. they lied) then they lose a portion of their cryptoasset giving them incentive to play by the rules and get paid for it.
And even further, if majority of Reporters report dishonestly then people will not use the Oracle service, the Reporters will not be able to earn fees, and the cryptoassets they purchased to allow to be reporters become worthless.
To be precise: it gives them incentive to submit the same information as majority of other Reporters. This is a huge difference.
Now, imagine that team B somehow win the match. How can the system prevent the overwhelming majority of team A backers from submitting a fake result claiming that their team won? They will vastly outnumber the people backing team B, and also outnumber any of the casual observers who might also contribute to the results. So the market will get settled as if team A won, thanks to the 'wisdom of the crowd'. The minority backers will be robbed.
In a lot of ways, it seems like you could create something like a theory that it impossible to create a system that distinguishes "real world input" from "noise that I get from outside" without that system having a model of said real world.
Further even if you did that and by random chance are selected to report on your sporting event, you have to hope that majority of other reporters who were also chosen do the same thing you do (keeping in mind you don't know who they are), so if you still choose to report a lie you further risk losing a portion of the REP that you previously bought.
The only practical way to game the system is to have a majority of all REP holders collude and they would in truth control the outcome of all events. However it would be a waste of their money to do so, because the value of REP is derived from trading fees, and their trading fees would be non-existent because no one would use Augur if the reporting wasn't reliable, so the value of their REP holdings would plummet.
It's just like a 51% attack on Bitcoin, it's physically possible but you're financially incentivized against it.
You could program whatever logic you want into the insurance. For example, some kind of dispute resolution system that appeals to a higher authority.
How do insurance companies deal with this problem today? Why do you trust the insurance company not to lie and say that the weather was fine? Whatever that mechanism is, it can be programmed into a smart contract.
The legal system. It can put people in jail for fraud if necessary.
Do you really want "smart" "contracts" to have the power to put people in jail? Really?
A contract dispute is where both parties are truthful, but disagree on the resolution of the contract. This is the part smart contracts fix.
And it's how insurance companies deal with these problems today.
I'm just saying that it's possible to solve the problem the same way that it is solved today.
Since this is the exact thing that the double spending algorithm would check against this wouldn't be allowed, and therefore you can't have normal insurance in a blockchain world.
In general I see two really hard challenges with smart contracts. Getting them bug free (i think formal verification which is worked on will help a lot) and getting the incentives right to punish dishonest behavior. (So far I haven't seen a lot work being done here, I also don't know how you could automise that, maybe some kind of simulation with AI based actors)
If people even know of the existence of a dispute, it's almost certainly because they have some personal stake in the outcome, and they will vote for the outcome that benefits them.
* Making the trust-liability explicit
* Building a trust-less core system that can swap out 'trustful' sources of data as needed
* Streamlining the processing and accounting of something that depends on a 'trustful' source of data
Not to mention that trust-less data is potentially achievable with prediction markets. This is obviously not a trivial innovation, and they may not be practical, but writing off the whole system is unfounded at this point.
Protocols and decentralized applications around decentralized file storage, decentralized computation and decentralized prediction markets, among dozens of other such concepts, have the potential to substantially increase the efficiency of the computational industry, and provide a massive boost to other peer-to-peer protocols by adding for the first time an economic layer
I believe blockchain technology is important and I think Ethereum is a strong contribution in its own right. But the more I read of Vitalik's Sokal-style writing the more I wish he would stop and let others handle it because he is making it sound like he's going to scam the shit out of everybody.
The question for Ethereum, like any technology, is what real-world problem is it uniquely suited to solve? Personally, I don't think Ethereum will ever live up to the hype surrounding it because its founders have promised more than it can deliver.
Computation: pretty much the whole point of the Ethereum VM, plus there are a couple projects that put proofs on the blockchain of larger computations than the blockchain can handle.
Prediction markets: Gnosis and Augur
Efficiency: at least developer efficiency, in my experience
Economic layer: because you have reliable currencies on the network, both ETH and roll-your-own.
It might sound like buzzwords but at this point it's all real code.
Real code that doesn't provide the stated advantages doesn't mean much, right?
I have long-term hopes that decentralized currencies let us build some interesting products, but there's massive volatility against fiat when holding crypto, which makes it hard most people to want to use these auxiliary services
But it doesn't say "computational efficiency." It's talking about efficiency of the industry, which is a completely different thing.
As a developer, I have various ideas for startups that would handle money. The easiest way to implement them is to build on Ethereum.