Add message.topic
to gossipsub message-id
in Altair
#2475
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Fixes #2471.
In lieu of discriminating duplicated sync committee messages as suggested in #2471 by adding the
subnet_id
to the message itself, this PR suggests a solution by incorporating the topic name in to the gossipsubmessage-id
. This solution should allow sync committee message duplicates to still remain distinct in the gossipsub machinery without needing to add an additional field to the message type.Per discussion w/ @djrtwo and @protolambda, this avoids a potential DoS vector w/ the additional (unsigned) field and should harden message propagation across fork boundaries (as the fork digest will enter via the
message.topic
). This solution should also be a bit less intrusive than changing the sync committee structures further. Obviously open to other alternatives discovered during implementation :)