6 ms·
You can solve this by using multiple oracles and a stake-based consensus algorithm to de-incentivize malicious reporting.
by albertgoeswoof 9y ago
You 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? ;-)
- lgierth 9y ago> To add to the baffle, IPFS started using bitcoin and ethereum for storing the initial peer data for new clients to connect to. This is false. Where did you get that impression?
- goldenkey 9y agoYou are absolutely wrong. https://en.m.wikipedia.org/wiki/InterPlanetary_File_System https://en.m.wikipedia.org/wiki/InterPlanetary_File_System In 2014, the IPFS protocol took advantage of the Bitcoin blockchain protocol and network infrastructure in order to store unalterable data, remove duplicated files across the network, and obtain address information for accessing storage nodes to search for files in the network. https://cointelegraph.com/news/ipfs-protocol-selects-ethereum-over-bitcoin-prefers-ethereum-dev-community https://cointelegraph.com/news/ipfs-protocol-selects-ethereu... https://mobile.twitter.com/Alex_Amsel/status/778440701902139393 https://mobile.twitter.com/Alex_Amsel/status/778440701902139...
- manderson2080 9y agoThere's a penalty payment that each node puts up into escrow for each assignment of data, and if the data is not accurate in relation to all the other providers of that same data, the node will lose the payment. There will also likely be a small amount fo LINK required to start a node with enough reputation to gain assignments which would also increase the cost of a Sybil attack.
- traverseda 9y agoMmm, what would stop me from just grabbing the data the other oracles made available, and pretending I did the actual calculation/check/api-call/whatever?
- Heraclite 9y agoCheck the paragraph about Freeloading in their whitepaper
- Jasper_ 9y ago> There's a penalty payment that each node puts up into escrow for each assignment of data, and if the data is not accurate in relation to all the other providers of that same data, the node will lose the payment. So, a prisoner's dilemma situation here? If one person objects, everyone loses their money? Who gets the payment? Are the coins permanently burned? If so, seems harsh in the face of accidents. If not, seems open to abuse if someone could be both the smart contract creator and a data provider. I create 100 data providers, and a smart contract, and when I detect someone new has joined my pool, cause them to lose their coins which are sent to me. > There will also likely be a small amount of LINK required to start a node with enough reputation to gain assignments which would also increase the cost of a Sybil attack. Ah, so an economic majority that successfully scams others and acquires a mass of tokens can use them to launch more data providers.
- 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.