snarkVM
snarkVM copied to clipboard
[HackerOne-2498849] Only abort deploys early in prepare_for_speculate
Motivation
Closes: https://github.com/AleoHQ/snarkVM/issues/2451
A malicious validator can generate an execution with mostly the same transitions, which will be aborted causing the victim's transaction to be filtered out and dropped.
Test Plan
- [x] e2e test succeeded which starts a devnet, syncs, 10 TPS, bonding (no deployments yet).
- [x] Unit tests corrected.
Related PRs
This was introduced by: https://github.com/AleoHQ/snarkVM/pull/2428
Note that this is a potential breaking change, that may affect the ongoing networks.
The validators being run most likely won't be throwing around these Fee transactions in the honest case, however we need to be sure that nobody ran that as a test case during the operation of the network.