internxt-crypto 0.0.10-alpha → 0.0.13

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 (158) hide show
  1. package/README.md +3 -4
  2. package/dist/aes-DSDxP8uF.mjs +184 -0
  3. package/dist/aes-DSDxP8uF.mjs.map +1 -0
  4. package/dist/aes-bOrKZuUC.js +226 -0
  5. package/dist/aes-bOrKZuUC.js.map +1 -0
  6. package/dist/asymmetric-crypto.d.mts +5 -2
  7. package/dist/asymmetric-crypto.d.mts.map +1 -0
  8. package/dist/asymmetric-crypto.d.ts +5 -2
  9. package/dist/asymmetric-crypto.d.ts.map +1 -0
  10. package/dist/asymmetric-crypto.js +9 -92
  11. package/dist/asymmetric-crypto.mjs +2 -84
  12. package/dist/chunk-DQk6qfdC.mjs +18 -0
  13. package/dist/chunk-EbLFQX5m.js +60 -0
  14. package/dist/constants.d.mts +5 -11
  15. package/dist/constants.d.mts.map +1 -0
  16. package/dist/constants.d.ts +5 -11
  17. package/dist/constants.d.ts.map +1 -0
  18. package/dist/constants.js +33 -49
  19. package/dist/constants.js.map +1 -1
  20. package/dist/constants.mjs +32 -40
  21. package/dist/constants.mjs.map +1 -1
  22. package/dist/derive-key.d.mts +11 -8
  23. package/dist/derive-key.d.mts.map +1 -0
  24. package/dist/derive-key.d.ts +11 -8
  25. package/dist/derive-key.d.ts.map +1 -0
  26. package/dist/derive-key.js +13 -795
  27. package/dist/derive-key.mjs +2 -783
  28. package/dist/deriveKeysFromPassword-DJRWZ8Rw.mjs +735 -0
  29. package/dist/deriveKeysFromPassword-DJRWZ8Rw.mjs.map +1 -0
  30. package/dist/deriveKeysFromPassword-Ko7NxkHM.js +2492 -0
  31. package/dist/deriveKeysFromPassword-Ko7NxkHM.js.map +1 -0
  32. package/dist/email-crypto.d.mts +55 -78
  33. package/dist/email-crypto.d.mts.map +1 -0
  34. package/dist/email-crypto.d.ts +55 -78
  35. package/dist/email-crypto.d.ts.map +1 -0
  36. package/dist/email-crypto.js +13 -1409
  37. package/dist/email-crypto.mjs +2 -1380
  38. package/dist/email-search.d.mts +36 -32
  39. package/dist/email-search.d.mts.map +1 -0
  40. package/dist/email-search.d.ts +36 -32
  41. package/dist/email-search.d.ts.map +1 -0
  42. package/dist/email-search.js +534 -540
  43. package/dist/email-search.js.map +1 -1
  44. package/dist/email-search.mjs +532 -538
  45. package/dist/email-search.mjs.map +1 -1
  46. package/dist/emailEncryptionKey-27mIHh18.mjs +150 -0
  47. package/dist/emailEncryptionKey-27mIHh18.mjs.map +1 -0
  48. package/dist/emailEncryptionKey-DbaDAdoW.js +167 -0
  49. package/dist/emailEncryptionKey-DbaDAdoW.js.map +1 -0
  50. package/dist/emailKeys-BJGdkLrg.js +593 -0
  51. package/dist/emailKeys-BJGdkLrg.js.map +1 -0
  52. package/dist/emailKeys-Fp9WR3wl.mjs +509 -0
  53. package/dist/emailKeys-Fp9WR3wl.mjs.map +1 -0
  54. package/dist/genID-3Er5IowC.mjs +153 -0
  55. package/dist/genID-3Er5IowC.mjs.map +1 -0
  56. package/dist/genID-YJSl3YhL.js +238 -0
  57. package/dist/genID-YJSl3YhL.js.map +1 -0
  58. package/dist/hash.d.mts +18 -15
  59. package/dist/hash.d.mts.map +1 -0
  60. package/dist/hash.d.ts +18 -15
  61. package/dist/hash.d.ts.map +1 -0
  62. package/dist/hash.js +12 -95
  63. package/dist/hash.mjs +2 -84
  64. package/dist/index.d.mts +15 -18
  65. package/dist/index.d.mts.map +1 -0
  66. package/dist/index.d.ts +15 -18
  67. package/dist/index.d.ts.map +1 -0
  68. package/dist/index.js +125 -2698
  69. package/dist/index.mjs +13 -2538
  70. package/dist/keys-BfcaiAOv.mjs +90 -0
  71. package/dist/keys-BfcaiAOv.mjs.map +1 -0
  72. package/dist/keys-CinT7kEY.js +125 -0
  73. package/dist/keys-CinT7kEY.js.map +1 -0
  74. package/dist/keystore-crypto.d.mts +17 -46
  75. package/dist/keystore-crypto.d.mts.map +1 -0
  76. package/dist/keystore-crypto.d.ts +17 -46
  77. package/dist/keystore-crypto.d.ts.map +1 -0
  78. package/dist/keystore-crypto.js +5 -529
  79. package/dist/keystore-crypto.mjs +2 -500
  80. package/dist/kyber1024-PpwE1rki.mjs +144 -0
  81. package/dist/kyber1024-PpwE1rki.mjs.map +1 -0
  82. package/dist/kyber1024-jeKS8CXf.js +173 -0
  83. package/dist/kyber1024-jeKS8CXf.js.map +1 -0
  84. package/dist/{kyber768-B87rMQ7u.d.mts → kyber768-DGBB_RS7.d.ts} +8 -6
  85. package/dist/kyber768-DGBB_RS7.d.ts.map +1 -0
  86. package/dist/{kyber768-B87rMQ7u.d.ts → kyber768-DzIcGg1i.d.mts} +8 -6
  87. package/dist/kyber768-DzIcGg1i.d.mts.map +1 -0
  88. package/dist/mac-BMb1F0dN.js +170 -0
  89. package/dist/mac-BMb1F0dN.js.map +1 -0
  90. package/dist/mac-ZpRlx8Fs.mjs +116 -0
  91. package/dist/mac-ZpRlx8Fs.mjs.map +1 -0
  92. package/dist/post-quantum-crypto.d.mts +23 -27
  93. package/dist/post-quantum-crypto.d.mts.map +1 -0
  94. package/dist/post-quantum-crypto.d.ts +23 -27
  95. package/dist/post-quantum-crypto.d.ts.map +1 -0
  96. package/dist/post-quantum-crypto.js +14 -92
  97. package/dist/post-quantum-crypto.mjs +2 -89
  98. package/dist/storage-service.d.mts +28 -34
  99. package/dist/storage-service.d.mts.map +1 -0
  100. package/dist/storage-service.d.ts +28 -34
  101. package/dist/storage-service.d.ts.map +1 -0
  102. package/dist/storage-service.js +51 -53
  103. package/dist/storage-service.js.map +1 -1
  104. package/dist/storage-service.mjs +40 -51
  105. package/dist/storage-service.mjs.map +1 -1
  106. package/dist/symmetric-crypto.d.mts +8 -7
  107. package/dist/symmetric-crypto.d.mts.map +1 -0
  108. package/dist/symmetric-crypto.d.ts +8 -7
  109. package/dist/symmetric-crypto.d.ts.map +1 -0
  110. package/dist/symmetric-crypto.js +10 -142
  111. package/dist/symmetric-crypto.mjs +2 -133
  112. package/dist/types.d.mts +71 -69
  113. package/dist/types.d.mts.map +1 -0
  114. package/dist/types.d.ts +71 -69
  115. package/dist/types.d.ts.map +1 -0
  116. package/dist/types.js +8 -10
  117. package/dist/types.js.map +1 -1
  118. package/dist/types.mjs +7 -9
  119. package/dist/types.mjs.map +1 -1
  120. package/dist/utils.d.mts +34 -78
  121. package/dist/utils.d.mts.map +1 -0
  122. package/dist/utils.d.ts +34 -78
  123. package/dist/utils.d.ts.map +1 -0
  124. package/dist/utils.js +17 -313
  125. package/dist/utils.mjs +2 -272
  126. package/package.json +21 -87
  127. package/dist/asymmetric-crypto.js.map +0 -1
  128. package/dist/asymmetric-crypto.mjs.map +0 -1
  129. package/dist/derive-key.js.map +0 -1
  130. package/dist/derive-key.mjs.map +0 -1
  131. package/dist/email-crypto.js.map +0 -1
  132. package/dist/email-crypto.mjs.map +0 -1
  133. package/dist/email-service.d.mts +0 -38
  134. package/dist/email-service.d.ts +0 -38
  135. package/dist/email-service.js +0 -154
  136. package/dist/email-service.js.map +0 -1
  137. package/dist/email-service.mjs +0 -147
  138. package/dist/email-service.mjs.map +0 -1
  139. package/dist/hash.js.map +0 -1
  140. package/dist/hash.mjs.map +0 -1
  141. package/dist/index.js.map +0 -1
  142. package/dist/index.mjs.map +0 -1
  143. package/dist/keystore-crypto.js.map +0 -1
  144. package/dist/keystore-crypto.mjs.map +0 -1
  145. package/dist/keystore-service.d.mts +0 -82
  146. package/dist/keystore-service.d.ts +0 -82
  147. package/dist/keystore-service.js +0 -349
  148. package/dist/keystore-service.js.map +0 -1
  149. package/dist/keystore-service.mjs +0 -342
  150. package/dist/keystore-service.mjs.map +0 -1
  151. package/dist/post-quantum-crypto.js.map +0 -1
  152. package/dist/post-quantum-crypto.mjs.map +0 -1
  153. package/dist/symmetric-crypto.js.map +0 -1
  154. package/dist/symmetric-crypto.mjs.map +0 -1
  155. package/dist/utils-BDaK_d6T.d.ts +0 -114
  156. package/dist/utils-v34IRTIx.d.mts +0 -114
  157. package/dist/utils.js.map +0 -1
  158. package/dist/utils.mjs.map +0 -1
