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

Feature Gate: separate durable nonce and blockhash domains #25772

Closed
Tracked by #25787
behzadnouri opened this issue Jun 3, 2022 · 0 comments
Closed
Tracked by #25787

Feature Gate: separate durable nonce and blockhash domains #25772

behzadnouri opened this issue Jun 3, 2022 · 0 comments
Assignees
Labels
feature-gate Pull Request adds or modifies a runtime feature gate

Comments

@behzadnouri
Copy link
Contributor

behzadnouri commented Jun 3, 2022

Description

AdvanceNonceAccount instruction updates nonce to blockhash. This makes it
possible that a durable transaction is executed twice both as a normal
transaction and a nonce transaction if it uses blockhash (as opposed to nonce)
for its recent_blockhash field.

#25744 prevents this double execution by separating nonce and blockhash
domains; when advancing nonce account, blockhash is hashed with a fixed string.
As a result a blockhash cannot be a valid nonce value; and if transaction was
once executed as a normal transaction it cannot be re-executed as a durable
transaction again and vice-versa.

Feature ID

Gea3ZkK2N4pHuVZVxWcnAtS6UEDdyumdYt4pFcKjA3ar

Activation Method

Single Core Contributor

Min Release Versions

v1.9.29, v1.10.24

Testnet Activation Epoch

330

Devnet Activation Epoch

327

Mainnet-Beta Activation Epoch

320

@behzadnouri behzadnouri added the feature-gate Pull Request adds or modifies a runtime feature gate label Jun 3, 2022
@behzadnouri behzadnouri self-assigned this Jun 3, 2022
@behzadnouri behzadnouri changed the title Feature Gate: separates durable nonce and blockhash domains Feature Gate: separate durable nonce and blockhash domains Jun 3, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature-gate Pull Request adds or modifies a runtime feature gate
Projects
None yet
Development

No branches or pull requests

1 participant