@waku/message-encryption 0.0.24-4c5a8a9.0 → 0.0.24-7eb3375.0
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/bundle/crypto.js +1 -0
- package/bundle/ecies-137fdfde.js +124 -0
- package/bundle/ecies.js +3 -1
- package/bundle/{index-62691783.js → encryption-d94ff773.js} +12872 -17157
- package/bundle/index-268375db.js +17 -0
- package/bundle/index.js +5 -1
- package/bundle/symmetric-58d457ca.js +2836 -0
- package/bundle/symmetric-d25c7b7a.js +124 -0
- package/bundle/symmetric.js +3 -1
- package/dist/.tsbuildinfo +1 -1
- package/dist/crypto/ecies.js +1 -1
- package/dist/crypto/index.d.ts +3 -29
- package/dist/crypto/index.js +3 -59
- package/dist/crypto/index.js.map +1 -1
- package/dist/crypto/symmetric.js +2 -2
- package/dist/crypto/symmetric.js.map +1 -1
- package/dist/crypto/utils.d.ts +29 -0
- package/dist/crypto/utils.js +60 -0
- package/dist/crypto/utils.js.map +1 -0
- package/dist/ecies.d.ts +8 -9
- package/dist/ecies.js +7 -6
- package/dist/ecies.js.map +1 -1
- package/dist/{waku_payload.d.ts → encryption.d.ts} +5 -1
- package/dist/{waku_payload.js → encryption.js} +3 -5
- package/dist/encryption.js.map +1 -0
- package/dist/index.d.ts +1 -6
- package/dist/index.js +1 -2
- package/dist/index.js.map +1 -1
- package/dist/{constants.d.ts → misc.d.ts} +2 -0
- package/dist/{constants.js → misc.js} +3 -1
- package/dist/misc.js.map +1 -0
- package/dist/symmetric.d.ts +8 -8
- package/dist/symmetric.js +7 -6
- package/dist/symmetric.js.map +1 -1
- package/package.json +1 -1
- package/src/crypto/ecies.ts +1 -1
- package/src/crypto/index.ts +3 -76
- package/src/crypto/symmetric.ts +2 -2
- package/src/crypto/utils.ts +76 -0
- package/src/ecies.ts +18 -17
- package/src/{waku_payload.ts → encryption.ts} +13 -6
- package/src/index.ts +1 -9
- package/src/{constants.ts → misc.ts} +4 -0
- package/src/symmetric.ts +16 -11
- package/dist/constants.js.map +0 -1
- package/dist/waku_payload.js.map +0 -1
@@ -1,12 +1,14 @@
|
|
1
1
|
import * as secp from "@noble/secp256k1";
|
2
2
|
import { concat, hexToBytes } from "@waku/utils/bytes";
|
3
3
|
|
4
|
-
import {
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
4
|
+
import {
|
5
|
+
ecies,
|
6
|
+
keccak256,
|
7
|
+
randomBytes,
|
8
|
+
sign,
|
9
|
+
symmetric
|
10
|
+
} from "./crypto/index.js";
|
11
|
+
import { Symmetric } from "./misc.js";
|
10
12
|
|
11
13
|
const FlagsLength = 1;
|
12
14
|
const FlagMask = 3; // 0011
|
@@ -210,6 +212,11 @@ export async function preCipher(
|
|
210
212
|
return envelope;
|
211
213
|
}
|
212
214
|
|
215
|
+
type Signature = {
|
216
|
+
signature: Uint8Array;
|
217
|
+
publicKey: Uint8Array | undefined;
|
218
|
+
};
|
219
|
+
|
213
220
|
/**
|
214
221
|
* Decode a decrypted payload.
|
215
222
|
*
|
package/src/index.ts
CHANGED
@@ -5,17 +5,9 @@ import {
|
|
5
5
|
} from "./crypto/index.js";
|
6
6
|
import { DecodedMessage } from "./decoded_message.js";
|
7
7
|
|
8
|
-
export const OneMillion = BigInt(1_000_000);
|
9
|
-
|
10
8
|
export { generatePrivateKey, generateSymmetricKey, getPublicKey };
|
11
9
|
export type { DecodedMessage };
|
12
10
|
|
13
11
|
export * as ecies from "./ecies.js";
|
14
12
|
export * as symmetric from "./symmetric.js";
|
15
|
-
|
16
|
-
export const Version = 1;
|
17
|
-
|
18
|
-
export type Signature = {
|
19
|
-
signature: Uint8Array;
|
20
|
-
publicKey: Uint8Array | undefined;
|
21
|
-
};
|
13
|
+
export * as crypto from "./crypto";
|
package/src/symmetric.ts
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
import {
|
1
|
+
import { DefaultPubsubTopic } from "@waku/core";
|
2
2
|
import { Decoder as DecoderV0 } from "@waku/core/lib/message/version_0";
|
3
3
|
import type {
|
4
4
|
EncoderOptions as BaseEncoderOptions,
|
@@ -7,29 +7,34 @@ import type {
|
|
7
7
|
IMessage,
|
8
8
|
IMetaSetter,
|
9
9
|
IProtoMessage,
|
10
|
-
|
10
|
+
PubsubTopic
|
11
11
|
} from "@waku/interfaces";
|
12
12
|
import { WakuMessage } from "@waku/proto";
|
13
13
|
import { Logger } from "@waku/utils";
|
14
14
|
|
15
|
+
import { generateSymmetricKey } from "./crypto/utils.js";
|
15
16
|
import { DecodedMessage } from "./decoded_message.js";
|
16
17
|
import {
|
17
18
|
decryptSymmetric,
|
18
19
|
encryptSymmetric,
|
19
20
|
postCipher,
|
20
21
|
preCipher
|
21
|
-
} from "./
|
22
|
+
} from "./encryption.js";
|
23
|
+
import { OneMillion, Version } from "./misc.js";
|
22
24
|
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
25
|
+
export {
|
26
|
+
decryptSymmetric,
|
27
|
+
encryptSymmetric,
|
28
|
+
postCipher,
|
29
|
+
preCipher,
|
30
|
+
generateSymmetricKey
|
31
|
+
};
|
27
32
|
|
28
33
|
const log = new Logger("message-encryption:symmetric");
|
29
34
|
|
30
35
|
class Encoder implements IEncoder {
|
31
36
|
constructor(
|
32
|
-
public pubsubTopic:
|
37
|
+
public pubsubTopic: PubsubTopic,
|
33
38
|
public contentTopic: string,
|
34
39
|
private symKey: Uint8Array,
|
35
40
|
private sigPrivKey?: Uint8Array,
|
@@ -93,7 +98,7 @@ export interface EncoderOptions extends BaseEncoderOptions {
|
|
93
98
|
* in [26/WAKU2-PAYLOAD](https://rfc.vac.dev/spec/26/).
|
94
99
|
*/
|
95
100
|
export function createEncoder({
|
96
|
-
pubsubTopic =
|
101
|
+
pubsubTopic = DefaultPubsubTopic,
|
97
102
|
contentTopic,
|
98
103
|
symKey,
|
99
104
|
sigPrivKey,
|
@@ -112,7 +117,7 @@ export function createEncoder({
|
|
112
117
|
|
113
118
|
class Decoder extends DecoderV0 implements IDecoder<DecodedMessage> {
|
114
119
|
constructor(
|
115
|
-
pubsubTopic:
|
120
|
+
pubsubTopic: PubsubTopic,
|
116
121
|
contentTopic: string,
|
117
122
|
private symKey: Uint8Array
|
118
123
|
) {
|
@@ -189,7 +194,7 @@ class Decoder extends DecoderV0 implements IDecoder<DecodedMessage> {
|
|
189
194
|
export function createDecoder(
|
190
195
|
contentTopic: string,
|
191
196
|
symKey: Uint8Array,
|
192
|
-
pubsubTopic:
|
197
|
+
pubsubTopic: PubsubTopic = DefaultPubsubTopic
|
193
198
|
): Decoder {
|
194
199
|
return new Decoder(pubsubTopic, contentTopic, symKey);
|
195
200
|
}
|
package/dist/constants.js.map
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB,OAAO,EAAE,EAAE;IACX,MAAM,EAAE,EAAE;IACV,OAAO,EAAE,EAAE;IACX,SAAS,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE;CAC5C,CAAC;AAEF,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,OAAO,EAAE,EAAE;CACZ,CAAC"}
|
package/dist/waku_payload.js.map
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"waku_payload.js","sourceRoot":"","sources":["../src/waku_payload.ts"],"names":[],"mappings":"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"}
|