libp2p / libp2p/specs

Pubsub message signature specification not deterministic

Open
#276 2 comments 1 reaction 1 assignee View on GitHub

@vyzo is already working on this.

Since Apr 21, 2021.

Dominant language
No language data
Stars
1.8k
Forks
320
Avg merge
11d 15h
Merged PRs (30d)
1

Description

The message signature specification says that signature happens over protobuf encoded message - unfortunately, protobuf encoding is not deterministic, thus it cannot be used for generating a data stream to sign the message: https://developers.google.com/protocol-buffers/docs/encoding#implications

https://github.com/libp2p/specs/tree/b5135fd89e9b62ab94471de89e50f740a83cb004/pubsub#the-message

A possible solution is to specify the data stream explicitly in key-value form where the key and value is encoded according to the wire specification instead: https://developers.google.com/protocol-buffers/docs/encoding#structure - this would allow casual compatibility with what's out there.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.