
PUPoW: A Framework for Designing Blockchains with Practically-Useful-Proof-of-Work
& VanityCoin
One of the key factors in PoW is that the probability of a miner mining a block is equal to the fraction of the entire
network’s computational power held by them. Consequently, miners keep investing in these resources as long as it
is profitable to do so. Apart from establishing consensus in Bitcoin’s network, the solutions to these puzzles have
no use. These two factors combined mean that a lot of electricity (120 TWh per year [12]) and hardware resources
(91 ×1018 Hashes per second [1]) are spent just to mine Bitcoin, with no other useful work done. The total electricity
used in mining bitcoin exceeds the electricity consumption of many countries [12], which has been a major criticism
of Bitcoin. This criticism also had been one of the major reasons for the crypto-crash in May 2021 [13, 20], reducing
the public trust in all cryptocurrencies in general, even those not relying on PoW for consensus. If the total hardware
resources invested in Bitcoin mining also produce useful work, any supercomputer built in the foreseeable future won’t
parallel the network’s capability. The implications will be profound depending on how useful the problem being solved
is.
Currently, researchers are investigating if this computational intensive process of achieving consensus can be made
useful. Primecoin [14] requires miners to produce a Cunningham chain or bi-twin chain of some length decided by the
computation power of the network as proof-of-work. Though these chains of primes generated as PoW in Primecoin
are available to everyone for use, its practical applications are limited. PermaCoin [18] replaces proof of work with
proof of retrievability. The idea proposed here ensures that participating nodes store a very large data-set (like a library
of books) in a distributed manner. Proofs of Work From Worst-Case Assumptions [17] gives proof-of-work based on
problems like Orthogonal Vector, 3SUM, All-Pairs Shortest Path, and other problems which reduce to them. A Proof
of Useful Work for Artificial Intelligence on the Blockchain [16] describes a protocol that lets clients to submit Machine
Learning tasks to the miners and pay all the actors involved in the process (miners, supervisors, and evaluators) if the
model is satisfactory. Miners get to mine with some nonce after every iteration. The problem solved here is not easily
verifiable and regular nodes only check if the hash is less than the network target T.Proof of Learning (PoLe) [15]
is a consensus algorithm having data nodes and consensus nodes to do ML on blockchain. Data nodes push training
requests and consensus nodes choose the request with highest reward/time value to train. The model with the highest
test accuracy wins and the corresponding block is published. Gridcoin [11] is a proof-of-stake blockchain that awards
gridcoins to individuals contributing to BOINC white-listed crowdsourcing projects. In Coin.AI [10], miners must
design a neural network instead of solving the hash puzzle. The previous hash, the nonce, and the list of transactions
determine a neural network architecture. A miner trains this model on a publicly agreed-upon data-set. Any model
which crosses a threshold is valid. These works are often referred to as Proof-of-Useful-Work (PoUW), the work that
is used for two purposes: (i) to solve some useful problems, and (ii) to prove that some problem is solved to use as
PoW to maintain a distributed ledger.
The PoUW-based blockchains are limited at this point as (i) they propose a very specific problems which leads to
solving limited types of useful problems. (ii) Some proposals involve centralized administrator and data sharing (e.g.,
Coin.AI or Permacoin) with the miners. (iii) A currency built on top of such blockchain should continue to be useful
forever. At this point, it is not clear that in the absence of any problem to be solved how these blockchains will
continue. There is a need for a formal approach to build a PoUW protocol that leverages PoW concepts and the work
done for achieving consensus on the blockchain has some usefulness in the real world.
Contributions: In this work, we list important characteristics of the problem that one can use to build a PoUW
blockchain, namely, Easy Verifiability, Adjustable Difficulty, Proportional Advantage, and Non-reusable. These es-
sentially capture the fact that the problem should be hard to solve but a solution should be easy to verify, we should
be able to adjust the difficulty easily, the chance of solving should be proportional to the computing power, and the
solution to one problem in a previous block cannot be reused in another block. With these, we propose a framework
in Section 3 to build a PoUW based blockchain with a center, whom we call problem setter, that sets up the problem
to be solved. However, in the true spirit of decentralization, it is better to have a decentralized system where anybody
can participate as a problem setter. In decentralized PoUW, we refer to them as puzzler, provided the problem they
set meets the desired conditions. Towards this, we propose a framework, PUPoW, a decentralized PoUW blockchain
framework. Key interesting features of our framework are (i) anybody can be a puzzler, (ii) in the absence of problems
to solve, it can revert to a normal PoW blockchain, (iii) provision of puzzlers rewarding miners (thereby reducing the
importance of transaction fees). We illustrate how to use PUPoW with an interesting problem, specifically, generating
vanity .onion URL. One can use a similar technique for generating vanity addresses in bitcoin and other applications
using DSA-like scheme to generate addresses. We refer to a PUPoW blockchain generating vanity addresses for
proof-of-work as VanityCoin.
2