Question: A broken proof of work hash function. In class we discussed using a hash function H : X Y {0, 1, . . . ,

A broken proof of work hash function. In class we discussed using a hash function H : X Y {0, 1, . . . , 2

n 1} for a proof of work scheme. Once an x X and a difficulty level D are published, it should take an expected D evaluations of the hash function to find a y Y such that H(x, y) < 2

n/D. Suppose that X = Y = {0, 1} m for

some m (say m = 512), and consider the hash function H : X Y {0, 1, . . . , 2

256 1} defined as H(x, y) := SHA256(x y). Here denotes a bit-wise xor. Show that this H is insecure as a proof of work hash. In particular, suppose D is fixed ahead of time. Show that a clever attacker can find a solution y Y with minimal effort once x X is published. Hint: the attacker will do most of the work before x is published.

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Mathematics Questions!