ethereum / ethereum/builder-specs
Usage of the BLS signature scheme should mandate a "proof-of-possession" check
- Dominant language
- HTML
- Stars
- 234
- Forks
- 86
- Avg merge
- 4d 1h
- Merged PRs (30d)
- 2
Description
there is a well-known attack on the BLS signature scheme called a "rogue public key" attack
you can read more about it here: https://hackmd.io/@benjaminion/bls12-381#Rogue-key-attacks
the mitigation is straightforward: publish a "proof of possession" along w/ the public key.
given that this spec current requires builders to sign over their messages, we should also specify that builders publish a "proof-of-possession" alongside their public key and any other configuration info required to connect.
concretely, the "proof-of-possession" can just sign over the message that is the encoding of the builder's BLS public key according to the SSZ spec defined in this repo: https://github.com/ethereum/consensus-specs
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by reading the builder-specs specification and the referenced consensus-specs SSZ encoding definition. Confirm how builders publish their BLS public keys and configuration, then specify the proof-of-possession requirement and its signed message alongside that information. Done means the specification clearly mandates the check and defines the required encoding.
Written by the indexing model from the issue text.
Assessment
- Domain
- cryptography, security
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 38/100