3 ms·
If you want to do more intense computation, https://truebit.io/ https://truebit.io/ has a cool solution. It's exactly what you said, it allows you to pay someon
by RexetBlell 9y ago
If you want to do more intense computation, https://truebit.io/ https://truebit.io/ has a cool solution. It's exactly what you said, it allows you to pay someone to do the computation for you and publish the result to the contract. After the result was published, anyone can verify that it's correct by re-running the computation. If the published result is not correct, you can interactively prove this to the smart contract because the smart contract is able to simulate 1 step of the computation. If there are N steps in the computation, it is possible to prove to the contract that the original person who did the computation cheated with log(N) transactions. After the contract is convinced that the original person cheated, he would punished by destroying his deposit.
Read the whitepaper and watch the videos if you want to learn more.
- MichaelGG 9y agoI only looked at it briefly. Very cool idea: Is it practical for heavy compute jobs though? Suppose a rendering takes 10 hours. If I don't know where the bug/difference is and just binary-search it, then they have to run at least 5 hours of computation to verify (out of the 2^^48 instructions, I'll start by asking for the 2^47th step). I guess that's solvable by requiring payment for verification runs and just splitting up your work into much smaller pieces.
- RexetBlell 9y agoYes, I think splitting up the work is a good idea. The authors already thought about how to incentivize verification runs. It's really cool. Check out this informative podcast with some of the team members: https://youtu.be/QY0OUTaIWIc https://youtu.be/QY0OUTaIWIc
- tech_man7 9y agoFor heavy compute, it's the Golem Network (golem.network)
- bpicolo 9y agoWhat's the benefit over throwing it at a cloud provider? There's an active downside of random people being able to see your data, not to mention randomly sized boxes and shoddy network connections (which is a big deal for the microservices which they are touting as a use case, and also for big data. Data transfer is one of the slowest bits of data science). Running a web service on random devices where keys, sessions, whatever end up in memory on some box would be a security nightmare. The government doesn't need a back door if all they need to do is host some compute nodes. Is it just that for some tasks that are very parallel and not sensitive it might end up cheaper?
- devrandomguy 9y agoTechnically, these problems also exist with cloud providers, but we more or less trust them because of their reputation. Perhaps a digitally signed NDA could be verified by a smart contract? Then, to prove the NDA was breached, a quick court case (standardized NDA) leads to a published ruling that the digital contract can check. Combine the clear guidelines of a standard NDA with a proper court adjudicating the more complex disputes, and you have the foundation for a strong reputation system for Eth-cloud services. Is reputation already a thing in the Ethereum network?
- bpicolo 9y agoI mean, they exist in much less of a form. It's trusting 1 entity vs literally everybody, including people intent on being bad actors. You also have to have less trust because you're operating in a more or less known environment. The network bandwidth will be a real problem regardless. Latency too. Single digit millisecond scale database roundtrips are awesome. 50-100ms would be just terrible. If that's a fundamental limitation then applications can only get worse, not really better. Overall, what fundamental problem are these solving? If they aren't solving a real pain point with a worthwhile cost, uptake is going to be nonexistent.
- Breefield 9y agoWow this is awesome!