Dan O
2 min readJan 24, 2020

--

DOES NOT WORK

Jeffrey,

this is an interesting approach… variablizing the hash function in a way that makes it resistant to optimization. But you need to take care here. The hash functions are chosen by mathematicians much smarter than me, and they need to ensure there is (likely) no mathematical “shortcut” to finding an appropriate nonce. Just as you noted stringing together several has functions can result in a system that is LESS secure.

I fear the same could be true here.

Let me take a quick crack that the kind of math I fear. The final number is the product of 5 outputs. Lets assume I am much smarter and I have found a shortcut for one hash function coupled with one math function, such that I can fully invert it, or I can select from a submanifold giving me a trillion-x speedup for and desired output. First I pick a nonce and run the other 4 hashes and multiply the results. Now I can quickly check if that leading digits divide my target pattern evenly, if so I can invert my final hash+function to arrive at my new block. Notice the number of digits I must get right by random choice of nonce, is HALF the number of digits I would need to get right otherwise. This means my effective hash power is SQUARED. the bigger the network, the smaller the fraction of compute I need to totally take over.

So you stopped ASICs from beating you, but you opened the door wide open for the mathematician researcher to totally own you in one step. (Once they can do as shown above, they only need give up 100x of their power advantage to control two more digits of the product to ensure that NEXT block will also use their same math function on the same hash function. over and over all your base are belong to us!

Math! who knew it could be such a bitch!

— dan

--

--

Dan O
Dan O

Written by Dan O

Startup Guy, PhD AI, Kentuckian living in San Fran

No responses yet