Eliminating Waste

Since so much computational power is being expended to solve cryptographic puzzles, which at their core are just pumping out random numbers, why not make those puzzles something that can be useful to the rest of the world? For example, miners can search for large primes, look for aliens and planets, simulate proteins at the atomic level, or generate predictive climate models.

If we can use the whole computational power on the Bitcoin network to work on these problems, we could solve them so much faster! Wouldn’t being able to predict the weather be great? It seems like a great idea, but there are issues.

These distributed computing problems are usually unsuitable for proof-of-work and don’t work as cryptographic puzzles.

There’s a fixed amount of data in the system, meaning that there is a finite number of solutions to the problem.

As soon as somebody has found the solution to a particular problem, what happens then? Or what if there’s not enough data to find a solution? The problem can’t be used for proof-of-work anymore.

In Bitcoin, since the puzzle is based on the previous block, the problem space is inexhaustible.

You can always generate more problems with more solutions.

In contrast, we used SETI@Home data for our puzzle, we could run out of raw radio telescope data, leaving no problem to solve.

Next, potential solutions are not equally probable.

For example, if you’re looking for planets in the sky, one part of the sky might be more populated than others.

It’s not equally likely that you’ll find a planet in all sections of the sky.

In the hash functions of Bitcoin, it’s on average equally difficult to find a solution.

Having a uniform solution space means that the only way to find a solution is through pure brute force computation.

You can’t find any tricks or shortcuts that will let you avoid that computation.

Lastly, these problems are delegated by central entities, as opposed to to in Bitcoin, whose problems are created by its protocol.

It opens up the potential for collusion and exploitation.

When we rely on a central authority or central entity to create the problem.

So in summary, proof of useful work sounds like a great idea, but it’s incredibly difficult to implement.

Consensus Updates: Bitcoin Core