Nft Based Piggybacking Consensus Mechanism?

Hey everyone, I got this idea about a new consensus mechanism before falling asleep last night.

Proof of … Nft Ownership Consensus (I’m really sorry, todo find better acronym.)

Starts out like a normal proof of work, trying to find a number (nonce) that fulfills a condition, sha256(block+nonce) < threshold, or whatever. Then when a nonce has been found, the one who found it is not the one who get rights to author or validate a block. Rather, the nonce points to an NFT, and the NFT owner gets the rights to produce and validate.

We could use Ethereum Naming Service (ENS) domain names as example NFTs. So miners of a block find that nonce = “0x123.eth” fulfills the condition. They then rush to purchase the 0x123.eth domain name as an NFT. Then they submit the proof that condition is fulfilled and that they own the relevant nonce NFT.

I would call this toy example a Nonce-ENS version (again sorry about the acronym there).

The main attractive feature with this nonce-ens chain would be it deriving security guarantees from the “mother chain” where the NFTs reside. Another possibly attractive feature would be that blocks cost (crypto-) money to produce, so we avoid some of the economic centralization of PoS while not burning too much energy on PoW.

We would inherit some of the block timing from the mother chain in the case when nobody pre-owned the relevant NFT. In the case when a miner already owned the relevant NFT, block time could be really short. If we want this pre-owned dynamic to play out we need to sell large ranges numbers batched up in single NFTs, not only individual nonce numbers per NFT.

It would be costly, but not impossible to spam the mother chain with buy orders, which would halt the nonce-ens chain for a while.

Sensible versions of PoNO consensus would need some a specialized smart contract to sell NFTs that have been designed for this purpose. The smart contract should only track a limited number of NFTs, so the act of buying a new one erases the oldest active NFT. This keeps smart contract storage size constant. We’d need a detailed requirement spec for the smart contract and NFT life span,
probably including some front-running prevention and other basic security.

The idea of marking up every possible nonce as as NFTs seems like an obvious combination of two common and hyped ideas in crypto (PoW+NFT). Has it been explored before? In particular, has it been explored in a Polkadot context?

2 Likes

Just for future reference here, @NukeManDan pointed out that the mother chain has no information about the new (PoNO) chain, so validation still falls on the PoNO chain’s nodes.

The NFTs as described above would only be a mechanism for adding cost to PoNO mining.

It should be possible to take PoNO further though. The NFT minting smart contract could run a light client of the PoNO chain, and request some hashes from the miner before agreeing to mint a nonce-NFT. With enough information in place, it could validate PoNO blocks the same way as the relay chain validators validate parachain blocks. It could refuse to mint the nonce-NFT unless the new block is valid. It could stick the hashes of the previous and next block onto the NFT so all PoNO nodes in the network can quickly verify that this new block has been validated by the all-mighty smart contract on the mother chain.

That would be an expensive smart contract to instantiate and run, but it would fill a big role. It would be the only validator the PoNO chain would ever need because its logic could be trusted to not be byzantine. It would be as trustworthy as its mother chain’s smart contract environment.