transports/noise: Have NoiseAuthenticated::xx use X25519Spec #2954
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.
Description
We support two versions of the Noise XX handshake with X25519, but only one of them is compliant with the specification and thus compliant with other implementations. We should always default to the spec compliant handshake.
Caught via the libp2p interoperability tests. A node running
master
would no longer connect to nodes running older versions given that older versions would use the spec compliant Noise handshake.Links to any relevant issues
Fixes bug introduced in #2887
Open Questions
As a follow up, we might consider dropping support for the non-spec compliant version.
Change checklist
A changelog entry has been made in the appropriate cratesNoiseAuthenticated::xx
constructor with X25519 DH key exchange #2887 has not yet been released, we don't need a changelog entry.