@libp2p/noise 17.0.1-71e8ee163 → 17.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +31 -35
- package/dist/index.min.js +2 -4
- package/dist/index.min.js.map +4 -4
- package/dist/src/crypto/index.browser.js +1 -1
- package/dist/src/crypto/index.d.ts +5 -1
- package/dist/src/crypto/index.d.ts.map +1 -1
- package/dist/src/crypto/index.js +4 -3
- package/dist/src/crypto/index.js.map +1 -1
- package/dist/src/crypto/js.d.ts +1 -1
- package/dist/src/crypto.d.ts +1 -1
- package/dist/src/index.d.ts +25 -14
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +23 -12
- package/dist/src/index.js.map +1 -1
- package/dist/src/logger.d.ts +2 -2
- package/dist/src/logger.js +1 -1
- package/dist/src/noise.d.ts +3 -3
- package/dist/src/noise.js +6 -6
- package/dist/src/nonce.js +1 -1
- package/dist/src/nonce.js.map +1 -1
- package/dist/src/performHandshake.d.ts +1 -1
- package/dist/src/performHandshake.js +3 -3
- package/dist/src/proto/payload.d.ts +34 -4
- package/dist/src/proto/payload.d.ts.map +1 -1
- package/dist/src/proto/payload.js +95 -13
- package/dist/src/proto/payload.js.map +1 -1
- package/dist/src/protocol.d.ts +3 -3
- package/dist/src/protocol.d.ts.map +1 -1
- package/dist/src/protocol.js +2 -2
- package/dist/src/types.d.ts +2 -2
- package/dist/src/utils.d.ts +2 -2
- package/dist/src/utils.js +1 -1
- package/dist/typedoc-urls.json +17 -0
- package/package.json +61 -35
- package/src/crypto/index.browser.ts +1 -1
- package/src/crypto/index.ts +8 -5
- package/src/crypto/js.ts +2 -2
- package/src/crypto.ts +1 -1
- package/src/index.ts +26 -15
- package/src/logger.ts +3 -3
- package/src/noise.ts +10 -10
- package/src/nonce.ts +1 -1
- package/src/performHandshake.ts +4 -4
- package/src/proto/payload.ts +133 -9
- package/src/protocol.ts +3 -3
- package/src/types.ts +2 -2
- package/src/utils.ts +2 -2
|
@@ -1,3 +1,7 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { pureJsCrypto } from './js.ts';
|
|
2
|
+
import type { ICryptoInterface } from '../crypto.ts';
|
|
3
|
+
export { pureJsCrypto };
|
|
4
|
+
export declare const nodeCrypto: Pick<ICryptoInterface, 'hashSHA256' | 'chaCha20Poly1305Encrypt' | 'chaCha20Poly1305Decrypt'>;
|
|
5
|
+
export declare const asCrypto: Pick<ICryptoInterface, 'hashSHA256' | 'chaCha20Poly1305Encrypt' | 'chaCha20Poly1305Decrypt'>;
|
|
2
6
|
export declare const defaultCrypto: ICryptoInterface;
|
|
3
7
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/crypto/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/crypto/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AACtC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAA;AASpD,OAAO,EAAE,YAAY,EAAE,CAAA;AAEvB,eAAO,MAAM,UAAU,EAAE,IAAI,CAAC,gBAAgB,EAAE,YAAY,GAAG,yBAAyB,GAAG,yBAAyB,CA0FnH,CAAA;AAED,eAAO,MAAM,QAAQ,EAAE,IAAI,CAAC,gBAAgB,EAAE,YAAY,GAAG,yBAAyB,GAAG,yBAAyB,CAcjH,CAAA;AAKD,eAAO,MAAM,aAAa,EAAE,gBAuF3B,CAAA"}
|
package/dist/src/crypto/index.js
CHANGED
|
@@ -3,13 +3,14 @@ import { newInstance, ChaCha20Poly1305 } from '@chainsafe/as-chacha20poly1305';
|
|
|
3
3
|
import { digest } from '@chainsafe/as-sha256';
|
|
4
4
|
import { Uint8ArrayList } from 'uint8arraylist';
|
|
5
5
|
import { isElectronMain } from 'wherearewe';
|
|
6
|
-
import { pureJsCrypto } from
|
|
6
|
+
import { pureJsCrypto } from "./js.js";
|
|
7
7
|
const ctx = newInstance();
|
|
8
8
|
const asImpl = new ChaCha20Poly1305(ctx);
|
|
9
9
|
const CHACHA_POLY1305 = 'chacha20-poly1305';
|
|
10
10
|
const PKCS8_PREFIX = Buffer.from([0x30, 0x2e, 0x02, 0x01, 0x00, 0x30, 0x05, 0x06, 0x03, 0x2b, 0x65, 0x6e, 0x04, 0x22, 0x04, 0x20]);
|
|
11
11
|
const X25519_PREFIX = Buffer.from([0x30, 0x2a, 0x30, 0x05, 0x06, 0x03, 0x2b, 0x65, 0x6e, 0x03, 0x21, 0x00]);
|
|
12
|
-
|
|
12
|
+
export { pureJsCrypto };
|
|
13
|
+
export const nodeCrypto = {
|
|
13
14
|
hashSHA256(data) {
|
|
14
15
|
const hash = crypto.createHash('sha256');
|
|
15
16
|
if (data instanceof Uint8Array) {
|
|
@@ -77,7 +78,7 @@ const nodeCrypto = {
|
|
|
77
78
|
return output;
|
|
78
79
|
}
|
|
79
80
|
};
|
|
80
|
-
const asCrypto = {
|
|
81
|
+
export const asCrypto = {
|
|
81
82
|
hashSHA256(data) {
|
|
82
83
|
return digest(data.subarray());
|
|
83
84
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/crypto/index.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,aAAa,CAAA;AAChC,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAA;AAC9E,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAA;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAC/C,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAItC,MAAM,GAAG,GAAG,WAAW,EAAE,CAAA;AACzB,MAAM,MAAM,GAAG,IAAI,gBAAgB,CAAC,GAAG,CAAC,CAAA;AACxC,MAAM,eAAe,GAAG,mBAAmB,CAAA;AAC3C,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAA;AAClI,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/crypto/index.ts"],"names":[],"mappings":"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"}
|
package/dist/src/crypto/js.d.ts
CHANGED
package/dist/src/crypto.d.ts
CHANGED
package/dist/src/index.d.ts
CHANGED
|
@@ -3,27 +3,38 @@
|
|
|
3
3
|
*
|
|
4
4
|
* This repository contains TypeScript implementation of noise protocol, an encryption protocol used in libp2p.
|
|
5
5
|
*
|
|
6
|
+
* Formerly published as [`@chainsafe/libp2p-noise`](https://www.npmjs.com/package/@chainsafe/libp2p-noise).
|
|
7
|
+
*
|
|
6
8
|
* ## Usage
|
|
7
9
|
*
|
|
8
|
-
* Install with `
|
|
10
|
+
* Install with `npm i @libp2p/noise`.
|
|
9
11
|
*
|
|
10
12
|
* Example of using default noise configuration and passing it to the libp2p config:
|
|
11
13
|
*
|
|
12
14
|
* ```ts
|
|
13
|
-
* import {createLibp2p} from
|
|
14
|
-
* import {noise} from
|
|
15
|
-
*
|
|
16
|
-
* //custom noise configuration, pass it instead of `noise()`
|
|
17
|
-
* //x25519 private key
|
|
18
|
-
* const n = noise({ staticNoiseKey });
|
|
15
|
+
* import { createLibp2p } from 'libp2p'
|
|
16
|
+
* import { noise } from '@libp2p/noise'
|
|
19
17
|
*
|
|
20
18
|
* const libp2p = await createLibp2p({
|
|
21
19
|
* connectionEncrypters: [noise()],
|
|
22
|
-
*
|
|
20
|
+
* // ... other options
|
|
23
21
|
* })
|
|
24
22
|
* ```
|
|
25
23
|
*
|
|
26
|
-
* See the [NoiseInit](https://github.com/
|
|
24
|
+
* See the [NoiseInit](https://github.com/libp2p/js-libp2p/blob/main/packages/connection-encrypter-noise/src/noise.ts) interface for noise configuration options.
|
|
25
|
+
*
|
|
26
|
+
* To use a fixed x25519 static key instead of generating one per session, pass it as `staticNoiseKey`:
|
|
27
|
+
*
|
|
28
|
+
* ```ts
|
|
29
|
+
* import { createLibp2p } from 'libp2p'
|
|
30
|
+
* import { noise, pureJsCrypto } from '@libp2p/noise'
|
|
31
|
+
*
|
|
32
|
+
* const staticNoiseKey = pureJsCrypto.generateX25519KeyPair().privateKey
|
|
33
|
+
*
|
|
34
|
+
* const node = await createLibp2p({
|
|
35
|
+
* connectionEncrypters: [noise({ staticNoiseKey })]
|
|
36
|
+
* })
|
|
37
|
+
* ```
|
|
27
38
|
*
|
|
28
39
|
* ## API
|
|
29
40
|
*
|
|
@@ -33,13 +44,13 @@
|
|
|
33
44
|
*
|
|
34
45
|
* You can provide a custom crypto implementation (instead of the default, based on [@noble](https://paulmillr.com/noble/)) by adding a `crypto` field to the init argument passed to the `Noise` factory.
|
|
35
46
|
*
|
|
36
|
-
* The implementation must conform to the `ICryptoInterface`, defined in <https://github.com/
|
|
47
|
+
* The implementation must conform to the `ICryptoInterface`, defined in <https://github.com/libp2p/js-libp2p/blob/main/packages/connection-encrypter-noise/src/crypto.ts>
|
|
37
48
|
*/
|
|
38
|
-
import type { NoiseInit, NoiseExtensions } from './noise.
|
|
39
|
-
import type { KeyPair } from './types.
|
|
49
|
+
import type { NoiseInit, NoiseExtensions } from './noise.ts';
|
|
50
|
+
import type { KeyPair } from './types.ts';
|
|
40
51
|
import type { ComponentLogger, ConnectionEncrypter, Metrics, PeerId, PrivateKey, Upgrader } from '@libp2p/interface';
|
|
41
|
-
export { pureJsCrypto } from './crypto/js.
|
|
42
|
-
export type { ICryptoInterface } from './crypto.
|
|
52
|
+
export { pureJsCrypto } from './crypto/js.ts';
|
|
53
|
+
export type { ICryptoInterface } from './crypto.ts';
|
|
43
54
|
export type { NoiseInit, NoiseExtensions, KeyPair };
|
|
44
55
|
export interface NoiseComponents {
|
|
45
56
|
peerId: PeerId;
|
package/dist/src/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+CG;AAGH,OAAO,KAAK,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAC5D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA;AACzC,OAAO,KAAK,EAAE,eAAe,EAAE,mBAAmB,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAEpH,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,YAAY,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AACnD,YAAY,EAAE,SAAS,EAAE,eAAe,EAAE,OAAO,EAAE,CAAA;AAEnD,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,EAAE,UAAU,CAAA;IACtB,MAAM,EAAE,eAAe,CAAA;IACvB,QAAQ,EAAE,QAAQ,CAAA;IAClB,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB;AAED,wBAAgB,KAAK,CAAE,IAAI,GAAE,SAAc,GAAG,CAAC,UAAU,EAAE,eAAe,KAAK,mBAAmB,CAAC,eAAe,CAAC,CAElH"}
|
package/dist/src/index.js
CHANGED
|
@@ -3,27 +3,38 @@
|
|
|
3
3
|
*
|
|
4
4
|
* This repository contains TypeScript implementation of noise protocol, an encryption protocol used in libp2p.
|
|
5
5
|
*
|
|
6
|
+
* Formerly published as [`@chainsafe/libp2p-noise`](https://www.npmjs.com/package/@chainsafe/libp2p-noise).
|
|
7
|
+
*
|
|
6
8
|
* ## Usage
|
|
7
9
|
*
|
|
8
|
-
* Install with `
|
|
10
|
+
* Install with `npm i @libp2p/noise`.
|
|
9
11
|
*
|
|
10
12
|
* Example of using default noise configuration and passing it to the libp2p config:
|
|
11
13
|
*
|
|
12
14
|
* ```ts
|
|
13
|
-
* import {createLibp2p} from
|
|
14
|
-
* import {noise} from
|
|
15
|
-
*
|
|
16
|
-
* //custom noise configuration, pass it instead of `noise()`
|
|
17
|
-
* //x25519 private key
|
|
18
|
-
* const n = noise({ staticNoiseKey });
|
|
15
|
+
* import { createLibp2p } from 'libp2p'
|
|
16
|
+
* import { noise } from '@libp2p/noise'
|
|
19
17
|
*
|
|
20
18
|
* const libp2p = await createLibp2p({
|
|
21
19
|
* connectionEncrypters: [noise()],
|
|
22
|
-
*
|
|
20
|
+
* // ... other options
|
|
23
21
|
* })
|
|
24
22
|
* ```
|
|
25
23
|
*
|
|
26
|
-
* See the [NoiseInit](https://github.com/
|
|
24
|
+
* See the [NoiseInit](https://github.com/libp2p/js-libp2p/blob/main/packages/connection-encrypter-noise/src/noise.ts) interface for noise configuration options.
|
|
25
|
+
*
|
|
26
|
+
* To use a fixed x25519 static key instead of generating one per session, pass it as `staticNoiseKey`:
|
|
27
|
+
*
|
|
28
|
+
* ```ts
|
|
29
|
+
* import { createLibp2p } from 'libp2p'
|
|
30
|
+
* import { noise, pureJsCrypto } from '@libp2p/noise'
|
|
31
|
+
*
|
|
32
|
+
* const staticNoiseKey = pureJsCrypto.generateX25519KeyPair().privateKey
|
|
33
|
+
*
|
|
34
|
+
* const node = await createLibp2p({
|
|
35
|
+
* connectionEncrypters: [noise({ staticNoiseKey })]
|
|
36
|
+
* })
|
|
37
|
+
* ```
|
|
27
38
|
*
|
|
28
39
|
* ## API
|
|
29
40
|
*
|
|
@@ -33,10 +44,10 @@
|
|
|
33
44
|
*
|
|
34
45
|
* You can provide a custom crypto implementation (instead of the default, based on [@noble](https://paulmillr.com/noble/)) by adding a `crypto` field to the init argument passed to the `Noise` factory.
|
|
35
46
|
*
|
|
36
|
-
* The implementation must conform to the `ICryptoInterface`, defined in <https://github.com/
|
|
47
|
+
* The implementation must conform to the `ICryptoInterface`, defined in <https://github.com/libp2p/js-libp2p/blob/main/packages/connection-encrypter-noise/src/crypto.ts>
|
|
37
48
|
*/
|
|
38
|
-
import { Noise } from
|
|
39
|
-
export { pureJsCrypto } from
|
|
49
|
+
import { Noise } from "./noise.js";
|
|
50
|
+
export { pureJsCrypto } from "./crypto/js.js";
|
|
40
51
|
export function noise(init = {}) {
|
|
41
52
|
return (components) => new Noise(components, init);
|
|
42
53
|
}
|
package/dist/src/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+CG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAKlC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAY7C,MAAM,UAAU,KAAK,CAAE,OAAkB,EAAE;IACzC,OAAO,CAAC,UAA2B,EAAE,EAAE,CAAC,IAAI,KAAK,CAAC,UAAU,EAAE,IAAI,CAAC,CAAA;AACrE,CAAC"}
|
package/dist/src/logger.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { CipherState } from './protocol.
|
|
2
|
-
import type { KeyPair } from './types.
|
|
1
|
+
import type { CipherState } from './protocol.ts';
|
|
2
|
+
import type { KeyPair } from './types.ts';
|
|
3
3
|
import type { Logger } from '@libp2p/interface';
|
|
4
4
|
import type { Uint8ArrayList } from 'uint8arraylist';
|
|
5
5
|
export declare function logLocalStaticKeys(s: KeyPair | undefined, keyLogger: Logger): void;
|
package/dist/src/logger.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { toString as uint8ArrayToString } from 'uint8arrays/to-string';
|
|
2
|
-
import { DUMP_SESSION_KEYS } from
|
|
2
|
+
import { DUMP_SESSION_KEYS } from "./constants.js";
|
|
3
3
|
export function logLocalStaticKeys(s, keyLogger) {
|
|
4
4
|
if (!keyLogger.enabled || !DUMP_SESSION_KEYS) {
|
|
5
5
|
return;
|
package/dist/src/noise.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { serviceCapabilities } from '@libp2p/interface';
|
|
2
|
-
import type { ICryptoInterface } from './crypto.
|
|
3
|
-
import type { NoiseComponents } from './index.
|
|
4
|
-
import type { ICrypto, INoiseConnection, INoiseExtensions } from './types.
|
|
2
|
+
import type { ICryptoInterface } from './crypto.ts';
|
|
3
|
+
import type { NoiseComponents } from './index.ts';
|
|
4
|
+
import type { ICrypto, INoiseConnection, INoiseExtensions } from './types.ts';
|
|
5
5
|
import type { SecuredConnection, SecureConnectionOptions, MessageStream } from '@libp2p/interface';
|
|
6
6
|
export interface NoiseExtensions {
|
|
7
7
|
webtransportCerthashes: Uint8Array[];
|
package/dist/src/noise.js
CHANGED
|
@@ -3,12 +3,12 @@ import { InvalidCryptoExchangeError, serviceCapabilities } from '@libp2p/interfa
|
|
|
3
3
|
import { peerIdFromPublicKey } from '@libp2p/peer-id';
|
|
4
4
|
import { lpStream } from '@libp2p/utils';
|
|
5
5
|
import { alloc as uint8ArrayAlloc } from 'uint8arrays/alloc';
|
|
6
|
-
import { NOISE_MSG_MAX_LENGTH_BYTES } from
|
|
7
|
-
import { defaultCrypto } from
|
|
8
|
-
import { wrapCrypto } from
|
|
9
|
-
import { uint16BEDecode, uint16BEEncode } from
|
|
10
|
-
import { registerMetrics } from
|
|
11
|
-
import { performHandshakeInitiator, performHandshakeResponder } from
|
|
6
|
+
import { NOISE_MSG_MAX_LENGTH_BYTES } from "./constants.js";
|
|
7
|
+
import { defaultCrypto } from "./crypto/index.js";
|
|
8
|
+
import { wrapCrypto } from "./crypto.js";
|
|
9
|
+
import { uint16BEDecode, uint16BEEncode } from "./encoder.js";
|
|
10
|
+
import { registerMetrics } from "./metrics.js";
|
|
11
|
+
import { performHandshakeInitiator, performHandshakeResponder } from "./performHandshake.js";
|
|
12
12
|
import { toMessageStream } from "./utils.js";
|
|
13
13
|
export class Noise {
|
|
14
14
|
protocol = '/noise';
|
package/dist/src/nonce.js
CHANGED
|
@@ -7,7 +7,7 @@ export const MIN_NONCE = 0;
|
|
|
7
7
|
// The effect is that this implementation will need a new handshake to be performed after fewer messages are exchanged than other implementations with full uint64 nonces.
|
|
8
8
|
// this MAX_NONCE is still a large number of messages, so the practical effect of this is negligible.
|
|
9
9
|
export const MAX_NONCE = 0xffffffff;
|
|
10
|
-
const ERR_MAX_NONCE = '
|
|
10
|
+
const ERR_MAX_NONCE = 'Cipherstate has reached maximum n, a new handshake must be performed';
|
|
11
11
|
/**
|
|
12
12
|
* The nonce is an uint that's increased over time.
|
|
13
13
|
* Maintaining different representations help improve performance.
|
package/dist/src/nonce.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nonce.js","sourceRoot":"","sources":["../../src/nonce.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,IAAI,eAAe,EAAE,MAAM,mBAAmB,CAAA;AAE5D,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,CAAA;AAC1B,qEAAqE;AACrE,8FAA8F;AAC9F,oDAAoD;AACpD,+FAA+F;AAC/F,0KAA0K;AAC1K,qGAAqG;AACrG,MAAM,CAAC,MAAM,SAAS,GAAG,UAAU,CAAA;AAEnC,MAAM,aAAa,GAAG,
|
|
1
|
+
{"version":3,"file":"nonce.js","sourceRoot":"","sources":["../../src/nonce.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,IAAI,eAAe,EAAE,MAAM,mBAAmB,CAAA;AAE5D,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,CAAA;AAC1B,qEAAqE;AACrE,8FAA8F;AAC9F,oDAAoD;AACpD,+FAA+F;AAC/F,0KAA0K;AAC1K,qGAAqG;AACrG,MAAM,CAAC,MAAM,SAAS,GAAG,UAAU,CAAA;AAEnC,MAAM,aAAa,GAAG,sEAAsE,CAAA;AAE5F;;;GAGG;AACH,MAAM,OAAO,KAAK;IACR,CAAC,CAAQ;IACA,KAAK,CAAY;IACjB,IAAI,CAAU;IAE/B,YAAa,CAAC,GAAG,SAAS;QACxB,IAAI,CAAC,CAAC,GAAG,CAAC,CAAA;QACV,IAAI,CAAC,KAAK,GAAG,eAAe,CAAC,EAAE,CAAC,CAAA;QAChC,IAAI,CAAC,IAAI,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAA;QACzF,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,CAAA;IACjC,CAAC;IAED,SAAS;QACP,IAAI,CAAC,CAAC,EAAE,CAAA;QACR,2FAA2F;QAC3F,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAA;IACtC,CAAC;IAED,QAAQ;QACN,OAAO,IAAI,CAAC,KAAK,CAAA;IACnB,CAAC;IAED,SAAS;QACP,OAAO,IAAI,CAAC,CAAC,CAAA;IACf,CAAC;IAED,WAAW;QACT,IAAI,IAAI,CAAC,CAAC,GAAG,SAAS,EAAE,CAAC;YACvB,MAAM,IAAI,KAAK,CAAC,aAAa,CAAC,CAAA;QAChC,CAAC;IACH,CAAC;CACF"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { HandshakeResult, HandshakeParams } from './types.
|
|
1
|
+
import type { HandshakeResult, HandshakeParams } from './types.ts';
|
|
2
2
|
import type { AbortOptions } from '@libp2p/interface';
|
|
3
3
|
export declare function performHandshakeInitiator(init: HandshakeParams, options?: AbortOptions): Promise<HandshakeResult>;
|
|
4
4
|
export declare function performHandshakeResponder(init: HandshakeParams, options?: AbortOptions): Promise<HandshakeResult>;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { logLocalStaticKeys, logLocalEphemeralKeys, logRemoteEphemeralKey, logRemoteStaticKey, logCipherState } from
|
|
2
|
-
import { ZEROLEN, XXHandshakeState } from
|
|
3
|
-
import { createHandshakePayload, decodeHandshakePayload } from
|
|
1
|
+
import { logLocalStaticKeys, logLocalEphemeralKeys, logRemoteEphemeralKey, logRemoteStaticKey, logCipherState } from "./logger.js";
|
|
2
|
+
import { ZEROLEN, XXHandshakeState } from "./protocol.js";
|
|
3
|
+
import { createHandshakePayload, decodeHandshakePayload } from "./utils.js";
|
|
4
4
|
export async function performHandshakeInitiator(init, options) {
|
|
5
5
|
const { log, connection, crypto, privateKey, prologue, s, remoteIdentityKey, extensions } = init;
|
|
6
6
|
const payload = await createHandshakePayload(privateKey, s.publicKey, extensions);
|
|
@@ -6,8 +6,19 @@ export interface NoiseExtensions {
|
|
|
6
6
|
}
|
|
7
7
|
export declare namespace NoiseExtensions {
|
|
8
8
|
const codec: () => Codec<NoiseExtensions>;
|
|
9
|
-
|
|
10
|
-
|
|
9
|
+
interface NoiseExtensionsWebtransportCerthashesFieldEvent {
|
|
10
|
+
field: '$.webtransportCerthashes[]';
|
|
11
|
+
index: number;
|
|
12
|
+
value: Uint8Array;
|
|
13
|
+
}
|
|
14
|
+
interface NoiseExtensionsStreamMuxersFieldEvent {
|
|
15
|
+
field: '$.streamMuxers[]';
|
|
16
|
+
index: number;
|
|
17
|
+
value: string;
|
|
18
|
+
}
|
|
19
|
+
function encode(obj: Partial<NoiseExtensions>): Uint8Array<ArrayBuffer>;
|
|
20
|
+
function decode(buf: Uint8Array | Uint8ArrayList, opts?: DecodeOptions<NoiseExtensions>): NoiseExtensions;
|
|
21
|
+
function stream(buf: Uint8Array | Uint8ArrayList, opts?: DecodeOptions<NoiseExtensions>): Generator<NoiseExtensionsWebtransportCerthashesFieldEvent | NoiseExtensionsStreamMuxersFieldEvent>;
|
|
11
22
|
}
|
|
12
23
|
export interface NoiseHandshakePayload {
|
|
13
24
|
identityKey: Uint8Array;
|
|
@@ -16,7 +27,26 @@ export interface NoiseHandshakePayload {
|
|
|
16
27
|
}
|
|
17
28
|
export declare namespace NoiseHandshakePayload {
|
|
18
29
|
const codec: () => Codec<NoiseHandshakePayload>;
|
|
19
|
-
|
|
20
|
-
|
|
30
|
+
interface NoiseHandshakePayloadIdentityKeyFieldEvent {
|
|
31
|
+
field: '$.identityKey';
|
|
32
|
+
value: Uint8Array;
|
|
33
|
+
}
|
|
34
|
+
interface NoiseHandshakePayloadIdentitySigFieldEvent {
|
|
35
|
+
field: '$.identitySig';
|
|
36
|
+
value: Uint8Array;
|
|
37
|
+
}
|
|
38
|
+
interface NoiseHandshakePayloadExtensionsWebtransportCerthashesFieldEvent {
|
|
39
|
+
field: '$.extensions.webtransportCerthashes[]';
|
|
40
|
+
index: number;
|
|
41
|
+
value: Uint8Array;
|
|
42
|
+
}
|
|
43
|
+
interface NoiseHandshakePayloadExtensionsStreamMuxersFieldEvent {
|
|
44
|
+
field: '$.extensions.streamMuxers[]';
|
|
45
|
+
index: number;
|
|
46
|
+
value: string;
|
|
47
|
+
}
|
|
48
|
+
function encode(obj: Partial<NoiseHandshakePayload>): Uint8Array<ArrayBuffer>;
|
|
49
|
+
function decode(buf: Uint8Array | Uint8ArrayList, opts?: DecodeOptions<NoiseHandshakePayload>): NoiseHandshakePayload;
|
|
50
|
+
function stream(buf: Uint8Array | Uint8ArrayList, opts?: DecodeOptions<NoiseHandshakePayload>): Generator<NoiseHandshakePayloadIdentityKeyFieldEvent | NoiseHandshakePayloadIdentitySigFieldEvent | NoiseHandshakePayloadExtensionsWebtransportCerthashesFieldEvent | NoiseHandshakePayloadExtensionsStreamMuxersFieldEvent>;
|
|
21
51
|
}
|
|
22
52
|
//# sourceMappingURL=payload.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"payload.d.ts","sourceRoot":"","sources":["../../../src/proto/payload.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC3D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAEpD,MAAM,WAAW,eAAe;IAC9B,sBAAsB,EAAE,UAAU,EAAE,CAAA;IACpC,YAAY,EAAE,MAAM,EAAE,CAAA;CACvB;AAED,yBAAiB,eAAe,CAAC;IAGxB,MAAM,KAAK,QAAO,KAAK,CAAC,eAAe,
|
|
1
|
+
{"version":3,"file":"payload.d.ts","sourceRoot":"","sources":["../../../src/proto/payload.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC3D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAEpD,MAAM,WAAW,eAAe;IAC9B,sBAAsB,EAAE,UAAU,EAAE,CAAA;IACpC,YAAY,EAAE,MAAM,EAAE,CAAA;CACvB;AAED,yBAAiB,eAAe,CAAC;IAGxB,MAAM,KAAK,QAAO,KAAK,CAAC,eAAe,CAgH7C,CAAA;IAED,UAAiB,+CAA+C;QAC9D,KAAK,EAAE,4BAA4B,CAAA;QACnC,KAAK,EAAE,MAAM,CAAA;QACb,KAAK,EAAE,UAAU,CAAA;KAClB;IAED,UAAiB,qCAAqC;QACpD,KAAK,EAAE,kBAAkB,CAAA;QACzB,KAAK,EAAE,MAAM,CAAA;QACb,KAAK,EAAE,MAAM,CAAA;KACd;IAED,SAAgB,MAAM,CAAE,GAAG,EAAE,OAAO,CAAC,eAAe,CAAC,GAAG,UAAU,CAAC,WAAW,CAAC,CAE9E;IAED,SAAgB,MAAM,CAAE,GAAG,EAAE,UAAU,GAAG,cAAc,EAAE,IAAI,CAAC,EAAE,aAAa,CAAC,eAAe,CAAC,GAAG,eAAe,CAEhH;IAED,SAAgB,MAAM,CAAE,GAAG,EAAE,UAAU,GAAG,cAAc,EAAE,IAAI,CAAC,EAAE,aAAa,CAAC,eAAe,CAAC,GAAG,SAAS,CAAC,+CAA+C,GAAG,qCAAqC,CAAC,CAEnM;CACF;AAED,MAAM,WAAW,qBAAqB;IACpC,WAAW,EAAE,UAAU,CAAA;IACvB,WAAW,EAAE,UAAU,CAAA;IACvB,UAAU,CAAC,EAAE,eAAe,CAAA;CAC7B;AAED,yBAAiB,qBAAqB,CAAC;IAG9B,MAAM,KAAK,QAAO,KAAK,CAAC,qBAAqB,CAiGnD,CAAA;IAED,UAAiB,0CAA0C;QACzD,KAAK,EAAE,eAAe,CAAA;QACtB,KAAK,EAAE,UAAU,CAAA;KAClB;IAED,UAAiB,0CAA0C;QACzD,KAAK,EAAE,eAAe,CAAA;QACtB,KAAK,EAAE,UAAU,CAAA;KAClB;IAED,UAAiB,+DAA+D;QAC9E,KAAK,EAAE,uCAAuC,CAAA;QAC9C,KAAK,EAAE,MAAM,CAAA;QACb,KAAK,EAAE,UAAU,CAAA;KAClB;IAED,UAAiB,qDAAqD;QACpE,KAAK,EAAE,6BAA6B,CAAA;QACpC,KAAK,EAAE,MAAM,CAAA;QACb,KAAK,EAAE,MAAM,CAAA;KACd;IAED,SAAgB,MAAM,CAAE,GAAG,EAAE,OAAO,CAAC,qBAAqB,CAAC,GAAG,UAAU,CAAC,WAAW,CAAC,CAEpF;IAED,SAAgB,MAAM,CAAE,GAAG,EAAE,UAAU,GAAG,cAAc,EAAE,IAAI,CAAC,EAAE,aAAa,CAAC,qBAAqB,CAAC,GAAG,qBAAqB,CAE5H;IAED,SAAgB,MAAM,CAAE,GAAG,EAAE,UAAU,GAAG,cAAc,EAAE,IAAI,CAAC,EAAE,aAAa,CAAC,qBAAqB,CAAC,GAAG,SAAS,CAAC,0CAA0C,GAAG,0CAA0C,GAAG,+DAA+D,GAAG,qDAAqD,CAAC,CAEnU;CACF"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { decodeMessage, encodeMessage, MaxLengthError, message } from 'protons-runtime';
|
|
1
|
+
import { decodeMessage, encodeMessage, MaxLengthError, message, streamMessage } from 'protons-runtime';
|
|
2
2
|
import { alloc as uint8ArrayAlloc } from 'uint8arrays/alloc';
|
|
3
3
|
export var NoiseExtensions;
|
|
4
4
|
(function (NoiseExtensions) {
|
|
@@ -9,13 +9,13 @@ export var NoiseExtensions;
|
|
|
9
9
|
if (opts.lengthDelimited !== false) {
|
|
10
10
|
w.fork();
|
|
11
11
|
}
|
|
12
|
-
if (obj.webtransportCerthashes != null) {
|
|
12
|
+
if (obj.webtransportCerthashes != null && obj.webtransportCerthashes.length > 0) {
|
|
13
13
|
for (const value of obj.webtransportCerthashes) {
|
|
14
14
|
w.uint32(10);
|
|
15
15
|
w.bytes(value);
|
|
16
16
|
}
|
|
17
17
|
}
|
|
18
|
-
if (obj.streamMuxers != null) {
|
|
18
|
+
if (obj.streamMuxers != null && obj.streamMuxers.length > 0) {
|
|
19
19
|
for (const value of obj.streamMuxers) {
|
|
20
20
|
w.uint32(18);
|
|
21
21
|
w.string(value);
|
|
@@ -35,14 +35,14 @@ export var NoiseExtensions;
|
|
|
35
35
|
switch (tag >>> 3) {
|
|
36
36
|
case 1: {
|
|
37
37
|
if (opts.limits?.webtransportCerthashes != null && obj.webtransportCerthashes.length === opts.limits.webtransportCerthashes) {
|
|
38
|
-
throw new MaxLengthError('Decode error -
|
|
38
|
+
throw new MaxLengthError('Decode error - repeated field "webtransportCerthashes" had too many elements');
|
|
39
39
|
}
|
|
40
40
|
obj.webtransportCerthashes.push(reader.bytes());
|
|
41
41
|
break;
|
|
42
42
|
}
|
|
43
43
|
case 2: {
|
|
44
44
|
if (opts.limits?.streamMuxers != null && obj.streamMuxers.length === opts.limits.streamMuxers) {
|
|
45
|
-
throw new MaxLengthError('Decode error -
|
|
45
|
+
throw new MaxLengthError('Decode error - repeated field "streamMuxers" had too many elements');
|
|
46
46
|
}
|
|
47
47
|
obj.streamMuxers.push(reader.string());
|
|
48
48
|
break;
|
|
@@ -54,16 +54,61 @@ export var NoiseExtensions;
|
|
|
54
54
|
}
|
|
55
55
|
}
|
|
56
56
|
return obj;
|
|
57
|
+
}, function* (reader, length, prefix, opts = {}) {
|
|
58
|
+
const obj = {
|
|
59
|
+
webtransportCerthashes: 0,
|
|
60
|
+
streamMuxers: 0
|
|
61
|
+
};
|
|
62
|
+
const end = length == null ? reader.len : reader.pos + length;
|
|
63
|
+
while (reader.pos < end) {
|
|
64
|
+
const tag = reader.uint32();
|
|
65
|
+
switch (tag >>> 3) {
|
|
66
|
+
case 1: {
|
|
67
|
+
if (opts.limits?.webtransportCerthashes != null && obj.webtransportCerthashes === opts.limits.webtransportCerthashes) {
|
|
68
|
+
throw new MaxLengthError('Streaming decode error - repeated field "webtransportCerthashes" had too many elements');
|
|
69
|
+
}
|
|
70
|
+
yield {
|
|
71
|
+
field: `${prefix}.webtransportCerthashes[]`,
|
|
72
|
+
index: obj.webtransportCerthashes,
|
|
73
|
+
value: reader.bytes()
|
|
74
|
+
};
|
|
75
|
+
obj.webtransportCerthashes++;
|
|
76
|
+
break;
|
|
77
|
+
}
|
|
78
|
+
case 2: {
|
|
79
|
+
if (opts.limits?.streamMuxers != null && obj.streamMuxers === opts.limits.streamMuxers) {
|
|
80
|
+
throw new MaxLengthError('Streaming decode error - repeated field "streamMuxers" had too many elements');
|
|
81
|
+
}
|
|
82
|
+
yield {
|
|
83
|
+
field: `${prefix}.streamMuxers[]`,
|
|
84
|
+
index: obj.streamMuxers,
|
|
85
|
+
value: reader.string()
|
|
86
|
+
};
|
|
87
|
+
obj.streamMuxers++;
|
|
88
|
+
break;
|
|
89
|
+
}
|
|
90
|
+
default: {
|
|
91
|
+
reader.skipType(tag & 7);
|
|
92
|
+
break;
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
}
|
|
57
96
|
});
|
|
58
97
|
}
|
|
59
98
|
return _codec;
|
|
60
99
|
};
|
|
61
|
-
|
|
100
|
+
function encode(obj) {
|
|
62
101
|
return encodeMessage(obj, NoiseExtensions.codec());
|
|
63
|
-
}
|
|
64
|
-
NoiseExtensions.
|
|
102
|
+
}
|
|
103
|
+
NoiseExtensions.encode = encode;
|
|
104
|
+
function decode(buf, opts) {
|
|
65
105
|
return decodeMessage(buf, NoiseExtensions.codec(), opts);
|
|
66
|
-
}
|
|
106
|
+
}
|
|
107
|
+
NoiseExtensions.decode = decode;
|
|
108
|
+
function stream(buf, opts) {
|
|
109
|
+
return streamMessage(buf, NoiseExtensions.codec(), opts);
|
|
110
|
+
}
|
|
111
|
+
NoiseExtensions.stream = stream;
|
|
67
112
|
})(NoiseExtensions || (NoiseExtensions = {}));
|
|
68
113
|
export var NoiseHandshakePayload;
|
|
69
114
|
(function (NoiseHandshakePayload) {
|
|
@@ -119,15 +164,52 @@ export var NoiseHandshakePayload;
|
|
|
119
164
|
}
|
|
120
165
|
}
|
|
121
166
|
return obj;
|
|
167
|
+
}, function* (reader, length, prefix, opts = {}) {
|
|
168
|
+
const end = length == null ? reader.len : reader.pos + length;
|
|
169
|
+
while (reader.pos < end) {
|
|
170
|
+
const tag = reader.uint32();
|
|
171
|
+
switch (tag >>> 3) {
|
|
172
|
+
case 1: {
|
|
173
|
+
yield {
|
|
174
|
+
field: `${prefix}.identityKey`,
|
|
175
|
+
value: reader.bytes()
|
|
176
|
+
};
|
|
177
|
+
break;
|
|
178
|
+
}
|
|
179
|
+
case 2: {
|
|
180
|
+
yield {
|
|
181
|
+
field: `${prefix}.identitySig`,
|
|
182
|
+
value: reader.bytes()
|
|
183
|
+
};
|
|
184
|
+
break;
|
|
185
|
+
}
|
|
186
|
+
case 4: {
|
|
187
|
+
yield* NoiseExtensions.codec().stream(reader, reader.uint32(), `${prefix}.extensions`, {
|
|
188
|
+
limits: opts.limits?.extensions
|
|
189
|
+
});
|
|
190
|
+
break;
|
|
191
|
+
}
|
|
192
|
+
default: {
|
|
193
|
+
reader.skipType(tag & 7);
|
|
194
|
+
break;
|
|
195
|
+
}
|
|
196
|
+
}
|
|
197
|
+
}
|
|
122
198
|
});
|
|
123
199
|
}
|
|
124
200
|
return _codec;
|
|
125
201
|
};
|
|
126
|
-
|
|
202
|
+
function encode(obj) {
|
|
127
203
|
return encodeMessage(obj, NoiseHandshakePayload.codec());
|
|
128
|
-
}
|
|
129
|
-
NoiseHandshakePayload.
|
|
204
|
+
}
|
|
205
|
+
NoiseHandshakePayload.encode = encode;
|
|
206
|
+
function decode(buf, opts) {
|
|
130
207
|
return decodeMessage(buf, NoiseHandshakePayload.codec(), opts);
|
|
131
|
-
}
|
|
208
|
+
}
|
|
209
|
+
NoiseHandshakePayload.decode = decode;
|
|
210
|
+
function stream(buf, opts) {
|
|
211
|
+
return streamMessage(buf, NoiseHandshakePayload.codec(), opts);
|
|
212
|
+
}
|
|
213
|
+
NoiseHandshakePayload.stream = stream;
|
|
132
214
|
})(NoiseHandshakePayload || (NoiseHandshakePayload = {}));
|
|
133
215
|
//# sourceMappingURL=payload.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"payload.js","sourceRoot":"","sources":["../../../src/proto/payload.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAA;
|
|
1
|
+
{"version":3,"file":"payload.js","sourceRoot":"","sources":["../../../src/proto/payload.ts"],"names":[],"mappings":"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"}
|
package/dist/src/protocol.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Uint8ArrayList } from 'uint8arraylist';
|
|
2
|
-
import { Nonce } from './nonce.
|
|
3
|
-
import type { ICipherState, ISymmetricState, IHandshakeState, KeyPair, ICrypto } from './types.
|
|
4
|
-
export declare const ZEROLEN: Uint8Array<
|
|
2
|
+
import { Nonce } from './nonce.ts';
|
|
3
|
+
import type { ICipherState, ISymmetricState, IHandshakeState, KeyPair, ICrypto } from './types.ts';
|
|
4
|
+
export declare const ZEROLEN: Uint8Array<ArrayBuffer>;
|
|
5
5
|
interface ICipherStateWithKey extends ICipherState {
|
|
6
6
|
k: Uint8Array;
|
|
7
7
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"protocol.d.ts","sourceRoot":"","sources":["../../src/protocol.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAI/C,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAClC,OAAO,KAAK,EAAE,YAAY,EAAE,eAAe,EAAE,eAAe,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA;AAKlG,eAAO,MAAM,OAAO,
|
|
1
|
+
{"version":3,"file":"protocol.d.ts","sourceRoot":"","sources":["../../src/protocol.ts"],"names":[],"mappings":"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"}
|
package/dist/src/protocol.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { Uint8ArrayList } from 'uint8arraylist';
|
|
2
2
|
import { fromString as uint8ArrayFromString } from 'uint8arrays';
|
|
3
3
|
import { alloc as uint8ArrayAlloc } from 'uint8arrays/alloc';
|
|
4
|
-
import { InvalidCryptoExchangeError } from
|
|
5
|
-
import { Nonce } from
|
|
4
|
+
import { InvalidCryptoExchangeError } from "./errors.js";
|
|
5
|
+
import { Nonce } from "./nonce.js";
|
|
6
6
|
// Code in this file is a direct translation of a subset of the noise protocol https://noiseprotocol.org/noise.html,
|
|
7
7
|
// agnostic to libp2p's usage of noise
|
|
8
8
|
export const ZEROLEN = uint8ArrayAlloc(0);
|