celestiaorg / celestiaorg/go-header
Investigate the need of forcing SoftFailure for not-adjacent headers
- Dominant language
- Go
- Stars
- 21
- Forks
- 33
- Avg merge
- 5d 20h
- Merged PRs (30d)
- 7
Description
[Here](https://github.com/celestiaorg/celestia-node/blob/5f486732e68ca670e25a9ae4a145ef8c77cf89d1/header/header.go#L202-L204) we force non-adjacent headers which failed verification to become SoftFailure.
The SoftFailure, as it currently stands, always triggers bifurcation which spawns requests to peers. In case a user defines an error that is soft, but we still make it soft, the user might become susceptible to a message amplification attack.
Contributor guide
Research direction
Start in header/header.go at lines 202-204 and trace how non-adjacent verification failures are converted to SoftFailure. Follow the SoftFailure path through bifurcation and peer requests, focusing on whether a user-defined soft error can cause message amplification. Done means establishing whether the forced conversion is necessary and documenting or implementing the resulting decision.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go
- Domain
- blockchain
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100