@waku/message-encryption 0.0.24-678635e.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.
Files changed (46) hide show
  1. package/bundle/crypto.js +1 -0
  2. package/bundle/ecies-137fdfde.js +124 -0
  3. package/bundle/ecies.js +3 -1
  4. package/bundle/{index-62691783.js → encryption-d94ff773.js} +12872 -17157
  5. package/bundle/index-268375db.js +17 -0
  6. package/bundle/index.js +5 -1
  7. package/bundle/symmetric-58d457ca.js +2836 -0
  8. package/bundle/symmetric-d25c7b7a.js +124 -0
  9. package/bundle/symmetric.js +3 -1
  10. package/dist/.tsbuildinfo +1 -1
  11. package/dist/crypto/ecies.js +1 -1
  12. package/dist/crypto/index.d.ts +3 -29
  13. package/dist/crypto/index.js +3 -59
  14. package/dist/crypto/index.js.map +1 -1
  15. package/dist/crypto/symmetric.js +2 -2
  16. package/dist/crypto/symmetric.js.map +1 -1
  17. package/dist/crypto/utils.d.ts +29 -0
  18. package/dist/crypto/utils.js +60 -0
  19. package/dist/crypto/utils.js.map +1 -0
  20. package/dist/ecies.d.ts +8 -9
  21. package/dist/ecies.js +7 -6
  22. package/dist/ecies.js.map +1 -1
  23. package/dist/{waku_payload.d.ts → encryption.d.ts} +5 -1
  24. package/dist/{waku_payload.js → encryption.js} +3 -5
  25. package/dist/encryption.js.map +1 -0
  26. package/dist/index.d.ts +1 -6
  27. package/dist/index.js +1 -2
  28. package/dist/index.js.map +1 -1
  29. package/dist/{constants.d.ts → misc.d.ts} +2 -0
  30. package/dist/{constants.js → misc.js} +3 -1
  31. package/dist/misc.js.map +1 -0
  32. package/dist/symmetric.d.ts +8 -8
  33. package/dist/symmetric.js +7 -6
  34. package/dist/symmetric.js.map +1 -1
  35. package/package.json +1 -1
  36. package/src/crypto/ecies.ts +1 -1
  37. package/src/crypto/index.ts +3 -76
  38. package/src/crypto/symmetric.ts +2 -2
  39. package/src/crypto/utils.ts +76 -0
  40. package/src/ecies.ts +18 -17
  41. package/src/{waku_payload.ts → encryption.ts} +13 -6
  42. package/src/index.ts +1 -9
  43. package/src/{constants.ts → misc.ts} +4 -0
  44. package/src/symmetric.ts +16 -11
  45. package/dist/constants.js.map +0 -1
  46. 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 { Symmetric } from "./constants.js";
5
- import * as ecies from "./crypto/ecies.js";
6
- import { keccak256, randomBytes, sign } from "./crypto/index.js";
7
- import * as symmetric from "./crypto/symmetric.js";
8
-
9
- import { Signature } from "./index.js";
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";
@@ -8,3 +8,7 @@ export const Symmetric = {
8
8
  export const Asymmetric = {
9
9
  keySize: 32
10
10
  };
11
+
12
+ export const OneMillion = BigInt(1_000_000);
13
+
14
+ export const Version = 1;
package/src/symmetric.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { DefaultPubSubTopic } from "@waku/core";
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
- PubSubTopic
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 "./waku_payload.js";
22
+ } from "./encryption.js";
23
+ import { OneMillion, Version } from "./misc.js";
22
24
 
23
- import { generateSymmetricKey, OneMillion, Version } from "./index.js";
24
-
25
- export { generateSymmetricKey };
26
- export type { DecodedMessage, Encoder, Decoder };
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: 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 = DefaultPubSubTopic,
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: 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: PubSubTopic = DefaultPubSubTopic
197
+ pubsubTopic: PubsubTopic = DefaultPubsubTopic
193
198
  ): Decoder {
194
199
  return new Decoder(pubsubTopic, contentTopic, symKey);
195
200
  }
@@ -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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"waku_payload.js","sourceRoot":"","sources":["../src/waku_payload.ts"],"names":[],"mappings":"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"}