# What would an attacker have to pay per transaction in a large-scale spam attack?

It is claimed that transactions are effectively free. However, they require a proof of work. This PoW is supposed to make spam attacks infeasible. So given an attacker renting hardware from a cloud provider. What would a single transaction cost them? I'm interested just in the order of magnitude.

• With Bitcoin the main problem is people hacking other people's cloud accounts and using that computing power—essentially negating the cost factor since someone else is paying. Dec 29, 2017 at 12:30
• What are you trying to say? How does this relate to a spam attack and why does it only apply to Bitcoin? You could also use effectively stolen resources to attack any other PoW based protocol. Dec 29, 2017 at 18:04
• I just mentioned Bitcoin because it's the most popular and the most targeted cryptocurrency. Of course the attack scenario works for all pow protocols as you correctly point out. Dec 29, 2017 at 18:59

I don't think it is possible to give a proper answer to this question, as we are lacking benchmarks from high-end hardware.

I will, however, try to estimate a value:

My GPU, a Nvidia GeForce 730 takes 24 seconds (2,5/second) on average to attach an address to the tangle. I measured this by using the light wallet on an idle Windows 10 PC. I started the timer when the GPU usage spiked in the task manager and stopped when it went down again. As it was most of the time only around 75% GPU usage, I subtracted 25% from the time.

The currently highest value card according to this site is the Nvidia GeForce 960. As the score of this GPU is 6.3 times higher, let's assume it manages 15 transactions per minute = 900 per hour.

• It uses 120W of power, so we have 0,12 kWh per hour. Assuming that we have a spammer with access to cheap electricity for 0,05\$/kWh, the cost to run this node is \$0,006 per hour.

• As a result, calculating the POW for 1 million transactions would be around \$6,66 for a dedicated attacker

However you have to note a few things:

• This simple calculation does not include the price for the hardware, which is at \$140.
• You would need to run your own full node as nodes will probably ban IPs, issuing a lot of transactions, this adds to cost.
• Nodes might reject a spam of zero-value transactions from a single node if it's getting too much.
• You will need 4 cards to reach 1 tx/second. The PoW factor might be raised in the future + a higher hash-rate will be there. Launching a 33% attack will also get harder before the coordinator is turned off.

Running the same with my graphics card (49W;150 Tph;\$0,28 Electricity) will result in \$91,47 per million transactions. Assuming that you have a similar setup and that a value transaction bundle consists out of four transactions, one transaction's cost is far below one cent. That's still an incredibly tiny amount. In the future, it might get even lower if energy gets cheaper and if we get better hardware.

You can easily test this with your own PC by running the very simple benchmark I provided above. If anyone knows a proper Linux or Windows Curl benchmark tool, please comment with a link.

• great answer, thanks! What I learned is that creating spam transactions is relatively cheap. However, if you want to create them fast, you need a lot of hardware. Dec 27, 2017 at 23:56