Skip to content
This repository was archived by the owner on Jun 27, 2023. It is now read-only.

fix: allow key field to be unset#118

Merged
achingbrain merged 2 commits intolibp2p:masterfrom
ckousik:ckousik/incoming-message-key
Jan 31, 2023
Merged

fix: allow key field to be unset#118
achingbrain merged 2 commits intolibp2p:masterfrom
ckousik:ckousik/incoming-message-key

Conversation

@ckousik
Copy link
Copy Markdown
Contributor

@ckousik ckousik commented Jan 30, 2023

Allows field key to not be set in case key can be extracted from the sender's peer ID. (as per https://github.com/libp2p/specs/tree/master/pubsub#message-signing)

@p-shahi p-shahi requested a review from achingbrain January 30, 2023 19:02
Comment on lines +102 to 103
// @ts-expect-error key need not be defined
key: message.key
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Instead of ts-expect-error, please verify that the key is present and correct - e.g. it should come from the message or the peer id, and if it's present in both the message and the peer id, they should be the same.

Copy link
Copy Markdown
Contributor Author

@ckousik ckousik Jan 31, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed. The @ts-expect-error has been retained since it should be nullable. The value of message.key is now verified in isSigned.

As far as secp256k1 or ed25519 keys are concerned, consider the current behaviour here. Since the public key is extractable, the msg.Key field is left unset, and the current js implementation considers this as an unsigned message.

@achingbrain achingbrain changed the title Allow key field to be unset fix: allow key field to be unset Jan 31, 2023
@achingbrain achingbrain merged commit 2567a45 into libp2p:master Jan 31, 2023
github-actions bot pushed a commit that referenced this pull request Jan 31, 2023
## [6.0.1](v6.0.0...v6.0.1) (2023-01-31)

### Bug Fixes

* allow `key` field to be unset ([#118](#118)) ([2567a45](2567a45))

### Trivial Changes

* replace err-code with CodeError ([#116](#116)) ([e121e4b](e121e4b)), closes [js-libp2p#1269](libp2p/js-libp2p#1269)
@github-actions
Copy link
Copy Markdown

🎉 This PR is included in version 6.0.1 🎉

The release is available on:

Your semantic-release bot 📦🚀

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

Projects

Archived in project
Status: Done

Development

Successfully merging this pull request may close these issues.

2 participants