1

I refer to 5.Cloud computing in the Further Application section of the Ethereum whitepaper, and I wonder how this can be achieved in a decentralized way.

For example, if I have a task that I want to distribute to different nodes and wait for the results, without using an oracle to verify the results, an approach I can think of is to distribute the same task to multiple nodes and compare the collected results, and then take the majority of the answers as the correct answer and reward the nodes giving the correct answer.

If I have to code this logic in a smart contract, I will have to write a contract method for nodes to return the results, and specify the logic of verifying the results in the contract. My concern is, since the blockchain is open and transparent, when a node wants to return the result and waits for reward, the result returned will essentially by visible to all and other nodes can therefore "steal" the result and call the same method with that result without actually doing the computation task.

So how exactly can cloud computing be distributed, verified and rewarded in a decentralized manner when all results are open?

I have also looked into some other posts for ideas, such as Using ethereum to fund distributed cloud computations? and Verifiable computing?. But it seems to me that the problem is really that there is no way to encrypt the results returned from running a computation task and thus prevent others from stealing it without actually doing the work.

Any advice or comment will be appreciated.

1

Take a look at the "Blind Auction" example from Solidity Docs. http://solidity.readthedocs.io/en/v0.4.21/solidity-by-example.html#id2

The problem can be solved by dividing the submission of results in two phases. In the commit phase, distributed nodes commit to a solution by sending the hash of the result (salted with a secret). In the reveal phase, the nodes reveal their result by providing the plain values + salt. If it matches the hash that they have sent before, they can prove that they made that calculation.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.