Lava Wallet 'King Of The Hill' Concept


Lava relaying network does not want conflict and reverting blocks. Therefore, it must only allow a single eth address to be a relayer for transactions at a time. In order to accomplish this, 0xBitcoin mining will be used to achieve limited scarcity since 0xBTC is a Proof of Work engine for Ethereum as a whole.

When a 0xBTC block is minted, it can be (usually will be) proxyMinted through a proxy smart contract. Many pools already do this. However they will be able to proxy mint through a method which is embedded in the LavaWallet contract. This proxyMintWithKing method will assign an eth address X as the ‘king of the hill’ of relaying forever, until another king is assigned.

This address X is not the ‘msg.sender’ since that is usually a pool. Instead, this address X will be derived from the first 160 bits of the nonce of the minted block. Since the nonce is 256 bits, this will work perfectly.


Here is the formal tested specification


Deployed Ropsten Contracts
0xBTC - 0x9D2Cc383E677292ed87f63586086CfF62a009010

MintHelper (must deploy your own as they are owned / personal) - 0x6ffcad89b80bfa3064437c3fbaefef31b1e90f85

MiningKing - 0x2a20403757ffa6b4e5c613026b7a7308f8722db7

LavaWallet - 0x0af4991829fc81cbb4789bee85d958b72d1f4436 (NEW)
LavaWallet - 0x30d3c27d23173230d575adce6e8c2e8c9814d1e7 (Old EIP712)

Deployed Mainnet Contracts

MiningKing - 0x0b98f937f6edd6f66b0f0a210d3dcd8ec1063cb6

LavaWallet - 0x69a02e511e027e5c26d2fbe4192e45b41db32819

DoubleKingsReward (Token Mining Pool) - 0xfd6be1247a5d32ee83aad9d1b09b5df9e2988d6f - 0xb0a84c52c7a701a2e87bcb6e28cd79d12e8df490