I am reading about verifying SPV proofs of a sidechain where we don't want to verify all N blocks of the sidechain. In the example instead of verifying that each block meets the target difficulty (hash < target), we want to only verify blocks that satisfy hash < target/4.

The example includes a potential attack where the adversary doesn't have to produce all valid blocks, but only blocks with target/4 difficulty.

Suppose N = 4, so that without the skiplist solution, we’d check that there are 4 blocks that satisfy hash < target. The expected amount of work that an adversary must do to fool us is 4 times the average amount of work needed to find a block.

Suppose the adversary only does half this amount of work. If we do the math, it turns out that this adversary has a 14 percent chance of finding 4 blocks that satisfy hash < target. But with a skiplist solution with a factor of 4, the adversary’s task would be to find a single block that satisfies hash < target/4. In this scenario, the lazy adversary who only does half the expected amount of work will be able to fool us with a probability of 40 percent instead of 14 percent.

I don't understand where the numbers 14% and 40% come from.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.