@@ -1,67 +1,56 @@
1
- var __defProp = Object.defineProperty;
2
- var __export = (target, all) => {
3
- for (var name in all)
4
- __defProp(target, name, { get: all[name], enumerable: true });
5
- };
1
+ import { t as __exportAll } from "./chunk-DQk6qfdC.mjs";
6
2
 
7
- // src/storage-service/localStorageService.ts
8
- var localStorageService_exports = {};
9
- __export(localStorageService_exports, {
10
- default: () => localStorageService_default
11
- });
12
- function get(key) {
13
- return localStorage.getItem(key);
3
+ //#region src/storage-service/localStorageService.ts
4
+ var localStorageService_exports = /* @__PURE__ */ __exportAll({ default: () => localStorageService });
5
+ function get$1(key) {
6
+ return localStorage.getItem(key);
14
7
  }
15
- function set(key, value) {
16
- return localStorage.setItem(key, value);
8
+ function set$1(key, value) {
9
+ return localStorage.setItem(key, value);
17
10
  }
18
- function removeItem(key) {
19
- localStorage.removeItem(key);
11
+ function removeItem$1(key) {
12
+ localStorage.removeItem(key);
20
13
  }
21
- function exists(key) {
22
- return !!localStorage.getItem(key);
14
+ function exists$1(key) {
15
+ return !!localStorage.getItem(key);
23
16
  }
24
- function clear() {
25
- localStorage.clear();
17
+ function clear$1() {
18
+ localStorage.clear();
26
19
  }
27
- var localStorageService = {
28
- set,
29
- get,
30
- removeItem,
31
- exists,
32
- clear
20
+ const localStorageService = {
21
+ set: set$1,
22
+ get: get$1,
23
+ removeItem: removeItem$1,
24
+ exists: exists$1,
25
+ clear: clear$1
33
26
  };
34
- var localStorageService_default = localStorageService;
35
27
 
36
- // src/storage-service/sessionStorageService.ts
37
- var sessionStorageService_exports = {};
38
- __export(sessionStorageService_exports, {
39
- default: () => sessionStorageService_default
40
- });
41
- function get2(key) {
42
- return sessionStorage.getItem(key);
43
- }
44
- function set2(key, value) {
45
- return sessionStorage.setItem(key, value);
28
+ //#endregion
29
+ //#region src/storage-service/sessionStorageService.ts
30
+ var sessionStorageService_exports = /* @__PURE__ */ __exportAll({ default: () => sessionStorageService });
31
+ function get(key) {
32
+ return sessionStorage.getItem(key);
46
33
  }
47
- function removeItem2(key) {
48
- sessionStorage.removeItem(key);
34
+ function set(key, value) {
35
+ return sessionStorage.setItem(key, value);
49
36
  }
50
- function exists2(key) {
51
- return !!sessionStorage.getItem(key);
37
+ function removeItem(key) {
38
+ sessionStorage.removeItem(key);
52
39
  }
53
- function clear2() {
54
- sessionStorage.clear();
40
+ function exists(key) {
41
+ return !!sessionStorage.getItem(key);
55
42
  }
56
- var sessionStorageService = {
57
- set: set2,
58
- get: get2,
59
- removeItem: removeItem2,
60
- exists: exists2,
61
- clear: clear2
43
+ function clear() {
44
+ sessionStorage.clear();
45
+ }
46
+ const sessionStorageService = {
47
+ set,
48
+ get,
49
+ removeItem,
50
+ exists,
51
+ clear
62
52
  };
63
- var sessionStorageService_default = sessionStorageService;
64
53
 
54
+ //#endregion
65
55
  export { localStorageService_exports as localStorageService, sessionStorageService_exports as sessionStorageService };
66
- //# sourceMappingURL=storage-service.mjs.map
67
56
  //# sourceMappingURL=storage-service.mjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/storage-service/localStorageService.ts","../src/storage-service/sessionStorageService.ts"],"names":["get","set","removeItem","exists","clear"],"mappings":";;;;;;;AAAA,IAAA,2BAAA,GAAA;AAAA,QAAA,CAAA,2BAAA,EAAA;AAAA,EAAA,OAAA,EAAA,MAAA;AAAA,CAAA,CAAA;AAAA,SAAS,IAAI,GAAA,EAA4B;AACvC,EAAA,OAAO,YAAA,CAAa,QAAQ,GAAG,CAAA;AACjC;AAEA,SAAS,GAAA,CAAI,KAAa,KAAA,EAAqB;AAC7C,EAAA,OAAO,YAAA,CAAa,OAAA,CAAQ,GAAA,EAAK,KAAK,CAAA;AACxC;AAEA,SAAS,WAAW,GAAA,EAAmB;AACrC,EAAA,YAAA,CAAa,WAAW,GAAG,CAAA;AAC7B;AAEA,SAAS,OAAO,GAAA,EAAsB;AACpC,EAAA,OAAO,CAAC,CAAC,YAAA,CAAa,OAAA,CAAQ,GAAG,CAAA;AACnC;AAEA,SAAS,KAAA,GAAc;AACrB,EAAA,YAAA,CAAa,KAAA,EAAM;AACrB;AAEA,IAAM,mBAAA,GAAsB;AAAA,EAC1B,GAAA;AAAA,EACA,GAAA;AAAA,EACA,UAAA;AAAA,EACA,MAAA;AAAA,EACA;AACF,CAAA;AAEA,IAAO,2BAAA,GAAQ,mBAAA;;;AC5Bf,IAAA,6BAAA,GAAA;AAAA,QAAA,CAAA,6BAAA,EAAA;AAAA,EAAA,OAAA,EAAA,MAAA;AAAA,CAAA,CAAA;AAAA,SAASA,KAAI,GAAA,EAA4B;AACvC,EAAA,OAAO,cAAA,CAAe,QAAQ,GAAG,CAAA;AACnC;AAEA,SAASC,IAAAA,CAAI,KAAa,KAAA,EAAqB;AAC7C,EAAA,OAAO,cAAA,CAAe,OAAA,CAAQ,GAAA,EAAK,KAAK,CAAA;AAC1C;AAEA,SAASC,YAAW,GAAA,EAAmB;AACrC,EAAA,cAAA,CAAe,WAAW,GAAG,CAAA;AAC/B;AAEA,SAASC,QAAO,GAAA,EAAsB;AACpC,EAAA,OAAO,CAAC,CAAC,cAAA,CAAe,OAAA,CAAQ,GAAG,CAAA;AACrC;AAEA,SAASC,MAAAA,GAAc;AACrB,EAAA,cAAA,CAAe,KAAA,EAAM;AACvB;AAEA,IAAM,qBAAA,GAAwB;AAAA,EAC5B,GAAA,EAAAH,IAAAA;AAAA,EACA,GAAA,EAAAD,IAAAA;AAAA,EACA,UAAA,EAAAE,WAAAA;AAAA,EACA,MAAA,EAAAC,OAAAA;AAAA,EACA,KAAA,EAAAC;AACF,CAAA;AAEA,IAAO,6BAAA,GAAQ,qBAAA","file":"storage-service.mjs","sourcesContent":["function get(key: string): string | null {\n return localStorage.getItem(key);\n}\n\nfunction set(key: string, value: string): void {\n return localStorage.setItem(key, value);\n}\n\nfunction removeItem(key: string): void {\n localStorage.removeItem(key);\n}\n\nfunction exists(key: string): boolean {\n return !!localStorage.getItem(key);\n}\n\nfunction clear(): void {\n localStorage.clear();\n}\n\nconst localStorageService = {\n set,\n get,\n removeItem,\n exists,\n clear,\n};\n\nexport default localStorageService;\n\nexport interface LocalStorageService {\n set: (key: string, value: string) => void;\n get: (key: string) => string | null;\n removeItem: (key: string) => void;\n exists: (key: string) => boolean;\n clear: () => void;\n}\n","function get(key: string): string | null {\n return sessionStorage.getItem(key);\n}\n\nfunction set(key: string, value: string): void {\n return sessionStorage.setItem(key, value);\n}\n\nfunction removeItem(key: string): void {\n sessionStorage.removeItem(key);\n}\n\nfunction exists(key: string): boolean {\n return !!sessionStorage.getItem(key);\n}\n\nfunction clear(): void {\n sessionStorage.clear();\n}\n\nconst sessionStorageService = {\n set,\n get,\n removeItem,\n exists,\n clear,\n};\n\nexport default sessionStorageService;\n\nexport interface SessionStorageService {\n set: (key: string, value: string) => void;\n get: (key: string) => string | null;\n removeItem: (key: string) => void;\n exists: (key: string) => boolean;\n clear: () => void;\n}\n"]}
1
+ {"version":3,"file":"storage-service.mjs","names":["get","set","removeItem","exists","clear"],"sources":["../src/storage-service/localStorageService.ts","../src/storage-service/sessionStorageService.ts"],"sourcesContent":["function get(key: string): string | null {\n return localStorage.getItem(key);\n}\n\nfunction set(key: string, value: string): void {\n return localStorage.setItem(key, value);\n}\n\nfunction removeItem(key: string): void {\n localStorage.removeItem(key);\n}\n\nfunction exists(key: string): boolean {\n return !!localStorage.getItem(key);\n}\n\nfunction clear(): void {\n localStorage.clear();\n}\n\nconst localStorageService = {\n set,\n get,\n removeItem,\n exists,\n clear,\n};\n\nexport default localStorageService;\n\nexport interface LocalStorageService {\n set: (key: string, value: string) => void;\n get: (key: string) => string | null;\n removeItem: (key: string) => void;\n exists: (key: string) => boolean;\n clear: () => void;\n}\n","function get(key: string): string | null {\n return sessionStorage.getItem(key);\n}\n\nfunction set(key: string, value: string): void {\n return sessionStorage.setItem(key, value);\n}\n\nfunction removeItem(key: string): void {\n sessionStorage.removeItem(key);\n}\n\nfunction exists(key: string): boolean {\n return !!sessionStorage.getItem(key);\n}\n\nfunction clear(): void {\n sessionStorage.clear();\n}\n\nconst sessionStorageService = {\n set,\n get,\n removeItem,\n exists,\n clear,\n};\n\nexport default sessionStorageService;\n\nexport interface SessionStorageService {\n set: (key: string, value: string) => void;\n get: (key: string) => string | null;\n removeItem: (key: string) => void;\n exists: (key: string) => boolean;\n clear: () => void;\n}\n"],"mappings":";;;;AAAA,SAASA,MAAI,KAA4B;AACvC,QAAO,aAAa,QAAQ,IAAI;;AAGlC,SAASC,MAAI,KAAa,OAAqB;AAC7C,QAAO,aAAa,QAAQ,KAAK,MAAM;;AAGzC,SAASC,aAAW,KAAmB;AACrC,cAAa,WAAW,IAAI;;AAG9B,SAASC,SAAO,KAAsB;AACpC,QAAO,CAAC,CAAC,aAAa,QAAQ,IAAI;;AAGpC,SAASC,UAAc;AACrB,cAAa,OAAO;;AAGtB,MAAM,sBAAsB;CAC1B;CACA;CACA;CACA;CACA;CACD;;;;;AC1BD,SAAS,IAAI,KAA4B;AACvC,QAAO,eAAe,QAAQ,IAAI;;AAGpC,SAAS,IAAI,KAAa,OAAqB;AAC7C,QAAO,eAAe,QAAQ,KAAK,MAAM;;AAG3C,SAAS,WAAW,KAAmB;AACrC,gBAAe,WAAW,IAAI;;AAGhC,SAAS,OAAO,KAAsB;AACpC,QAAO,CAAC,CAAC,eAAe,QAAQ,IAAI;;AAGtC,SAAS,QAAc;AACrB,gBAAe,OAAO;;AAGxB,MAAM,wBAAwB;CAC5B;CACA;CACA;CACA;CACA;CACD"}
@@ -1,5 +1,4 @@
1
- import { SymmetricCiphertext } from './types.mjs';
2
-
1
+ //#region src/symmetric-crypto/keys.d.ts
3
2
  /**
4
3
  * Converts Uint8Array into CryptoKey
5
4
  *
@@ -31,8 +30,9 @@ declare function genSymmetricKey(): Uint8Array;
31
30
  *
32
31
  * @returns The derived CryptoKey.
33
32
  */
34
- declare function deriveSymmetricCryptoKey(keyMaterial: string): Promise<CryptoKey>;
35
-
33
+ declare function deriveSymmetricCryptoKey(keyMaterial: Uint8Array): Promise<CryptoKey>;
34
+ //#endregion
35
+ //#region src/symmetric-crypto/aes.d.ts
36
36
  /**
37
37
  * Symmetrically encrypts the message
38
38
  *
@@ -42,7 +42,7 @@ declare function deriveSymmetricCryptoKey(keyMaterial: string): Promise<CryptoKe
42
42
  * @param aux - The auxilary string
43
43
  * @returns The resulting ciphertext.
44
44
  */
45
- declare function encryptSymmetrically(encryptionKey: CryptoKey, message: Uint8Array, aux: string, freeField?: string): Promise<SymmetricCiphertext>;
45
+ declare function encryptSymmetrically(encryptionKey: CryptoKey, message: Uint8Array, aux: Uint8Array, freeField?: Uint8Array): Promise<Uint8Array>;
46
46
  /**
47
47
  * Decryps symmetrically encrypted message
48
48
  *
@@ -51,6 +51,7 @@ declare function encryptSymmetrically(encryptionKey: CryptoKey, message: Uint8Ar
51
51
  * @param aux - The auxilary string
52
52
  * @returns The resulting ciphertext.
53
53
  */
54
- declare function decryptSymmetrically(encryptionKey: CryptoKey, encryptedMessage: SymmetricCiphertext, aux: string): Promise<Uint8Array>;
55
-
54
+ declare function decryptSymmetrically(encryptionKey: CryptoKey, encryptedMessage: Uint8Array, aux: Uint8Array): Promise<Uint8Array>;
55
+ //#endregion
56
56
  export { decryptSymmetrically, deriveSymmetricCryptoKey, encryptSymmetrically, exportSymmetricCryptoKey, genSymmetricCryptoKey, genSymmetricKey, importSymmetricCryptoKey };
57
+ //# sourceMappingURL=symmetric-crypto.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"symmetric-crypto.d.mts","names":[],"sources":["../src/symmetric-crypto/keys.ts","../src/symmetric-crypto/aes.ts"],"mappings":";;AASA;;;;;iBAAsB,wBAAA,CAAyB,OAAA,EAAS,UAAA,GAAa,WAAA,GAAc,OAAA,CAAQ,SAAA;;;;;;;iBAmBrE,wBAAA,CAAyB,GAAA,EAAK,SAAA,GAAY,OAAA,CAAQ,UAAA;;;;AAAxE;;iBAcsB,qBAAA,CAAA,GAAyB,OAAA,CAAQ,SAAA;;;;;;iBAgBvC,eAAA,CAAA,GAAmB,UAAA;;;;;;iBAeb,wBAAA,CAAyB,WAAA,EAAa,UAAA,GAAa,OAAA,CAAQ,SAAA;;;;AAhEjF;;;;;;;;iBCIsB,oBAAA,CACpB,aAAA,EAAe,SAAA,EACf,OAAA,EAAS,UAAA,EACT,GAAA,EAAK,UAAA,EACL,SAAA,GAAY,UAAA,GACX,OAAA,CAAQ,UAAA;;;;;;;;ADUX;iBCSsB,oBAAA,CACpB,aAAA,EAAe,SAAA,EACf,gBAAA,EAAkB,UAAA,EAClB,GAAA,EAAK,UAAA,GACJ,OAAA,CAAQ,UAAA"}
@@ -1,5 +1,4 @@
1
- import { SymmetricCiphertext } from './types.js';
2
-
1
+ //#region src/symmetric-crypto/keys.d.ts
3
2
  /**
4
3
  * Converts Uint8Array into CryptoKey
5
4
  *
@@ -31,8 +30,9 @@ declare function genSymmetricKey(): Uint8Array;
31
30
  *
32
31
  * @returns The derived CryptoKey.
33
32
  */
34
- declare function deriveSymmetricCryptoKey(keyMaterial: string): Promise<CryptoKey>;
35
-
33
+ declare function deriveSymmetricCryptoKey(keyMaterial: Uint8Array): Promise<CryptoKey>;
34
+ //#endregion
35
+ //#region src/symmetric-crypto/aes.d.ts
36
36
  /**
37
37
  * Symmetrically encrypts the message
38
38
  *
@@ -42,7 +42,7 @@ declare function deriveSymmetricCryptoKey(keyMaterial: string): Promise<CryptoKe
42
42
  * @param aux - The auxilary string
43
43
  * @returns The resulting ciphertext.
44
44
  */
45
- declare function encryptSymmetrically(encryptionKey: CryptoKey, message: Uint8Array, aux: string, freeField?: string): Promise<SymmetricCiphertext>;
45
+ declare function encryptSymmetrically(encryptionKey: CryptoKey, message: Uint8Array, aux: Uint8Array, freeField?: Uint8Array): Promise<Uint8Array>;
46
46
  /**
47
47
  * Decryps symmetrically encrypted message
48
48
  *
@@ -51,6 +51,7 @@ declare function encryptSymmetrically(encryptionKey: CryptoKey, message: Uint8Ar
51
51
  * @param aux - The auxilary string
52
52
  * @returns The resulting ciphertext.
53
53
  */
54
- declare function decryptSymmetrically(encryptionKey: CryptoKey, encryptedMessage: SymmetricCiphertext, aux: string): Promise<Uint8Array>;
55
-
54
+ declare function decryptSymmetrically(encryptionKey: CryptoKey, encryptedMessage: Uint8Array, aux: Uint8Array): Promise<Uint8Array>;
55
+ //#endregion
56
56
  export { decryptSymmetrically, deriveSymmetricCryptoKey, encryptSymmetrically, exportSymmetricCryptoKey, genSymmetricCryptoKey, genSymmetricKey, importSymmetricCryptoKey };
57
+ //# sourceMappingURL=symmetric-crypto.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"symmetric-crypto.d.ts","names":[],"sources":["../src/symmetric-crypto/keys.ts","../src/symmetric-crypto/aes.ts"],"mappings":";;AASA;;;;;iBAAsB,wBAAA,CAAyB,OAAA,EAAS,UAAA,GAAa,WAAA,GAAc,OAAA,CAAQ,SAAA;;;;;;;iBAmBrE,wBAAA,CAAyB,GAAA,EAAK,SAAA,GAAY,OAAA,CAAQ,UAAA;;;;AAAxE;;iBAcsB,qBAAA,CAAA,GAAyB,OAAA,CAAQ,SAAA;;;;;;iBAgBvC,eAAA,CAAA,GAAmB,UAAA;;;;;;iBAeb,wBAAA,CAAyB,WAAA,EAAa,UAAA,GAAa,OAAA,CAAQ,SAAA;;;;AAhEjF;;;;;;;;iBCIsB,oBAAA,CACpB,aAAA,EAAe,SAAA,EACf,OAAA,EAAS,UAAA,EACT,GAAA,EAAK,UAAA,EACL,SAAA,GAAY,UAAA,GACX,OAAA,CAAQ,UAAA;;;;;;;;ADUX;iBCSsB,oBAAA,CACpB,aAAA,EAAe,SAAA,EACf,gBAAA,EAAkB,UAAA,EAClB,GAAA,EAAK,UAAA,GACJ,OAAA,CAAQ,UAAA"}
@@ -1,142 +1,10 @@
1
- 'use strict';
2
-
3
- var blake3_js = require('@noble/hashes/blake3.js');
4
- var utils_js = require('@noble/hashes/utils.js');
5
- var utils_js$1 = require('@noble/post-quantum/utils.js');
6
-
7
- // src/constants.ts
8
- var AES_ALGORITHM = "AES-GCM";
9
- var AES_KEY_BIT_LENGTH = 256;
10
- var AUX_LEN = 128;
11
- var IV_LEN_BYTES = 16;
12
- var KEY_FORMAT = "raw";
13
- function getBytesFromString(bytes, value) {
14
- return blake3_js.blake3(utils_js.utf8ToBytes(value), { dkLen: bytes });
15
- }
16
-
17
- // src/symmetric-crypto/keys.ts
18
- async function importSymmetricCryptoKey(keyData) {
19
- return crypto.subtle.importKey(
20
- KEY_FORMAT,
21
- new Uint8Array(keyData),
22
- {
23
- name: AES_ALGORITHM,
24
- length: AES_KEY_BIT_LENGTH
25
- },
26
- true,
27
- ["encrypt", "decrypt"]
28
- );
29
- }
30
- async function exportSymmetricCryptoKey(key) {
31
- try {
32
- const rawKey = await crypto.subtle.exportKey(KEY_FORMAT, key);
33
- return new Uint8Array(rawKey);
34
- } catch (error) {
35
- throw new Error("Failed to export symmetric CryptoKey", { cause: error });
36
- }
37
- }
38
- async function genSymmetricCryptoKey() {
39
- return crypto.subtle.generateKey(
40
- {
41
- name: AES_ALGORITHM,
42
- length: AES_KEY_BIT_LENGTH
43
- },
44
- true,
45
- ["encrypt", "decrypt"]
46
- );
47
- }
48
- function genSymmetricKey() {
49
- try {
50
- const key = new Uint8Array(AES_KEY_BIT_LENGTH / 8);
51
- crypto.getRandomValues(key);
52
- return key;
53
- } catch (error) {
54
- throw new Error("Failed to generate symmetric key", { cause: error });
55
- }
56
- }
57
- async function deriveSymmetricCryptoKey(keyMaterial) {
58
- try {
59
- const hashBuffer = await getBytesFromString(AES_KEY_BIT_LENGTH / 8, keyMaterial);
60
- return importSymmetricCryptoKey(hashBuffer);
61
- } catch (error) {
62
- throw new Error("Failed to derive CryptoKey from the given key material", { cause: error });
63
- }
64
- }
65
- async function createNISTbasedIV(freeField) {
66
- try {
67
- if (!freeField) {
68
- return utils_js$1.randomBytes(IV_LEN_BYTES);
69
- }
70
- const iv = new Uint8Array(16);
71
- const randFiled = utils_js$1.randomBytes(12);
72
- iv.set(randFiled, 0);
73
- const freeFiledFixedLength = await getBytesFromString(4, freeField);
74
- iv.set(freeFiledFixedLength, 12);
75
- return iv;
76
- } catch (error) {
77
- throw new Error("Failed to create IV", { cause: error });
78
- }
79
- }
80
- async function makeAuxFixedLength(aux) {
81
- return getBytesFromString(AUX_LEN / 8, aux);
82
- }
83
- async function encryptMessage(message, encryptionKey, iv, additionalData) {
84
- try {
85
- const encrypted = await crypto.subtle.encrypt(
86
- { name: AES_ALGORITHM, iv, additionalData },
87
- encryptionKey,
88
- message
89
- );
90
- return new Uint8Array(encrypted);
91
- } catch (error) {
92
- throw new Error("Failed to encrypt symmetrically", { cause: error });
93
- }
94
- }
95
- async function decryptMessage(ciphertext, iv, encryptionKey, additionalData) {
96
- try {
97
- const decrypted = await crypto.subtle.decrypt(
98
- { name: AES_ALGORITHM, iv, additionalData },
99
- encryptionKey,
100
- ciphertext
101
- );
102
- return new Uint8Array(decrypted);
103
- } catch (error) {
104
- throw new Error("Failed to decrypt symmetrically", { cause: error });
105
- }
106
- }
107
-
108
- // src/symmetric-crypto/aes.ts
109
- async function encryptSymmetrically(encryptionKey, message, aux, freeField) {
110
- try {
111
- const iv = await createNISTbasedIV(freeField);
112
- const additionalData = await makeAuxFixedLength(aux);
113
- const ciphertext = await encryptMessage(message, encryptionKey, iv, additionalData);
114
- return { ciphertext, iv };
115
- } catch (error) {
116
- throw new Error("Failed to encrypt symmetrically", { cause: error });
117
- }
118
- }
119
- async function decryptSymmetrically(encryptionKey, encryptedMessage, aux) {
120
- try {
121
- const additionalData = await makeAuxFixedLength(aux);
122
- const result = await decryptMessage(
123
- encryptedMessage.ciphertext,
124
- encryptedMessage.iv,
125
- encryptionKey,
126
- additionalData
127
- );
128
- return result;
129
- } catch (error) {
130
- throw new Error("Failed to decrypt symmetrically", { cause: error });
131
- }
132
- }
133
-
134
- exports.decryptSymmetrically = decryptSymmetrically;
135
- exports.deriveSymmetricCryptoKey = deriveSymmetricCryptoKey;
136
- exports.encryptSymmetrically = encryptSymmetrically;
137
- exports.exportSymmetricCryptoKey = exportSymmetricCryptoKey;
138
- exports.genSymmetricCryptoKey = genSymmetricCryptoKey;
139
- exports.genSymmetricKey = genSymmetricKey;
140
- exports.importSymmetricCryptoKey = importSymmetricCryptoKey;
141
- //# sourceMappingURL=symmetric-crypto.js.map
142
- //# sourceMappingURL=symmetric-crypto.js.map
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
2
+ const require_aes = require('./aes-bOrKZuUC.js');
3
+
4
+ exports.decryptSymmetrically = require_aes.decryptSymmetrically;
5
+ exports.deriveSymmetricCryptoKey = require_aes.deriveSymmetricCryptoKey;
6
+ exports.encryptSymmetrically = require_aes.encryptSymmetrically;
7
+ exports.exportSymmetricCryptoKey = require_aes.exportSymmetricCryptoKey;
8
+ exports.genSymmetricCryptoKey = require_aes.genSymmetricCryptoKey;
9
+ exports.genSymmetricKey = require_aes.genSymmetricKey;
10
+ exports.importSymmetricCryptoKey = require_aes.importSymmetricCryptoKey;
@@ -1,134 +1,3 @@
1
- import { blake3 } from '@noble/hashes/blake3.js';
2
- import { utf8ToBytes } from '@noble/hashes/utils.js';
3
- import { randomBytes } from '@noble/post-quantum/utils.js';
1
+ import { a as genSymmetricCryptoKey, i as exportSymmetricCryptoKey, n as encryptSymmetrically, o as genSymmetricKey, r as deriveSymmetricCryptoKey, s as importSymmetricCryptoKey, t as decryptSymmetrically } from "./aes-DSDxP8uF.mjs";
4
2
 
5
- // src/constants.ts
6
- var AES_ALGORITHM = "AES-GCM";
7
- var AES_KEY_BIT_LENGTH = 256;
8
- var AUX_LEN = 128;
9
- var IV_LEN_BYTES = 16;
10
- var KEY_FORMAT = "raw";
11
- function getBytesFromString(bytes, value) {
12
- return blake3(utf8ToBytes(value), { dkLen: bytes });
13
- }
14
-
15
- // src/symmetric-crypto/keys.ts
16
- async function importSymmetricCryptoKey(keyData) {
17
- return crypto.subtle.importKey(
18
- KEY_FORMAT,
19
- new Uint8Array(keyData),
20
- {
21
- name: AES_ALGORITHM,
22
- length: AES_KEY_BIT_LENGTH
23
- },
24
- true,
25
- ["encrypt", "decrypt"]
26
- );
27
- }
28
- async function exportSymmetricCryptoKey(key) {
29
- try {
30
- const rawKey = await crypto.subtle.exportKey(KEY_FORMAT, key);
31
- return new Uint8Array(rawKey);
32
- } catch (error) {
33
- throw new Error("Failed to export symmetric CryptoKey", { cause: error });
34
- }
35
- }
36
- async function genSymmetricCryptoKey() {
37
- return crypto.subtle.generateKey(
38
- {
39
- name: AES_ALGORITHM,
40
- length: AES_KEY_BIT_LENGTH
41
- },
42
- true,
43
- ["encrypt", "decrypt"]
44
- );
45
- }
46
- function genSymmetricKey() {
47
- try {
48
- const key = new Uint8Array(AES_KEY_BIT_LENGTH / 8);
49
- crypto.getRandomValues(key);
50
- return key;
51
- } catch (error) {
52
- throw new Error("Failed to generate symmetric key", { cause: error });
53
- }
54
- }
55
- async function deriveSymmetricCryptoKey(keyMaterial) {
56
- try {
57
- const hashBuffer = await getBytesFromString(AES_KEY_BIT_LENGTH / 8, keyMaterial);
58
- return importSymmetricCryptoKey(hashBuffer);
59
- } catch (error) {
60
- throw new Error("Failed to derive CryptoKey from the given key material", { cause: error });
61
- }
62
- }
63
- async function createNISTbasedIV(freeField) {
64
- try {
65
- if (!freeField) {
66
- return randomBytes(IV_LEN_BYTES);
67
- }
68
- const iv = new Uint8Array(16);
69
- const randFiled = randomBytes(12);
70
- iv.set(randFiled, 0);
71
- const freeFiledFixedLength = await getBytesFromString(4, freeField);
72
- iv.set(freeFiledFixedLength, 12);
73
- return iv;
74
- } catch (error) {
75
- throw new Error("Failed to create IV", { cause: error });
76
- }
77
- }
78
- async function makeAuxFixedLength(aux) {
79
- return getBytesFromString(AUX_LEN / 8, aux);
80
- }
81
- async function encryptMessage(message, encryptionKey, iv, additionalData) {
82
- try {
83
- const encrypted = await crypto.subtle.encrypt(
84
- { name: AES_ALGORITHM, iv, additionalData },
85
- encryptionKey,
86
- message
87
- );
88
- return new Uint8Array(encrypted);
89
- } catch (error) {
90
- throw new Error("Failed to encrypt symmetrically", { cause: error });
91
- }
92
- }
93
- async function decryptMessage(ciphertext, iv, encryptionKey, additionalData) {
94
- try {
95
- const decrypted = await crypto.subtle.decrypt(
96
- { name: AES_ALGORITHM, iv, additionalData },
97
- encryptionKey,
98
- ciphertext
99
- );
100
- return new Uint8Array(decrypted);
101
- } catch (error) {
102
- throw new Error("Failed to decrypt symmetrically", { cause: error });
103
- }
104
- }
105
-
106
- // src/symmetric-crypto/aes.ts
107
- async function encryptSymmetrically(encryptionKey, message, aux, freeField) {
108
- try {
109
- const iv = await createNISTbasedIV(freeField);
110
- const additionalData = await makeAuxFixedLength(aux);
111
- const ciphertext = await encryptMessage(message, encryptionKey, iv, additionalData);
112
- return { ciphertext, iv };
113
- } catch (error) {
114
- throw new Error("Failed to encrypt symmetrically", { cause: error });
115
- }
116
- }
117
- async function decryptSymmetrically(encryptionKey, encryptedMessage, aux) {
118
- try {
119
- const additionalData = await makeAuxFixedLength(aux);
120
- const result = await decryptMessage(
121
- encryptedMessage.ciphertext,
122
- encryptedMessage.iv,
123
- encryptionKey,
124
- additionalData
125
- );
126
- return result;
127
- } catch (error) {
128
- throw new Error("Failed to decrypt symmetrically", { cause: error });
129
- }
130
- }
131
-
132
- export { decryptSymmetrically, deriveSymmetricCryptoKey, encryptSymmetrically, exportSymmetricCryptoKey, genSymmetricCryptoKey, genSymmetricKey, importSymmetricCryptoKey };
133
- //# sourceMappingURL=symmetric-crypto.mjs.map
134
- //# sourceMappingURL=symmetric-crypto.mjs.map
3
+ export { decryptSymmetrically, deriveSymmetricCryptoKey, encryptSymmetrically, exportSymmetricCryptoKey, genSymmetricCryptoKey, genSymmetricKey, importSymmetricCryptoKey };
package/dist/types.d.mts CHANGED
@@ -1,102 +1,104 @@
1
- declare enum KeystoreType {
2
- IDENTITY = "identity",
3
- ENCRYPTION = "encryption",
4
- RECOVERY = "recovery",
5
- INDEX = "index"
6
- }
1
+ //#region src/types.d.ts
7
2
  type EncryptedKeystore = {
8
- userID: string;
9
- type: KeystoreType;
10
- encryptedKeys: SymmetricCiphertext;
3
+ userEmail: string;
4
+ type: KeystoreType;
5
+ encryptedKeys: EmailKeysEncrypted;
11
6
  };
12
7
  type User = {
13
- email: string;
14
- name: string;
8
+ email: string;
9
+ name: string;
15
10
  };
16
11
  type UserWithPublicKeys = User & {
17
- publicKeys: PublicKeys;
12
+ publicKeys: PublicKeys;
18
13
  };
19
14
  type PublicKeys = {
20
- eccPublicKey: CryptoKey;
21
- kyberPublicKey: Uint8Array;
15
+ eccPublicKey: CryptoKey;
16
+ kyberPublicKey: Uint8Array;
22
17
  };
23
- type MediaKeys = {
24
- olmKey: Uint8Array;
25
- pqKey: Uint8Array;
26
- index: number;
27
- userID: string;
18
+ type PublicKeysBase64 = {
19
+ eccPublicKeyBase64: string;
20
+ kyberPublicKeyBase64: string;
28
21
  };
29
22
  type PrivateKeys = {
30
- eccPrivateKey: CryptoKey;
31
- kyberPrivateKey: Uint8Array;
23
+ eccPrivateKey: CryptoKey;
24
+ kyberPrivateKey: Uint8Array;
32
25
  };
33
- type IdentityKeys = {
34
- userPublicKey: CryptoKey;
35
- userPrivateKey: CryptoKey;
26
+ type PrivateKeysEncrypted = {
27
+ eccPrivateKeyBase64: string;
28
+ kyberPrivateKeyBase64: string;
36
29
  };
37
- type EncryptionKeys = {
38
- userPublicKey: CryptoKey;
39
- userPrivateKey: CryptoKey;
40
- userPublicKyberKey: Uint8Array;
41
- userPrivateKyberKey: Uint8Array;
30
+ type EmailKeys = {
31
+ publicKeys: PublicKeys;
32
+ privateKeys: PrivateKeys;
33
+ };
34
+ type EmailKeysEncrypted = {
35
+ publicKeys: PublicKeysBase64;
36
+ privateKeys: PrivateKeysEncrypted;
42
37
  };
43
38
  type HybridEncryptedEmail = {
44
- encryptedKey: HybridEncKey;
45
- enc: SymmetricCiphertext;
46
- recipientEmail: string;
47
- params: EmailPublicParameters;
48
- id: string;
39
+ encryptedKey: HybridEncKey;
40
+ enc: EmailBodyEncrypted;
41
+ recipientEmail: string;
42
+ params: EmailPublicParameters;
43
+ id: string;
44
+ isSubjectEncrypted: boolean;
49
45
  };
50
46
  type PwdProtectedEmail = {
51
- encryptedKey: PwdProtectedKey;
52
- enc: SymmetricCiphertext;
53
- params: EmailPublicParameters;
54
- id: string;
55
- };
56
- type SymmetricCiphertext = {
57
- ciphertext: Uint8Array;
58
- iv: Uint8Array;
47
+ encryptedKey: PwdProtectedKey;
48
+ enc: EmailBodyEncrypted;
49
+ params: EmailPublicParameters;
50
+ id: string;
51
+ isSubjectEncrypted: boolean;
59
52
  };
60
53
  type StoredEmail = {
61
- params: EmailPublicParameters;
62
- content: SymmetricCiphertext;
63
- id: string;
54
+ params: EmailPublicParameters;
55
+ enc: EmailBodyEncrypted;
56
+ id: string;
64
57
  };
65
58
  type HybridEncKey = {
66
- kyberCiphertext: Uint8Array;
67
- encryptedKey: Uint8Array;
59
+ kyberCiphertext: string;
60
+ encryptedKey: string;
68
61
  };
69
62
  type PwdProtectedKey = {
70
- encryptedKey: Uint8Array;
71
- salt: Uint8Array;
63
+ encryptedKey: string;
64
+ salt: string;
65
+ };
66
+ type EmailBodyEncrypted = {
67
+ encText: string;
68
+ encAttachments?: string[];
72
69
  };
73
70
  type EmailBody = {
74
- text: string;
75
- attachments?: string[];
71
+ text: string;
72
+ attachments?: string[];
76
73
  };
77
74
  type EmailPublicParameters = {
78
- subject: string;
79
- createdAt: string;
80
- sender: User;
81
- recipient: User;
82
- recipients?: User[];
83
- replyToEmailID?: number;
84
- labels?: string[];
75
+ subject: string;
76
+ createdAt: string;
77
+ sender: User;
78
+ recipient: User;
79
+ recipients?: User[];
80
+ replyToEmailID?: string;
81
+ labels?: string[];
85
82
  };
86
83
  type Email = {
87
- id: string;
88
- body: EmailBody;
89
- params: EmailPublicParameters;
84
+ id: string;
85
+ body: EmailBody;
86
+ params: EmailPublicParameters;
90
87
  };
91
88
  interface MailCache<Email> {
92
- esCache: Map<string, Email>;
93
- cacheSize: number;
94
- isCacheLimited: boolean;
95
- isCacheReady: boolean;
89
+ esCache: Map<string, Email>;
90
+ cacheSize: number;
91
+ isCacheLimited: boolean;
92
+ isCacheReady: boolean;
96
93
  }
97
94
  interface EmailSearchResult {
98
- email: Email;
99
- score?: number;
95
+ email: Email;
96
+ score?: number;
97
+ }
98
+ declare enum KeystoreType {
99
+ ENCRYPTION = "Encryption",
100
+ RECOVERY = "Recovery"
100
101
  }
101
-
102
- export { type Email, type EmailBody, type EmailPublicParameters, type EmailSearchResult, type EncryptedKeystore, type EncryptionKeys, type HybridEncKey, type HybridEncryptedEmail, type IdentityKeys, KeystoreType, type MailCache, type MediaKeys, type PrivateKeys, type PublicKeys, type PwdProtectedEmail, type PwdProtectedKey, type StoredEmail, type SymmetricCiphertext, type User, type UserWithPublicKeys };
102
+ //#endregion
103
+ export { Email, EmailBody, EmailBodyEncrypted, EmailKeys, EmailKeysEncrypted, EmailPublicParameters, EmailSearchResult, EncryptedKeystore, HybridEncKey, HybridEncryptedEmail, KeystoreType, MailCache, PrivateKeys, PrivateKeysEncrypted, PublicKeys, PublicKeysBase64, PwdProtectedEmail, PwdProtectedKey, StoredEmail, User, UserWithPublicKeys };
104
+ //# sourceMappingURL=types.d.mts.map