
AdLunam
Loading...
Forums
Talk about anything you want!
Forums › BTC, ETH & Macro Markets › Ethereum › Transaction spam attack: following steps
Today, the network has been attacked by a transaction spam attack which has repeatedly called the Opcode Extcodésize (see the trace sample here), creating blocks which take up to ~ 20 to 60 seconds to validate due to the ~ 50,000 disk heating necessary to treat the transaction. The result of this was a reduction of ~ 2-3X of the rate of blocking of blocks while the attack took place; There was no consensual failure (i.e. network fork) and neither the network nor any customer at no time have stopped completely. The attack has since had, at the time of the writing of the present, most of the time, and the network has been recovered at the moment.
The short -term corrective is for users, including minors, business users (including exchanges) and individuals to execute Geth with flags:
– Cache 1024 – Targetgaslimit 1500000 – Gasprice 20000000000
Or parity with flags:
-CACHE-SIZE-DB 1024-GAS-SLOOR-TARGET 1500000-GASPRICE 200000000-GAS-CAP 1500000
This (i) increases the size of the cache, reducing the number of disc readings that the nodes must make, and (ii) vote the ~ 3x gas limit, reducing the maximum processing time of a block by a similar factor.
In the medium term (that is to say several days for a week), we are actively working on several fixes for the Go Customer who should both provide a more stable resolution for this problem and mitigate the risk of similar attacks, in particular:
We also explore the possibility of replacing the DBALD level database with something more efficient and optimized for our use case, although such a change would not soon take place. The parity team works on their own performance improvements.
In the longer term, there are low -level protocol changes that can also be explored. For example, it may be judicious to add a functionality to Metropolis to increase the gas costs of OPCODES which require readings of the state of the account (SLOAD, EXTENSIZE, CALL, etc.), and in particular reading operations that read external accounts; The increase in the cost of gas of all these operations to at least 500 would probably be sufficient, although care should be taken to avoid breaking the existing contracts (for example, simultaneous implementation EIP 90 would be enough).
This would put a much lower higher limit on the maximum number of bytes than a transaction can read, increasing safety against all potential attacks of this type, and reducing the size of Merkle evidence and therefore improving safety for light customers and fragment as a side effect. Currently, we focus on more immediate software level changes; However, in the long term, these proposals should be discussed and that contract developers must be aware that changes of this type can take place.
post url: https://altcoin.observer/transaction-spam-attack-following-steps/
1
Voice
0
Replies