hiero-ledger / hiero-ledger/hiero-consensus-node

Hedera native transactions do not update the account nonce field

Open
#3,987 2 comments 0 reactions 1 assignee Claimed by @Ferparishuertas View on GitHub
Dominant language
Java
Stars
406
Forks
226
Avg merge
3d 4h
Merged PRs (30d)
210

Description

Accounts in Hedera have a field `ethereum_nonce` which EthereumTransactions use for replay attacks protection.
Native ContractCall and ContractCreate transactions do not check or update this value though.
This may lead to confusing behavior and unexpected results.

This issue is logged for clarity. There are some good reasons not to change this:
- Hedera has a different mechanism protecting from replay attacks and doesn't use the nonce field
- Hedera transactions have a different structure than Ethereum transactions and are not designed to work with nonces
- If we change `ContractCall` and `ContractCreate` transactions to check and update the `nonce` field, should we also change `TopicCreateTransaction`, `CryptoTransferTransaction`, etc. It's not clear how deep into the rabbit hole we should go and what the value would be

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.