Proof of Purchase Mining

There are a number of different possible designs for novel tokens (see this review in an earlier post). The two predominant ways of obtaining new tokens mechanically from a protocol is either through proof-of-work (PoW) or proof-of-stake (PoS). In proof-of-work mechanisms, miners compete to compute the pre-image of a Hash function with a particular property. This task is computationally expensive, so miners need to invest in a large amount of hardware (ASIC-miners) and infrastructure setup to be able to mine competitively. The other mechanism, proof-of-stake, requires users to have some amount of funds in the native token (obtained by purchase or ICO) which can be locked up. The chance that a particular staker is selected to receive a block reward (for producing the next block) is proportional to the amount of funds they’ve locked.

PoW economies in particular have catalyzed a tremendous amount of economic action. There are Bitcoin and Ethereum mining farms scattered worldwide. Bitcoin in particular uses large amounts of electricity for its mining efforts. PoS is much less energy-intensive, but doesn’t catalyze as much economic motion. There has been a large growth in software based staking services, but this has less impact than PoW mining on the real world.

A number of other projects have recognized the potential for tokens to induce useful economic activity. Projects such as filecoin seek to use proof-of-replication (PoRep) and proof-of-space-time (PoSt) to induce miners to store files in return for obtaining block rewards. While these projects for the most part haven’t yet launched on mainnet, it does spur an interesting thought. Can there be a design of a token that spurs useful work for data markets?

It might help to break up data market needs into supply and demand. A data market has to achieve adequate “supply.” That is, there must be enough data in the market for it to be interesting. There must also be “demand.” That is, buyers must be willing to purchase this data and do useful things with it. At first blush, demand looks to be a more challenging problem than supply. Many of the buyers of data are located in larger enterprises or governmental organizations. These organizations are less crypto-native and there might be considerable effort required to induce a buyer in such an organization to experiment with a data market. Is there a way that we can perhaps induce demand through the use of a token?

We seek here to incentivize a change in the behavior of a data purchaser. What could induce this motivation? They must believe that there’s a way for them to profit if they purchase data. This suggests an idea. What if we could do proof-of-purchase (PoP) mining? That is, somehow we design a block reward that rewards purchasers of data? The idea isn’t as silly as it might appear at first blush. The purchase of data is recorded on-chain and can be audited for correctness. Could we create a protocol similar to proof-of-stake, where “stake” is the total amount of purchases made by a given user?

The main danger here is that a cunning user can cycle funds. For example, I could set up a data market I control, then make purchases solely to that data market. I can then report these purchases as “stake” and fraudulently earn block rewards on these purchases. To control for these types of attacks, we will need to tweak the reward mechanism so that it rewards purchases spread across multiple data markets more than it rewards purchases spread across many data markets more than it does purchases to a single data market. For example, here’s a simple weighting function that meets this criteria

w = \sum_{j \in P} \frac{S_j}{\sum_i S_i} p_j

Here, S_j is the total size of the reserve for data market j. Then \sum_i S_i is the total staked across all the data markets currently live. p_j is the size of purchase made to market j and P is the set of all purchases made. This weighting function rewards purchases made in larger markets (which are less likely to be fraudulent) than it does purchases made in smaller more unknown markets. This reward function isn’t perfect; it suffers from the rich-get-richer weakness of all staking systems, but it does provide for some protection against sybil attacks.

A token powered by proof-of-purchase mining would issue block rewards based on the purchase weighting scheme introduced in the previous chapter. Then, businesses or entities that spend large amounts on data purchases will receive block rewards commensurate with the size of purchases they make. If this design is combined with a fair launch curve, it might be possible to induce curious buyers into the market with the promise of an extra reward on top of the reward of gaining useful data. In early days, when the block reward curve is returning sizeable rewards, it might even be possible for buyers to gain “free data” this way, where the size of netted block rewards outweighs the size of the original purchase.

It’s worth noting that this design has a number of holes at present. Why would anyone expect the PoP tokens to have any value? They will be a scarce digital good of course, but it’s not clear why PoP tokens would have any long term investible value that would induce the block reward to have meaning. At the same time, many projects like Dogecoin and Litecoin have thrived purely on memetic value, so it’s not entirely unbelievable that a PoP coin without further mechanism could gain value. At present though, it’s important to emphasize that this note just lays out a provocative speculative design. But perhaps there’s the germ of something interesting worth digging deeper into.