Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Enforce block maximum gas limit in DeliverTx #2775

Closed
cwgoes opened this issue Nov 12, 2018 · 0 comments
Closed

Enforce block maximum gas limit in DeliverTx #2775

cwgoes opened this issue Nov 12, 2018 · 0 comments

Comments

@cwgoes
Copy link
Contributor

cwgoes commented Nov 12, 2018

Otherwise the proposer can include an unbounded number of transactions - possibly multisigs with the last sig failing - which the proposer doesn't process but every other node has to, consuming an unbounded amount of RAM and/or disk space.

The SDK needs to track the block gas limit and immediately return a nonzero ABCI error on DeliverTx for all transactions as soon as the gas limit is hit.

With this limit in place this is still a DoS vector, but at least the compute is limited - and if we don't write to storage on ante handler failure (ref #2772) no disk space will be used.

cc @ebuchman @alexanderbez @ValarDragon

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants