RE: RE: Koinos Consensus Algo: Proof-of-Burn
You are viewing a single comment's thread from:

RE: Koinos Consensus Algo: Proof-of-Burn

Words
490
Reading
3 min
Listen
Play
4y

There are three elements that influence the result of "mining" and two are constant. But are they really?

The following only makes sense if my understanding of transferability of VHP is correct. In paragraph about mining pools in Koinos whitepaper we can read "Users would participate in a mining pool simply by transferring their VHP to another Koinos account..." which points to such possibility.

I've spent one week (so far) trying to catch up with all the different signature schemes, that were devised and implemented over the years, in order to see if we could benefit from them being implemented in Hive. However I got stuck in the basics. And to think algebra was my favorite math subject, so I thought it would be easy to understand :o)
Anyway, in case there is a scheme that would allow multiple private keys to sign for the same public key, I assume Koinos does not use it (I thought about FROST, but after reading more about it, it seems it does not work the way I thought it would). If it did, it would mean we could concurrently try to mine with different private keys.

So, the first constant is the private key that matches public key associated with VHP balance, that is used during mining (I assume). The second constant is some hash. There are two possibilities: either it is a hash derived from the content of the block being mined, or it is a hash that is related to previous block. It looks like it is the latter, however for sake of completeness let's also see what would happen it if was the former:
The miner would be able to use "nonce" transaction (ping-pong transfer between his own accounts) to influence the hash, therefore having powerful hardware would give advantage of being able to test many slightly different blocks.
Ok, so the hash does not depend on current block and for the sake of mining it is indeed constant. But is that enough?
Under assumption that VHP is transferable, that Koinos accounts are "just like in Bitcoin", that is, you can transfer to any new (or old) address at any moment and finally that VHP is "active" immediately after being transfered, with powerful hardware you could test billions of potential addresses and then just transfer your VHP to the one that would let you mine with the earliest timestamp. If the new hash for mining next block does not depend on block content and is just result of some deterministic function, you could "premine" blocks at any time. But even if it does depend on block content, while you mine a block, you can already start working on tons of versions of future block, each with different hash (that takes into account a transaction that transfers all your VHP to new address) and different private key for that address.
Which of my assumptions is not correct preventing above scenario?