@cryptotaxi247 / kubo / commits / 56776c992

doc(experimental): document noise transport experiment

Steven Allen committed May 25, 2020 at 23:56 UTC 56776c99209490388707077e58c0daef09c5947d
1 file changed +24
docs/experimental-features.md
+24
@@ -25,6 +25,7 @@ the above issue.
25 - [AutoRelay](#autorelay)
26 - [Strategic Providing](#strategic-providing)
27 - [Graphsync](#graphsync)
28 +- [Noise](#noise)
29
30 ---
31
@@ -538,3 +539,26 @@ ipfs config --json Experimental.GraphsyncEnabled true
539 ### Road to being a real feature
540
541 - [ ] We need to confirm that it can't be used to DoS a node. The server-side logic for GraphSync is quite complex and, if we're not careful, the server might end up performing unbounded work when responding to a malicious request.
542 +
543 +## Noise
544 +
545 +### State
546 +
547 +Experimental, enabled by default
548 +
549 +[Noise](https://github.com/libp2p/specs/tree/master/noise) libp2p transport based on the [Noise Protocol Framework](https://noiseprotocol.org/noise.html). While TLS remains the default transport in go-ipfs, Noise is easier to implement and will thus serve as the "interop" transport between IPFS and libp2p implementations, eventually replacing SECIO.
550 +
551 +### How to enable
552 +
553 +While the Noise transport is now shipped and enabled by default in go-ipfs, it won't be used by default for most connections because TLS and SECIO are currently preferred. If you'd like to test out the Noise transport, you can use the `Experimental.OverrideSecurityTransports` option to enable, disable, and reorder security transports.
554 +
555 +For example, to prefer noise over TLS and disable SECIO, run:
556 +
557 +```
558 +ipfs config --json Experimental.OverrideSecurityTransports '["noise", "tls"]'
559 +```
560 +
561 +### Road to being a real feature
562 +
563 +- [ ] Needs real-world testing.
564 +- [ ] Ideally a js-ipfs and a rust-ipfs release would include support for Noise.