What are the available encrypted communication modules for Libp2p?

I have only seen secio being used for encrypted communication. Are there any other official/non-official encryption modules being worked on?

Yes, the specs for noise are in a “Working Draft” status:


There’s an ongoing dev grant for implementation: https://github.com/libp2p/devgrants/blob/master/004-noise-handshake-implementations.md
There is a bounty of 3500€ for Go and Javascript implementations: https://github.com/ethberlinzwei/Bounties/issues/17

There is also a spec for TLS:


There’s a Go implementation: https://github.com/libp2p/go-libp2p-tls
I think it’s TLS 1.2 and not 1.3. To be checked.

I think that for Javascript, only secio is available: https://github.com/libp2p/js-libp2p#packages
There’s a stalled issue for TLS 1.3 :https://github.com/libp2p/js-libp2p/issues/9

1 Like