1

I'm new here. I have a question here. Some experts keep saying that this assumption isn't formally correct and I don't really understand why or why they might be wrong.

In the double spend attack; you have attacking network and honest network. Total Hash rate is split between those.

some experts keep saying that time is not a factor in determining how fast you can generate blocks. That's something I don't really get.

So, is it incorrect to say that the probability of success of the attacker increases with the time T it takes to generate z transactions since they have more time to secretly mine their alternate blockchain ?

update: @G. Maxwell. I am not sure what i am asking for exactly. So let me try this.

Perhaps I am asking whether the assumption that the time to mine blocks is memoryless ? And how this clashes, if it does, with the proposition that the probability of success an attacker increases with time T it takes to mine the z transactions since they have more time to secretly mine their alternate blockchain. I am not assuming any other external attacks other than mere hashpower.

  • I added some text that might answer your requested clarification. – G. Maxwell Dec 1 '18 at 5:32
2

I believe you are asking if the inter-block interval matters for the success rate of a high hashpower reorg attack.

It does, because if it is too fast the honest participants will spend a substantial fraction of their time not working on the same (honest) chain, because they haven't heard of each others blocks or have created their own blocks before other honest blocks arrived.

So the attacker pillages the village while the defense is diluted and not working together perfectly.

Slowness in this case is always relative to the overall processing and propagation time. So a system which worked without substantial dilution normally could run into problems when flooded with transactions or if an attacker started also DOS attacking nodes.

Mining a block is memoryless, but mining a chain makes progress. But both the attacker and the honest network make progress, so when considering their relative advantages their success depends on their relative hashrates. If in fact the honest network takes longer (due to bad luck) to mine this particular block then it is easier for an attaker to be successful during that time.

So, for example, in your risk calculation if you observe that blocks have been slower than expected recently it may be reasonable to require more confirmations for two reasons: One reason is because if the honest network was unlucky an attacker with a secret chain might have done better with only average luck. Another reason is because the reduced block speed may in fact be because part of the network has split off to attack.

  • Why is transaction flooding considered DOS? They are anonymous, pay a sufficient fee for propagation, and any validating node can restrict mempool acceptance criteria if resources too low, or forego mempool altogether. – James C. Nov 30 '18 at 11:20
  • Fee is not for propagation, it's for getting into a block. Also he said "flooded with transactions OR DOS" not necessarily equating the two. – Jannes Nov 30 '18 at 13:14
  • Ok. Minimum fee is also required for propagation (node policy, see libbitcoin server). Of course fee ultimately for confirmation payment. – James C. Dec 1 '18 at 8:51
  • 1
    A transaction that never confirms never pays a fee. Moreover, at best a fee can make an attack more expensive, it is not a magic totem that turns an attack into not an attack. :) – G. Maxwell Dec 1 '18 at 9:44
  • unrelated, libbitcoin isn't actually used on widespread basis in Bitcoin so generally you shouldn't use it as a benchmark of what Bitcoin does in practice. (though on there being minimum fees used it's consistent) – G. Maxwell Dec 1 '18 at 10:23

Your Answer

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

Not the answer you're looking for? Browse other questions tagged or ask your own question.