bitshares / bitshares/bitshares-core
Follow up EOS issue 2204: check block before pushing to fork db
- Dominant language
- C++
- Stars
- 1.2k
- Forks
- 660
- Avg merge
- 8h 17m
- Merged PRs (30d)
- 26
Description
https://github.com/EOSIO/eos/issues/2204:
>Right now we only check if a received block is linkable to an existing block in fork_db but do no other checks. If the network code also doesn't reject multiple blocks at the same block height from the same node, it opens itself up to an easy DOS attack.
>
>Rather than relying only on the network code to protect against such attacks, we should do some light validation of the received blocks (particularly enough to check that it was correctly signed by an active producer from the perspective of that block) before including it into the fork_db.
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by reading the linked EOS issue 2204 and tracing how received blocks move through the network code into fork_db. Determine the light validation needed before insertion, including checking that each block is correctly signed by an active producer; done means invalid or conflicting blocks cannot be pushed into fork_db.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- blockchain, networking
- Issue type
- Bug
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 20/100