ava-labs / awm-relayer

Service for relaying Avalanche Warp Messages between Subnets
Other
21 stars 16 forks source link

Add config switch for primary network validator signature verification optimization #454

Open cam-schultz opened 3 weeks ago

cam-schultz commented 3 weeks ago

Context and scope subnet-evm and coreth support an optimization for verifying Warp messages from the primary network in which only the validators of the receiving subnet need to sign the message. For example, this allows a subnet to "self sign" a message from the C-Chain, rather than having to verify an aggregate signature consisting of 1000's of individual BLS signatures.

ACP-77 removes primary network validation as a subnet validation requirement, so such "self signing" is no longer guaranteed to be meaningful. As such, subnet-evm and coreth are making this behaviour configurable at the Warp precompile level.

Discussion and alternatives We'll need to support both signature aggregation methods. This new config option will be published in the chain config, so we can fetch it in the same way we fetch the Warp quorum configuration currently. When aggregating signatures for messages originating from the primary network, we'll need to take into account the destination's signature verification rules.