1 unstable release
0.1.0 | Feb 14, 2024 |
---|
#9 in #arweave
Used in arweave_rs_validator
52KB
786 lines
VDF Validation
Arweave uses a VDF as a cryptographic clock that limits the speed at which hashes may be produced.
In order to prove the block producer followed the speed limit set by the VDF the checkpoints for the VDF are included in the block.
These checkpoints allow a block recipient to verify the VDF steps are accurate by computing all the checkpoints in parallel across multiple cores.
Validation
There are two phases to VDF step validation. When a miner recieves a block they validate the "last step checkpoints" which takes a few milliseconds and serve as a quick pre-validation.
Depending on the block time, it may take 30 or more seconds to fully validate the checkpoints a 2+ minute VDF in parallel.
This package implements both the pre-validation and full validation of the VDF checkpoings.
lib.rs
:
Contains functions related to validating VDF checkpoints in parallel and consensus rules around VDF entropy resets.
Dependencies
~9–14MB
~277K SLoC