-
Notifications
You must be signed in to change notification settings - Fork 566
feat!: Reject not replay-protected tx to prevent replay attack #1124
Conversation
Closes: evmos#1122 - reject such txs in ante handler
Codecov Report
@@ Coverage Diff @@
## main #1124 +/- ##
==========================================
- Coverage 61.86% 61.74% -0.13%
==========================================
Files 88 89 +1
Lines 7285 7303 +18
==========================================
+ Hits 4507 4509 +2
- Misses 2557 2570 +13
- Partials 221 224 +3
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGMT! 🙏
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good, see comments. Can we rename RejectUnprotected
to RejectUnprotectedTx
We should also add a comment on NewTxDataFromTx
and the proto type saying that the LegacyTx
type only works in unprotected mode if the module parameter is disabled.
and on the proto file too
// on proto/ethermint/evm/tx.proto
// LegacyTx is the transaction data of regular Ethereum transactions.
// NOTE: All non-protected transactions (i.e non EIP155 signed) will fail if the RejectUnprotectedTx parameter is enabled.
message LegacyTx {
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
@yihuang we should also add a non-breaking change to the JSON-RPC config to disable this (see
We can add this in a follow-up PR |
Closes: evmos#1122 - reject such txs in ante handler add reject unprotected parameter Update CHANGELOG.md Apply suggestions from code review Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com> pr suggestions add unit test case use var
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
But we have implemented in consensus parameters, do you mean if it's not rejected in consensus level, add a flag to reject in mempool or rpc level only? |
…hermint into reject-unprotected-tx
done |
…vmos#1124) * Reject not replay-protected tx to prevent replay attack Closes: evmos#1122 - reject such txs in ante handler * add reject unprotected parameter * Update CHANGELOG.md * Apply suggestions from code review Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com> * pr suggestions * add unit test case * Reject not replay-protected tx to prevent replay attack Closes: evmos#1122 - reject such txs in ante handler add reject unprotected parameter Update CHANGELOG.md Apply suggestions from code review Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com> pr suggestions add unit test case use var * add migrations * Apply suggestions from code review Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com> * rename * update comments Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
…os#1124) not consensus breaking
…os#1124) not consensus breaking
Solution: - backport a non-breaking version of evmos/ethermint#1124 add integration test
Solution: - backport a non-breaking version of evmos/ethermint#1124 add integration test
* Problem: replay un-protected tx is not rejected Solution: - backport a non-breaking version of evmos/ethermint#1124 add integration test * changelog * fix lint
Description
Closes: #1122
For contributor use:
docs/
) or specification (x/<module>/spec/
)godoc
comments.Unreleased
section inCHANGELOG.md
Files changed
in the Github PR explorerFor admin use:
WIP
,R4R
,docs
, etc)