mirror of
https://github.com/fluencelabs/js-libp2p-noise
synced 2025-04-25 04:42:28 +00:00
62 lines
2.1 KiB
Markdown
62 lines
2.1 KiB
Markdown
# js-libp2p-noise
|
|
|
|

|
|
[](https://travis-ci.com/NodeFactoryIo/js-libp2p-noise)
|
|
|
|
[](https://libp2p.io/)
|
|

|
|

|
|

|
|

|
|

|
|
[](https://discuss.libp2p.io)
|
|
|
|
> Noise libp2p handshake for js-libp2p
|
|
|
|
This repository contains TypeScript implementation of noise protocol, an encryption protocol used in libp2p.
|
|
|
|
##### Warning: Even though this package works in browser, it will bundle around 1.5Mb of code
|
|
|
|
## Usage
|
|
|
|
Install with `yarn add libp2p-noise` or `npm i libp2p-noise`.
|
|
|
|
Example of using default noise configuration and passing it to the libp2p config:
|
|
|
|
```js
|
|
import {NOISE, Noise} from "libp2p-noise"
|
|
|
|
|
|
//custom noise configuration, pass it instead of NOISE instance
|
|
const noise = new Noise(privateKey, Buffer.alloc(x));
|
|
|
|
const libp2p = new Libp2p({
|
|
modules: {
|
|
connEncryption: [NOISE],
|
|
},
|
|
});
|
|
```
|
|
|
|
Where parameters for Noise constructor are:
|
|
- *static Noise key* - (optional) existing private Noise static key
|
|
- *early data* - (optional) an early data payload to be sent in handshake messages
|
|
|
|
|
|
|
|
## API
|
|
|
|
This module exposes a crypto interface, as defined in the repository [js-interfaces](https://github.com/libp2p/js-interfaces).
|
|
|
|
[» API Docs](https://github.com/libp2p/js-interfaces/tree/master/src/crypto#api)
|
|
|
|
|
|
## Contribute
|
|
|
|
Feel free to join in. All welcome. Open an issue!
|
|
|
|
[](https://github.com/ipfs/community/blob/master/contributing.md)
|
|
|
|
## License
|
|
|
|
[MIT](LICENSE)
|