Skip to content

Commit

Permalink
Merge pull request #1607 from AgeManning/noise-specification
Browse files Browse the repository at this point in the history
Add libp2p-noise specification
  • Loading branch information
djrtwo committed Feb 6, 2020
2 parents c258a6f + 9355a6e commit 03f53e9
Showing 1 changed file with 4 additions and 2 deletions.
6 changes: 4 additions & 2 deletions specs/phase0/p2p-interface.md
Original file line number Diff line number Diff line change
Expand Up @@ -149,9 +149,11 @@ The following SecIO parameters MUST be supported by all stacks:

#### Mainnet

[Noise Framework](http://www.noiseprotocol.org/) handshakes will be used for mainnet. libp2p Noise support [is in the process of being standardized](https://github.com/libp2p/specs/issues/195) in the libp2p project.
The [Libp2p-noise](https://github.com/libp2p/specs/tree/master/noise) secure
channel handshake with `secp256k1` identities will be used for mainnet.

Noise support will presumably include IX, IK, and XX handshake patterns, and may rely on Curve25519 keys, ChaCha20 and Poly1305 ciphers, and SHA-256 as a hash function. These aspects are being actively debated in the referenced issue (Eth2 implementers are welcome to comment and contribute to the discussion).
As specified in the libp2p specification, clients MUST support the `XX` handshake pattern and
can optionally implement the `IK` and `XXfallback` patterns for optimistic 0-RTT.

## Protocol Negotiation

Expand Down

0 comments on commit 03f53e9

Please sign in to comment.