6 ms·
What I don't understand is how Ethereum can describe their dapps as "trustless" when all the trust is still centralized in an oracle. This can even happen accid
by Jasper_ 9y ago
What I don't understand is how Ethereum can describe their dapps as "trustless" when all the trust is still centralized in an oracle. This can even happen accidentally, such as with the Mayweather/McGregor smart contract breakage. [0]
But now imagine if BoxRec had intentionally reported false results from their website in order to make a lot of money on the bet. People would lose their money, and there would be no recourse.
[0] https://www.reddit.com/r/ethtrader/comments/6w5wcn/important_update_mayweathermcgregor_smart_contract/ https://www.reddit.com/r/ethtrader/comments/6w5wcn/important...
- albertgoeswoof 9y agoYou can solve this by using multiple oracles and a stake-based consensus algorithm to de-incentivize malicious reporting.
- Jasper_ 9y agoI am unable to find anything about using multiple oracles in Ethereum. Do you have any information about this?
- cslarson 9y agoChainlink is a project to enable a network of decentralised oracles.
- manderson2080 9y agoHere's some good background on ChainLink: https://medium.com/@signal_capital/https-medium-com-signal-capital-our-investment-in-chainlink-15ab90ee9c02 https://medium.com/@signal_capital/https-medium-com-signal-c...
- Jasper_ 9y agoReading up on ChainLink: > Several data providers respond to this service agreement with a bid in the form of a data reply — when enough data providers have responded, the majority response is taken (or average depending on the request), outliers are removed, and data is fed into the contract. What's to stop me from setting up 10,000 different data providers that initially provide good data to get a good reputation score, but then slowly corrupt them over time? It doesn't matter how many data providers you average if I can set up millions of them in seconds. I don't see any way to solve Sybil attacks here.
- goldenkey 9y agoBingo. Most cryptocurrencies/contracts/anything in the field/realm -- they don't attack the problem of "person" vs address/wallet/account. ChainLink might think they are clever but like you said..when accounts in your network are free, then don't expect any kind of consensus to work. Accounts or rather, more abstractly, entry into your network -- needs to cost something that can't be easily done to gain majority. Another way to attack the issue is to do antes..so accounts dont cost anything unless the account holder is caught doing something bad -- ie. every entry requires a refundable collateral.
- tenaciousDaniel 9y agoAccounts are free, but interaction is not. There's a stake to be lost in these transactions.
- goldenkey 9y agoOne thing that these networks don't seem to protect well against are fake peers that request data but dont provide it. These currencies and coins have been lucky in that regard and have prevented some of it by seeding their own trusted peers as the initial peer neighborhood. But is this true decentralization? Seems a bit obtuse. To add to the baffle, IPFS started using bitcoin and ethereum for storing the initial peer data for new clients to connect to. Its a web... maybe thats ok. Are things allowed to be this tangled? ;-)
- eyezick 9y agoAugur (mentioned on the article) is fundamentally a decentralized oracle
- symlinkk 9y ago> stake-based consensus algorithm What do you mean by this?
- wcarron 9y agoProof-of-stake as opposed to Proof-of-work
- symlinkk 9y agoSo the oracle is incentivized to tell the truth because lying will hurt the value of their tokens? What happens when someone offers them more than their tokens are worth if they lie?
- cturner 9y agoImagine a blockchain operated by a consortium of five companies. There are also second-grade members in the pool. For the sake of example, imagine this is a market that is being used to trade fishing rights for a region off Iceland. Each of the five has a holding of Consortium Coin on this chain. This give them voting power in any decisions that have to be made of the chain. None of the second-grade members have any Consortium Coin. The second-grade members trade in Fish Coin and Boat Coin. Each of the five operates an oracle feeding to the consortium. It provides fisheries stocking data, and records of dock inspections of member boats. Each piece of incoming oracle data is signed to indicate that it is backed by the Consortium Coin holdings of the operator (proof-of-stake). A simple election/raft algorithm decides that Oracle advice is true once it passes a threshold of so-much Consortium Coin. There are contracts signed in western countries where the five firms are listed. These contracts say - essentially - that they will operate in good faith on the chain. (If they did not, they could be sued in the usual way). There is a direct line out of this chain into the regulator, who runs analysis algorithms against the reported behaviour, and compares that to their independent mechanisms. Bribery could still exist off-chain. But that is not new, and we do alright at protecting against that through current systems of governance. In this scenario, the thing your proof of stake is protecting against is a non-consortium blockchain member setting up a rogue oracle. Why is this valuable? If ppl get the model right, you can run sophisticated markets like this without any civil servants being involved. It may turn out to be policy-wonk heaven. You can cut the size of the civil service, and yet have much more nuanced regulation, and better game-theory for operating markets. Next: a social network going where people indicate trust of one another, and act as semi-guarantors for people they have vouched for. Next: operate sections of the legal and judicial system over the chain. Human actions captured on a cheap, secure, distributed ledger.
- joosters 9y agoNow you have lots of extra complexity and multiple points of failure instead of just one.
- rytill 9y agoNo, it's for redundancy.
- thinkmassive 9y agoThis is how Vitalik initially described oracles, as far as I know: https://blog.ethereum.org/2014/07/22/ethereum-and-oracles/ https://blog.ethereum.org/2014/07/22/ethereum-and-oracles/ The terminology seems to have changed to mean any system that provides external data to ethereum contracts.
- JorgeGT 9y agoPlus, it's not like bribing oracles is unheard of. Herodotus, who lived 2500 years ago, already reports instances of bribery affecting the predictions of the Oracle at Delphi: https://archive.org/stream/jstor-3287085/3287085_djvu.txt https://archive.org/stream/jstor-3287085/3287085_djvu.txt
- dahdum 9y agoA lot of dapps don't need oracles to run. Anything that does is still more trustless than a centralized solution would be, reducing the counterparty risk to the oracle alone. As mentioned elsewhere, a lot of work is also being done on decentralizing the oracles. Like PoW / PoS protection, this raises the cost of an oracle attack high enough to reduce the risk to acceptable levels for more sensitive applications.
- joosters 9y agoIf your code doesn't reach out beyond the blockchain, then there's very little it can actually do. You are limited to twiddling balances of coins. This turns out to be great for making casinos and ponzi schemes, but little else. To do anything more meaningful, code needs to interact with the real world. And this is generally the point at which blockchain apps lose all of their purported benefits, like decentralization, immutability, reliability and so on.
- eyezick 9y ago> If your code doesn't reach out beyond the blockchain, then there's very little it can actually do. Asset issuance, voting, wills, identity/reputation systems, land registries. Fundamentally, a blockchain is just public, transparent immutable data history. Of the above sample cases, all it takes is for the powers to be to recognize the data as a reflection of the real world; which is a barrier outside of the technology. And sidenote, decentralized oracles will literally tie outside world to the blockchain.
- joosters 9y agoAsset issuance, voting, wills, identity/reputation systems, land registries. All of which reach beyond the blockchain. No-one is going to care that a 'smart contract' says that Alice owns a plot of land when Bob holds the real-world deeds. The real world and the blockchain can only be linked when, as you say, 'the powers that be' decide to recognise the data. But then you've lost all of the advantages that the blockchain was claimed to possess. For example, if we need an entity to recognise that the land registry smart contract is valid, there's no more decentralization, and we might as well let that entity store the land registry in their own simple database. The blockchain becomes pointless and wasteful.