Hacker News new | ask | show | jobs
by soheil 1843 days ago
It'd be interesting if the proof of work computing at the heart of Bitcoin would do something similar to projects like SETI [0] or Folding@home [1] protein folding project that requires distributed computing.

[0] https://setiathome.berkeley.edu/

[1] https://en.wikipedia.org/wiki/Folding@home

1 comments

They can't be used for proof of work.

Hashing for say, Bitcoin, works because you're finding a hash that has certain properties (e.g., having a certain number of leading zeroes). Anyone can take the input (to the hash function) you've found and trivially test that it does indeed produce a hash with those properties. Finding the hash is hard, but testing the hash is easy.

Doing SETI/Folding work doesn't work like that. Consider Folding: every unit of work produces useful output. Every input produces equally valuable output. Additionally, the cost of producing the output is high, but the cost of verifying that output is also high.

With hashing-based PoW, everyone in the network can verify that a hash with the correct properties was produced. There's no way to say "yes, this one Folding@home worker found something unique". The work needs to be checked, which means a majority of nodes in the network need to verify the output, which means >50% of the network needs to compute the same thing again (you can't rely on less than a majority, or anyone could cheat).

Take SETI for example. If you find an earth like planetoid in a very precise region of sky which takes a long time to sift through pictures of the sky to find then you can just give the coordinates of that point for other nodes to verify. This could be the PoW algorithm.
That's problematic, though. You have a fixed computational difficulty (difficulty can't be scaled up or down).