internxt-crypto 1.5.0 → 1.6.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 +9 -5
- package/dist/asymmetric-crypto.d.mts.map +1 -1
- package/dist/asymmetric-crypto.d.ts.map +1 -1
- package/dist/asymmetric-crypto.js +12 -2
- package/dist/asymmetric-crypto.js.map +1 -1
- package/dist/asymmetric-crypto.mjs +12 -2
- package/dist/asymmetric-crypto.mjs.map +1 -1
- package/dist/{email-crypto-_Wcbvr_n.mjs → email-crypto-CoRbTphp.mjs} +73 -106
- package/dist/email-crypto-CoRbTphp.mjs.map +1 -0
- package/dist/{email-crypto-CPL8ept8.js → email-crypto-DJb-I1wm.js} +90 -117
- package/dist/email-crypto-DJb-I1wm.js.map +1 -0
- package/dist/email-crypto.d.mts +33 -27
- package/dist/email-crypto.d.mts.map +1 -1
- package/dist/email-crypto.d.ts +33 -27
- package/dist/email-crypto.d.ts.map +1 -1
- package/dist/email-crypto.js +4 -3
- package/dist/email-crypto.mjs +2 -2
- package/dist/index.d.mts +3 -3
- package/dist/index.d.ts +3 -3
- package/dist/index.js +2 -3
- package/dist/index.mjs +2 -2
- package/dist/keystore-crypto.d.mts +1 -1
- package/dist/keystore-crypto.d.ts +1 -1
- package/dist/react-native/asymmetric-crypto.d.mts +21 -0
- package/dist/react-native/asymmetric-crypto.d.mts.map +1 -0
- package/dist/react-native/asymmetric-crypto.d.ts +21 -0
- package/dist/react-native/asymmetric-crypto.d.ts.map +1 -0
- package/dist/react-native/asymmetric-crypto.js +31 -0
- package/dist/react-native/asymmetric-crypto.js.map +1 -0
- package/dist/react-native/asymmetric-crypto.mjs +28 -0
- package/dist/react-native/asymmetric-crypto.mjs.map +1 -0
- package/dist/react-native/chunk-CfYAbeIz.mjs +13 -0
- package/dist/react-native/chunk-DskHE4z1.js +43 -0
- package/dist/react-native/constants.d.mts +27 -0
- package/dist/react-native/constants.d.mts.map +1 -0
- package/dist/react-native/constants.d.ts +27 -0
- package/dist/react-native/constants.d.ts.map +1 -0
- package/dist/react-native/constants.js +51 -0
- package/dist/react-native/constants.js.map +1 -0
- package/dist/react-native/constants.mjs +28 -0
- package/dist/react-native/constants.mjs.map +1 -0
- package/dist/react-native/derive-key.d.mts +32 -0
- package/dist/react-native/derive-key.d.mts.map +1 -0
- package/dist/react-native/derive-key.d.ts +32 -0
- package/dist/react-native/derive-key.d.ts.map +1 -0
- package/dist/react-native/derive-key.js +51 -0
- package/dist/react-native/derive-key.js.map +1 -0
- package/dist/react-native/derive-key.mjs +47 -0
- package/dist/react-native/derive-key.mjs.map +1 -0
- package/dist/react-native/derive-password-Bb3R3nyh.mjs +68 -0
- package/dist/react-native/derive-password-Bb3R3nyh.mjs.map +1 -0
- package/dist/react-native/derive-password-DIPrE8Mz.js +86 -0
- package/dist/react-native/derive-password-DIPrE8Mz.js.map +1 -0
- package/dist/react-native/derive-password.d.mts +28 -0
- package/dist/react-native/derive-password.d.mts.map +1 -0
- package/dist/react-native/derive-password.d.ts +28 -0
- package/dist/react-native/derive-password.d.ts.map +1 -0
- package/dist/react-native/derive-password.js +5 -0
- package/dist/react-native/derive-password.mjs +2 -0
- package/dist/react-native/email-crypto-C3ka3aAj.js +700 -0
- package/dist/react-native/email-crypto-C3ka3aAj.js.map +1 -0
- package/dist/react-native/email-crypto-CDM4iPK8.mjs +490 -0
- package/dist/react-native/email-crypto-CDM4iPK8.mjs.map +1 -0
- package/dist/react-native/email-crypto.d.mts +253 -0
- package/dist/react-native/email-crypto.d.mts.map +1 -0
- package/dist/react-native/email-crypto.d.ts +253 -0
- package/dist/react-native/email-crypto.d.ts.map +1 -0
- package/dist/react-native/email-crypto.js +35 -0
- package/dist/react-native/email-crypto.mjs +2 -0
- package/dist/react-native/hash.d.mts +50 -0
- package/dist/react-native/hash.d.mts.map +1 -0
- package/dist/react-native/hash.d.ts +50 -0
- package/dist/react-native/hash.d.ts.map +1 -0
- package/dist/react-native/hash.js +89 -0
- package/dist/react-native/hash.js.map +1 -0
- package/dist/react-native/hash.mjs +82 -0
- package/dist/react-native/hash.mjs.map +1 -0
- package/dist/react-native/index.d.mts +32 -0
- package/dist/react-native/index.d.mts.map +1 -0
- package/dist/react-native/index.d.ts +32 -0
- package/dist/react-native/index.d.ts.map +1 -0
- package/dist/react-native/index.js +106 -0
- package/dist/react-native/index.mjs +12 -0
- package/dist/react-native/keystore-crypto-BXPEVvzq.js +238 -0
- package/dist/react-native/keystore-crypto-BXPEVvzq.js.map +1 -0
- package/dist/react-native/keystore-crypto-C6F-NQdX.mjs +185 -0
- package/dist/react-native/keystore-crypto-C6F-NQdX.mjs.map +1 -0
- package/dist/react-native/keystore-crypto.d.mts +71 -0
- package/dist/react-native/keystore-crypto.d.mts.map +1 -0
- package/dist/react-native/keystore-crypto.d.ts +71 -0
- package/dist/react-native/keystore-crypto.d.ts.map +1 -0
- package/dist/react-native/keystore-crypto.js +11 -0
- package/dist/react-native/keystore-crypto.mjs +2 -0
- package/dist/react-native/post-quantum-crypto.d.mts +32 -0
- package/dist/react-native/post-quantum-crypto.d.mts.map +1 -0
- package/dist/react-native/post-quantum-crypto.d.ts +32 -0
- package/dist/react-native/post-quantum-crypto.d.ts.map +1 -0
- package/dist/react-native/post-quantum-crypto.js +50 -0
- package/dist/react-native/post-quantum-crypto.js.map +1 -0
- package/dist/react-native/post-quantum-crypto.mjs +46 -0
- package/dist/react-native/post-quantum-crypto.mjs.map +1 -0
- package/dist/react-native/storage-service.d.mts +47 -0
- package/dist/react-native/storage-service.d.mts.map +1 -0
- package/dist/react-native/storage-service.d.ts +47 -0
- package/dist/react-native/storage-service.d.ts.map +1 -0
- package/dist/react-native/storage-service.js +66 -0
- package/dist/react-native/storage-service.js.map +1 -0
- package/dist/react-native/storage-service.mjs +54 -0
- package/dist/react-native/storage-service.mjs.map +1 -0
- package/dist/react-native/symmetric-crypto.d.mts +28 -0
- package/dist/react-native/symmetric-crypto.d.mts.map +1 -0
- package/dist/react-native/symmetric-crypto.d.ts +28 -0
- package/dist/react-native/symmetric-crypto.d.ts.map +1 -0
- package/dist/react-native/symmetric-crypto.js +52 -0
- package/dist/react-native/symmetric-crypto.js.map +1 -0
- package/dist/react-native/symmetric-crypto.mjs +48 -0
- package/dist/react-native/symmetric-crypto.mjs.map +1 -0
- package/dist/{types-fhvOo6Gw.d.ts → react-native/types-D1R4_m5r.d.mts} +6 -10
- package/dist/react-native/types-D1R4_m5r.d.mts.map +1 -0
- package/dist/{types-cEyToM9T.d.mts → react-native/types-Y0wL7HUH.d.ts} +6 -10
- package/dist/react-native/types-Y0wL7HUH.d.ts.map +1 -0
- package/dist/react-native/types.d.mts +2 -0
- package/dist/react-native/types.d.ts +2 -0
- package/dist/react-native/types.js +11 -0
- package/dist/react-native/types.js.map +1 -0
- package/dist/react-native/types.mjs +10 -0
- package/dist/react-native/types.mjs.map +1 -0
- package/dist/react-native/utils.d.mts +78 -0
- package/dist/react-native/utils.d.mts.map +1 -0
- package/dist/react-native/utils.d.ts +78 -0
- package/dist/react-native/utils.d.ts.map +1 -0
- package/dist/react-native/utils.js +123 -0
- package/dist/react-native/utils.js.map +1 -0
- package/dist/react-native/utils.mjs +109 -0
- package/dist/react-native/utils.mjs.map +1 -0
- package/dist/react-native/xwing-B34h5e3Z.mjs +15 -0
- package/dist/react-native/xwing-B34h5e3Z.mjs.map +1 -0
- package/dist/react-native/xwing-CSdiyHAt.js +33 -0
- package/dist/react-native/xwing-CSdiyHAt.js.map +1 -0
- package/dist/types-D1R4_m5r.d.mts +55 -0
- package/dist/types-D1R4_m5r.d.mts.map +1 -0
- package/dist/types-Y0wL7HUH.d.ts +55 -0
- package/dist/types-Y0wL7HUH.d.ts.map +1 -0
- package/dist/types.d.mts +2 -2
- package/dist/types.d.ts +2 -2
- package/dist/types.js.map +1 -1
- package/dist/types.mjs.map +1 -1
- package/dist/utils.d.mts.map +1 -1
- package/dist/utils.d.ts.map +1 -1
- package/dist/utils.js +3 -8
- package/dist/utils.js.map +1 -1
- package/dist/utils.mjs +3 -8
- package/dist/utils.mjs.map +1 -1
- package/package.json +4 -1
- package/dist/email-crypto-CPL8ept8.js.map +0 -1
- package/dist/email-crypto-_Wcbvr_n.mjs.map +0 -1
- package/dist/types-cEyToM9T.d.mts.map +0 -1
- package/dist/types-fhvOo6Gw.d.ts.map +0 -1
package/dist/email-crypto.d.ts
CHANGED
|
@@ -1,33 +1,32 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { d as PwdProtectedKey, f as RecipientWithPublicKey, i as EmailEncrypted, l as PwdProtectedEmail, n as EmailAndSubject, o as HybridEncKey, r as EmailAndSubjectEncrypted, s as HybridKeyPair, t as Email, u as PwdProtectedEmailAndSubject } from "./types-Y0wL7HUH.js";
|
|
2
2
|
|
|
3
3
|
//#region src/email-crypto/hybridEncyptedEmail.d.ts
|
|
4
|
-
/**
|
|
5
|
-
* Encrypts the email using hybrid encryption.
|
|
6
|
-
*
|
|
7
|
-
* @param email - The email to encrypt.
|
|
8
|
-
* @param recipientPublicKeys - The public keys of the recipient.
|
|
9
|
-
* @param aux - An optional auxilary sting for AEAD (e.g., email ID or timestamp).
|
|
10
|
-
* @returns The encrypted email
|
|
11
|
-
*/
|
|
12
|
-
declare function encryptEmailHybrid(email: Email, recipient: RecipientWithPublicKey, aux?: Uint8Array): Promise<HybridEncryptedEmail>;
|
|
13
4
|
/**
|
|
14
5
|
* Encrypts the email using hybrid encryption for multiple recipients.
|
|
15
6
|
*
|
|
16
7
|
* @param email - The email to encrypt for multiple recipients.
|
|
17
8
|
* @param recipients - The recipients with corresponding public keys.
|
|
18
9
|
* @param aux - An optional auxilary sting for AEAD (e.g., email ID or timestamp).
|
|
19
|
-
* @returns The set of encrypted
|
|
10
|
+
* @returns The set of encrypted keys (one per user) and encrypted email
|
|
20
11
|
*/
|
|
21
|
-
declare function encryptEmailHybridForMultipleRecipients(email: Email, recipients: RecipientWithPublicKey[], aux?: Uint8Array): Promise<
|
|
12
|
+
declare function encryptEmailHybridForMultipleRecipients(email: Email, recipients: RecipientWithPublicKey[], aux?: Uint8Array): Promise<{
|
|
13
|
+
encryptedKeys: HybridEncKey[];
|
|
14
|
+
encEmail: EmailEncrypted;
|
|
15
|
+
}>;
|
|
22
16
|
/**
|
|
23
17
|
* Decrypts the email using hybrid encryption.
|
|
24
18
|
*
|
|
25
19
|
* @param encEmail - The encrypted email.
|
|
20
|
+
* @param encryptedKey - The encrypted key for this recipient.
|
|
26
21
|
* @param recipientPrivateHybridKeys - The private key of the recipient.
|
|
27
22
|
* @param aux - An optional auxilary sting for AEAD (e.g., email ID or timestamp).
|
|
28
23
|
* @returns The decrypted email
|
|
29
24
|
*/
|
|
30
|
-
declare function decryptEmailHybrid(encEmail:
|
|
25
|
+
declare function decryptEmailHybrid(encEmail: EmailEncrypted, encryptedKey: HybridEncKey, recipientPrivateHybridKeys: Uint8Array, aux?: Uint8Array): Promise<Email>;
|
|
26
|
+
declare function decryptEmailPreviewHybrid(encPreview: string, encryptedKey: HybridEncKey, recipientPrivateHybridKeys: Uint8Array, aux?: Uint8Array): Promise<{
|
|
27
|
+
preview: string;
|
|
28
|
+
encryptionKey: Uint8Array;
|
|
29
|
+
}>;
|
|
31
30
|
//#endregion
|
|
32
31
|
//#region src/email-crypto/pwdProtectedEmail.d.ts
|
|
33
32
|
/**
|
|
@@ -50,33 +49,28 @@ declare function createPwdProtectedEmail(email: Email, password: string, aux?: U
|
|
|
50
49
|
declare function decryptPwdProtectedEmail(encryptedEmail: PwdProtectedEmail, password: string, aux?: Uint8Array): Promise<Email>;
|
|
51
50
|
//#endregion
|
|
52
51
|
//#region src/email-crypto/hybridEncryptedEmailAndSubject.d.ts
|
|
53
|
-
/**
|
|
54
|
-
* Encrypts the email and its subject using hybrid encryption.
|
|
55
|
-
*
|
|
56
|
-
* @param email - The email and subject to encrypt.
|
|
57
|
-
* @param recipientPublicKeys - The public keys of the recipient.
|
|
58
|
-
* @param aux - An optional auxilary sting for AEAD (e.g., email ID or timestamp).
|
|
59
|
-
* @returns The encrypted email and subject
|
|
60
|
-
*/
|
|
61
|
-
declare function encryptEmailAndSubjectHybrid(email: EmailAndSubject, recipient: RecipientWithPublicKey, aux?: Uint8Array): Promise<HybridEncryptedEmailAndSubject>;
|
|
62
52
|
/**
|
|
63
53
|
* Encrypts the email and its subject using hybrid encryption for multiple recipients.
|
|
64
54
|
*
|
|
65
55
|
* @param email - The email and subject to encrypt for multiple recipients.
|
|
66
56
|
* @param recipients - The recipients with corresponding public keys.
|
|
67
57
|
* @param aux - An optional auxilary sting for AEAD (e.g., email ID or timestamp).
|
|
68
|
-
* @returns The set of encrypted
|
|
58
|
+
* @returns The set of encrypted keys and encrypted email and subject
|
|
69
59
|
*/
|
|
70
|
-
declare function encryptEmailAndSubjectHybridForMultipleRecipients(email: EmailAndSubject, recipients: RecipientWithPublicKey[], aux?: Uint8Array): Promise<
|
|
60
|
+
declare function encryptEmailAndSubjectHybridForMultipleRecipients(email: EmailAndSubject, recipients: RecipientWithPublicKey[], aux?: Uint8Array): Promise<{
|
|
61
|
+
encryptedKeys: HybridEncKey[];
|
|
62
|
+
encEmail: EmailAndSubjectEncrypted;
|
|
63
|
+
}>;
|
|
71
64
|
/**
|
|
72
65
|
* Decrypts the email and its subject using hybrid encryption.
|
|
73
66
|
*
|
|
74
|
-
* @param
|
|
67
|
+
* @param encEmail - The encrypted email and subject.
|
|
68
|
+
* @param encryptedKey - The encrypted key for this recipient.
|
|
75
69
|
* @param recipientPrivateHybridKeys - The private key of the recipient.
|
|
76
70
|
* @param aux - An optional auxilary sting for AEAD (e.g., email ID or timestamp).
|
|
77
71
|
* @returns The decrypted email and subject
|
|
78
72
|
*/
|
|
79
|
-
declare function decryptEmailAndSubjectHybrid(
|
|
73
|
+
declare function decryptEmailAndSubjectHybrid(encEmail: EmailAndSubjectEncrypted, encryptedKey: HybridEncKey, recipientPrivateHybridKeys: Uint8Array, aux?: Uint8Array): Promise<EmailAndSubject>;
|
|
80
74
|
//#endregion
|
|
81
75
|
//#region src/email-crypto/pwdProtectedEmailAndSubject.d.ts
|
|
82
76
|
/**
|
|
@@ -141,6 +135,15 @@ declare function encryptEmail(email: Email, aux?: Uint8Array): Promise<{
|
|
|
141
135
|
* @returns The resulting encrypted email and symmetric key used for encryption
|
|
142
136
|
*/
|
|
143
137
|
declare function encryptEmailWithKey(email: Email, encryptionKey: Uint8Array, aux?: Uint8Array): Promise<EmailEncrypted>;
|
|
138
|
+
/**
|
|
139
|
+
* Decrypts symmetrically encrypted email preview.
|
|
140
|
+
*
|
|
141
|
+
* @param encEmailPreview - The email preview to decrypt.
|
|
142
|
+
* @param encryptionKey - The symmetric key to decrypt the email.
|
|
143
|
+
* @param aux - An optional auxilary sting for AEAD (e.g., email ID or timestamp).
|
|
144
|
+
* @returns The resulting decrypted email
|
|
145
|
+
*/
|
|
146
|
+
declare function decryptPreview(encEmailPreview: string, encryptionKey: Uint8Array, aux?: Uint8Array): Promise<string>;
|
|
144
147
|
/**
|
|
145
148
|
* Decrypts symmetrically encrypted email.
|
|
146
149
|
*
|
|
@@ -224,6 +227,9 @@ declare class EmailSymmetricEncryptionError extends Error {
|
|
|
224
227
|
declare class EmailSymmetricDecryptionError extends Error {
|
|
225
228
|
constructor(errorMsg?: string);
|
|
226
229
|
}
|
|
230
|
+
declare class EmailPreviewSymmetricDecryptionError extends Error {
|
|
231
|
+
constructor(errorMsg?: string);
|
|
232
|
+
}
|
|
227
233
|
declare class EmailHybridEncryptionError extends Error {
|
|
228
234
|
constructor(errorMsg?: string);
|
|
229
235
|
}
|
|
@@ -243,5 +249,5 @@ declare class FailedToDecryptEmail extends Error {
|
|
|
243
249
|
constructor(errorMsg?: string);
|
|
244
250
|
}
|
|
245
251
|
//#endregion
|
|
246
|
-
export { EmailHybridDecryptionError, EmailHybridEncryptionError, EmailPasswordOpenError, EmailPasswordProtectError, EmailSymmetricDecryptionError, EmailSymmetricEncryptionError, FailedToDecryptEmail, FailedToEncryptEmail, InvalidInputEmail, createPwdProtectedEmail, createPwdProtectedEmailAndSubject, decryptEmail, decryptEmailAndSubject, decryptEmailAndSubjectHybrid, decryptEmailHybrid, decryptKeysHybrid, decryptPwdProtectedEmail, decryptPwdProtectedEmailAndSubject, deriveDatabaseKey, deriveEmailDraftKey, encryptEmail, encryptEmailAndSubject,
|
|
252
|
+
export { EmailHybridDecryptionError, EmailHybridEncryptionError, EmailPasswordOpenError, EmailPasswordProtectError, EmailPreviewSymmetricDecryptionError, EmailSymmetricDecryptionError, EmailSymmetricEncryptionError, FailedToDecryptEmail, FailedToEncryptEmail, InvalidInputEmail, createPwdProtectedEmail, createPwdProtectedEmailAndSubject, decryptEmail, decryptEmailAndSubject, decryptEmailAndSubjectHybrid, decryptEmailHybrid, decryptEmailPreviewHybrid, decryptKeysHybrid, decryptPreview, decryptPwdProtectedEmail, decryptPwdProtectedEmailAndSubject, deriveDatabaseKey, deriveEmailDraftKey, encryptEmail, encryptEmailAndSubject, encryptEmailAndSubjectHybridForMultipleRecipients, encryptEmailAndSubjectWithKey, encryptEmailHybridForMultipleRecipients, encryptEmailWithKey, encryptKeysHybrid, generateEmailKeys, passwordProtectKey, removePasswordProtection };
|
|
247
253
|
//# sourceMappingURL=email-crypto.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"email-crypto.d.ts","names":[],"sources":["../src/email-crypto/hybridEncyptedEmail.ts","../src/email-crypto/pwdProtectedEmail.ts","../src/email-crypto/hybridEncryptedEmailAndSubject.ts","../src/email-crypto/pwdProtectedEmailAndSubject.ts","../src/email-crypto/emailKeys.ts","../src/email-crypto/core.ts","../src/email-crypto/coreSubject.ts","../src/email-crypto/errors.ts"],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"email-crypto.d.ts","names":[],"sources":["../src/email-crypto/hybridEncyptedEmail.ts","../src/email-crypto/pwdProtectedEmail.ts","../src/email-crypto/hybridEncryptedEmailAndSubject.ts","../src/email-crypto/pwdProtectedEmailAndSubject.ts","../src/email-crypto/emailKeys.ts","../src/email-crypto/core.ts","../src/email-crypto/coreSubject.ts","../src/email-crypto/errors.ts"],"mappings":"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"}
|
package/dist/email-crypto.js
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
const require_email_crypto = require("./email-crypto-
|
|
2
|
+
const require_email_crypto = require("./email-crypto-DJb-I1wm.js");
|
|
3
3
|
exports.EmailHybridDecryptionError = require_email_crypto.EmailHybridDecryptionError;
|
|
4
4
|
exports.EmailHybridEncryptionError = require_email_crypto.EmailHybridEncryptionError;
|
|
5
5
|
exports.EmailPasswordOpenError = require_email_crypto.EmailPasswordOpenError;
|
|
6
6
|
exports.EmailPasswordProtectError = require_email_crypto.EmailPasswordProtectError;
|
|
7
|
+
exports.EmailPreviewSymmetricDecryptionError = require_email_crypto.EmailPreviewSymmetricDecryptionError;
|
|
7
8
|
exports.EmailSymmetricDecryptionError = require_email_crypto.EmailSymmetricDecryptionError;
|
|
8
9
|
exports.EmailSymmetricEncryptionError = require_email_crypto.EmailSymmetricEncryptionError;
|
|
9
10
|
exports.FailedToDecryptEmail = require_email_crypto.FailedToDecryptEmail;
|
|
@@ -15,17 +16,17 @@ exports.decryptEmail = require_email_crypto.decryptEmail;
|
|
|
15
16
|
exports.decryptEmailAndSubject = require_email_crypto.decryptEmailAndSubject;
|
|
16
17
|
exports.decryptEmailAndSubjectHybrid = require_email_crypto.decryptEmailAndSubjectHybrid;
|
|
17
18
|
exports.decryptEmailHybrid = require_email_crypto.decryptEmailHybrid;
|
|
19
|
+
exports.decryptEmailPreviewHybrid = require_email_crypto.decryptEmailPreviewHybrid;
|
|
18
20
|
exports.decryptKeysHybrid = require_email_crypto.decryptKeysHybrid;
|
|
21
|
+
exports.decryptPreview = require_email_crypto.decryptPreview;
|
|
19
22
|
exports.decryptPwdProtectedEmail = require_email_crypto.decryptPwdProtectedEmail;
|
|
20
23
|
exports.decryptPwdProtectedEmailAndSubject = require_email_crypto.decryptPwdProtectedEmailAndSubject;
|
|
21
24
|
exports.deriveDatabaseKey = require_email_crypto.deriveDatabaseKey;
|
|
22
25
|
exports.deriveEmailDraftKey = require_email_crypto.deriveEmailDraftKey;
|
|
23
26
|
exports.encryptEmail = require_email_crypto.encryptEmail;
|
|
24
27
|
exports.encryptEmailAndSubject = require_email_crypto.encryptEmailAndSubject;
|
|
25
|
-
exports.encryptEmailAndSubjectHybrid = require_email_crypto.encryptEmailAndSubjectHybrid;
|
|
26
28
|
exports.encryptEmailAndSubjectHybridForMultipleRecipients = require_email_crypto.encryptEmailAndSubjectHybridForMultipleRecipients;
|
|
27
29
|
exports.encryptEmailAndSubjectWithKey = require_email_crypto.encryptEmailAndSubjectWithKey;
|
|
28
|
-
exports.encryptEmailHybrid = require_email_crypto.encryptEmailHybrid;
|
|
29
30
|
exports.encryptEmailHybridForMultipleRecipients = require_email_crypto.encryptEmailHybridForMultipleRecipients;
|
|
30
31
|
exports.encryptEmailWithKey = require_email_crypto.encryptEmailWithKey;
|
|
31
32
|
exports.encryptKeysHybrid = require_email_crypto.encryptKeysHybrid;
|
package/dist/email-crypto.mjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { A as
|
|
2
|
-
export { EmailHybridDecryptionError, EmailHybridEncryptionError, EmailPasswordOpenError, EmailPasswordProtectError, EmailSymmetricDecryptionError, EmailSymmetricEncryptionError, FailedToDecryptEmail, FailedToEncryptEmail, InvalidInputEmail, createPwdProtectedEmail, createPwdProtectedEmailAndSubject, decryptEmail, decryptEmailAndSubject, decryptEmailAndSubjectHybrid, decryptEmailHybrid, decryptKeysHybrid, decryptPwdProtectedEmail, decryptPwdProtectedEmailAndSubject, deriveDatabaseKey, deriveEmailDraftKey, encryptEmail, encryptEmailAndSubject,
|
|
1
|
+
import { A as EmailSymmetricEncryptionError, C as removePasswordProtection, D as EmailPasswordProtectError, E as EmailPasswordOpenError, M as FailedToEncryptEmail, N as InvalidInputEmail, O as EmailPreviewSymmetricDecryptionError, S as passwordProtectKey, T as EmailHybridEncryptionError, _ as decryptKeysHybrid, a as decryptPwdProtectedEmailAndSubject, b as encryptEmailWithKey, c as decryptEmailAndSubject, d as createPwdProtectedEmail, f as decryptPwdProtectedEmail, g as decryptEmail, h as encryptEmailHybridForMultipleRecipients, i as createPwdProtectedEmailAndSubject, j as FailedToDecryptEmail, k as EmailSymmetricDecryptionError, l as encryptEmailAndSubject, m as decryptEmailPreviewHybrid, n as deriveEmailDraftKey, o as decryptEmailAndSubjectHybrid, p as decryptEmailHybrid, r as generateEmailKeys, s as encryptEmailAndSubjectHybridForMultipleRecipients, t as deriveDatabaseKey, u as encryptEmailAndSubjectWithKey, v as decryptPreview, w as EmailHybridDecryptionError, x as encryptKeysHybrid, y as encryptEmail } from "./email-crypto-CoRbTphp.mjs";
|
|
2
|
+
export { EmailHybridDecryptionError, EmailHybridEncryptionError, EmailPasswordOpenError, EmailPasswordProtectError, EmailPreviewSymmetricDecryptionError, EmailSymmetricDecryptionError, EmailSymmetricEncryptionError, FailedToDecryptEmail, FailedToEncryptEmail, InvalidInputEmail, createPwdProtectedEmail, createPwdProtectedEmailAndSubject, decryptEmail, decryptEmailAndSubject, decryptEmailAndSubjectHybrid, decryptEmailHybrid, decryptEmailPreviewHybrid, decryptKeysHybrid, decryptPreview, decryptPwdProtectedEmail, decryptPwdProtectedEmailAndSubject, deriveDatabaseKey, deriveEmailDraftKey, encryptEmail, encryptEmailAndSubject, encryptEmailAndSubjectHybridForMultipleRecipients, encryptEmailAndSubjectWithKey, encryptEmailHybridForMultipleRecipients, encryptEmailWithKey, encryptKeysHybrid, generateEmailKeys, passwordProtectKey, removePasswordProtection };
|
package/dist/index.d.mts
CHANGED
|
@@ -2,8 +2,8 @@ import { deriveSecretKey, generateEccKeys } from "./asymmetric-crypto.mjs";
|
|
|
2
2
|
import { AES_KEY_BYTE_LENGTH, ARGON2ID_ITERATIONS, ARGON2ID_MEMORY_SIZE, ARGON2ID_OUTPUT_BYTE_LENGTH, ARGON2ID_PARALLELISM, ARGON2ID_SALT_BYTE_LENGTH, CONTEXT_DATABASE, CONTEXT_DRAFT, CONTEXT_ENC_KEYSTORE, CONTEXT_RECOVERY, CONTEXT_TWO_KEYS, DB_LABEL, DB_VERSION, IV_LEN_BYTES, KYBER768_PUBLIC_KEY_LENGTH, KYBER768_SECRET_KEY_LENGTH, KYBER_SEED_LENGTH, MAX_CACHE_SIZE, MAX_EMAIL_PER_BATCH, XWING_CIPHERTEXT_BYTE_LENGTH, XWING_PUBLIC_KEY_LENGTH, XWING_SECRET_KEY_LENGTH, XWING_SEED_BYTE_LENGTH } from "./constants.mjs";
|
|
3
3
|
import { deriveKeyFromMnemonic, deriveSymmetricKeyFromContext, deriveSymmetricKeyFromTwoKeys } from "./derive-key.mjs";
|
|
4
4
|
import { generateSalt, getKeyFromPassword, getKeyFromPasswordAndSalt } from "./derive-password.mjs";
|
|
5
|
-
import { a as EncryptedKeystore, c as
|
|
6
|
-
import { EmailHybridDecryptionError, EmailHybridEncryptionError, EmailPasswordOpenError, EmailPasswordProtectError, EmailSymmetricDecryptionError, EmailSymmetricEncryptionError, FailedToDecryptEmail, FailedToEncryptEmail, InvalidInputEmail, createPwdProtectedEmail, createPwdProtectedEmailAndSubject, decryptEmail, decryptEmailAndSubject, decryptEmailAndSubjectHybrid, decryptEmailHybrid, decryptPwdProtectedEmail, decryptPwdProtectedEmailAndSubject, deriveDatabaseKey, deriveEmailDraftKey, encryptEmail, encryptEmailAndSubject,
|
|
5
|
+
import { a as EncryptedKeystore, c as KeystoreType, d as PwdProtectedKey, f as RecipientWithPublicKey, i as EmailEncrypted, l as PwdProtectedEmail, n as EmailAndSubject, o as HybridEncKey, r as EmailAndSubjectEncrypted, s as HybridKeyPair, t as Email, u as PwdProtectedEmailAndSubject } from "./types-D1R4_m5r.mjs";
|
|
6
|
+
import { EmailHybridDecryptionError, EmailHybridEncryptionError, EmailPasswordOpenError, EmailPasswordProtectError, EmailSymmetricDecryptionError, EmailSymmetricEncryptionError, FailedToDecryptEmail, FailedToEncryptEmail, InvalidInputEmail, createPwdProtectedEmail, createPwdProtectedEmailAndSubject, decryptEmail, decryptEmailAndSubject, decryptEmailAndSubjectHybrid, decryptEmailHybrid, decryptEmailPreviewHybrid, decryptPwdProtectedEmail, decryptPwdProtectedEmailAndSubject, deriveDatabaseKey, deriveEmailDraftKey, encryptEmail, encryptEmailAndSubject, encryptEmailAndSubjectHybridForMultipleRecipients, encryptEmailAndSubjectWithKey, encryptEmailHybridForMultipleRecipients, encryptEmailWithKey, generateEmailKeys } from "./email-crypto.mjs";
|
|
7
7
|
import { getBytesFromData, getBytesFromDataArray, hashData, hashDataArray, hashDataArrayWithKey, hashDataWithKey } from "./hash.mjs";
|
|
8
8
|
import { FailedToChangeMnemonicForKeyStore, FailedToCreateKeyStores, FailedToOpenEncryptionKeyStore, FailedToOpenRecoveryKeyStore, InvalidInputKeyStore, changeMnemonicForEncryptionKeystore, createEncryptionAndRecoveryKeystores, openEncryptionKeystore, openRecoveryKeystore } from "./keystore-crypto.mjs";
|
|
9
9
|
import { decapsulateKyber, encapsulateKyber, generateKyberKeys } from "./post-quantum-crypto.mjs";
|
|
@@ -28,5 +28,5 @@ declare function unwrapKey(encryptedKey: Uint8Array, wrappingKey: Uint8Array): P
|
|
|
28
28
|
*/
|
|
29
29
|
declare function wrapKey(key: Uint8Array, wrappingKey: Uint8Array): Promise<Uint8Array>;
|
|
30
30
|
//#endregion
|
|
31
|
-
export { AES_KEY_BYTE_LENGTH, ARGON2ID_ITERATIONS, ARGON2ID_MEMORY_SIZE, ARGON2ID_OUTPUT_BYTE_LENGTH, ARGON2ID_PARALLELISM, ARGON2ID_SALT_BYTE_LENGTH, CONTEXT_DATABASE, CONTEXT_DRAFT, CONTEXT_ENC_KEYSTORE, CONTEXT_RECOVERY, CONTEXT_TWO_KEYS, DB_LABEL, DB_VERSION, Email, EmailAndSubject, EmailAndSubjectEncrypted, EmailEncrypted, EmailHybridDecryptionError, EmailHybridEncryptionError, EmailPasswordOpenError, EmailPasswordProtectError, EmailSymmetricDecryptionError, EmailSymmetricEncryptionError, EncryptedKeystore, FailedToChangeMnemonicForKeyStore, FailedToCreateKeyStores, FailedToDecryptEmail, FailedToEncryptEmail, FailedToOpenEncryptionKeyStore, FailedToOpenRecoveryKeyStore, HybridEncKey,
|
|
31
|
+
export { AES_KEY_BYTE_LENGTH, ARGON2ID_ITERATIONS, ARGON2ID_MEMORY_SIZE, ARGON2ID_OUTPUT_BYTE_LENGTH, ARGON2ID_PARALLELISM, ARGON2ID_SALT_BYTE_LENGTH, CONTEXT_DATABASE, CONTEXT_DRAFT, CONTEXT_ENC_KEYSTORE, CONTEXT_RECOVERY, CONTEXT_TWO_KEYS, DB_LABEL, DB_VERSION, Email, EmailAndSubject, EmailAndSubjectEncrypted, EmailEncrypted, EmailHybridDecryptionError, EmailHybridEncryptionError, EmailPasswordOpenError, EmailPasswordProtectError, EmailSymmetricDecryptionError, EmailSymmetricEncryptionError, EncryptedKeystore, FailedToChangeMnemonicForKeyStore, FailedToCreateKeyStores, FailedToDecryptEmail, FailedToEncryptEmail, FailedToOpenEncryptionKeyStore, FailedToOpenRecoveryKeyStore, HybridEncKey, HybridKeyPair, IV_LEN_BYTES, InvalidInputEmail, InvalidInputKeyStore, KYBER768_PUBLIC_KEY_LENGTH, KYBER768_SECRET_KEY_LENGTH, KYBER_SEED_LENGTH, KeystoreType, MAX_CACHE_SIZE, MAX_EMAIL_PER_BATCH, PwdProtectedEmail, PwdProtectedEmailAndSubject, PwdProtectedKey, RecipientWithPublicKey, UTF8ToUint8, XWING_CIPHERTEXT_BYTE_LENGTH, XWING_PUBLIC_KEY_LENGTH, XWING_SECRET_KEY_LENGTH, XWING_SEED_BYTE_LENGTH, base64ToUint8Array, bytesToMnemonic, bytesToUuid, changeMnemonicForEncryptionKeystore, createEncryptionAndRecoveryKeystores, createPwdProtectedEmail, createPwdProtectedEmailAndSubject, decapsulateKyber, decryptEmail, decryptEmailAndSubject, decryptEmailAndSubjectHybrid, decryptEmailHybrid, decryptEmailPreviewHybrid, decryptPwdProtectedEmail, decryptPwdProtectedEmailAndSubject, decryptSymmetrically, deriveDatabaseKey, deriveEmailDraftKey, deriveKeyFromMnemonic, deriveSecretKey, deriveSymmetricKeyFromContext, deriveSymmetricKeyFromTwoKeys, encapsulateKyber, encryptEmail, encryptEmailAndSubject, encryptEmailAndSubjectHybridForMultipleRecipients, encryptEmailAndSubjectWithKey, encryptEmailHybridForMultipleRecipients, encryptEmailWithKey, encryptSymmetrically, genMnemonic, genSymmetricKey, generateEccKeys, generateEmailKeys, generateKyberKeys, generateSalt, generateUuid, getBytesFromData, getBytesFromDataArray, getKeyFromPassword, getKeyFromPasswordAndSalt, hashData, hashDataArray, hashDataArrayWithKey, hashDataWithKey, hexToUint8Array, mnemonicToBytes, openEncryptionKeystore, openRecoveryKeystore, uint8ArrayToBase64, uint8ArrayToHex, uint8ToUTF8, unwrapKey, uuidToBytes, wrapKey };
|
|
32
32
|
//# sourceMappingURL=index.d.mts.map
|
package/dist/index.d.ts
CHANGED
|
@@ -2,8 +2,8 @@ import { deriveSecretKey, generateEccKeys } from "./asymmetric-crypto.js";
|
|
|
2
2
|
import { AES_KEY_BYTE_LENGTH, ARGON2ID_ITERATIONS, ARGON2ID_MEMORY_SIZE, ARGON2ID_OUTPUT_BYTE_LENGTH, ARGON2ID_PARALLELISM, ARGON2ID_SALT_BYTE_LENGTH, CONTEXT_DATABASE, CONTEXT_DRAFT, CONTEXT_ENC_KEYSTORE, CONTEXT_RECOVERY, CONTEXT_TWO_KEYS, DB_LABEL, DB_VERSION, IV_LEN_BYTES, KYBER768_PUBLIC_KEY_LENGTH, KYBER768_SECRET_KEY_LENGTH, KYBER_SEED_LENGTH, MAX_CACHE_SIZE, MAX_EMAIL_PER_BATCH, XWING_CIPHERTEXT_BYTE_LENGTH, XWING_PUBLIC_KEY_LENGTH, XWING_SECRET_KEY_LENGTH, XWING_SEED_BYTE_LENGTH } from "./constants.js";
|
|
3
3
|
import { deriveKeyFromMnemonic, deriveSymmetricKeyFromContext, deriveSymmetricKeyFromTwoKeys } from "./derive-key.js";
|
|
4
4
|
import { generateSalt, getKeyFromPassword, getKeyFromPasswordAndSalt } from "./derive-password.js";
|
|
5
|
-
import { a as EncryptedKeystore, c as
|
|
6
|
-
import { EmailHybridDecryptionError, EmailHybridEncryptionError, EmailPasswordOpenError, EmailPasswordProtectError, EmailSymmetricDecryptionError, EmailSymmetricEncryptionError, FailedToDecryptEmail, FailedToEncryptEmail, InvalidInputEmail, createPwdProtectedEmail, createPwdProtectedEmailAndSubject, decryptEmail, decryptEmailAndSubject, decryptEmailAndSubjectHybrid, decryptEmailHybrid, decryptPwdProtectedEmail, decryptPwdProtectedEmailAndSubject, deriveDatabaseKey, deriveEmailDraftKey, encryptEmail, encryptEmailAndSubject,
|
|
5
|
+
import { a as EncryptedKeystore, c as KeystoreType, d as PwdProtectedKey, f as RecipientWithPublicKey, i as EmailEncrypted, l as PwdProtectedEmail, n as EmailAndSubject, o as HybridEncKey, r as EmailAndSubjectEncrypted, s as HybridKeyPair, t as Email, u as PwdProtectedEmailAndSubject } from "./types-Y0wL7HUH.js";
|
|
6
|
+
import { EmailHybridDecryptionError, EmailHybridEncryptionError, EmailPasswordOpenError, EmailPasswordProtectError, EmailSymmetricDecryptionError, EmailSymmetricEncryptionError, FailedToDecryptEmail, FailedToEncryptEmail, InvalidInputEmail, createPwdProtectedEmail, createPwdProtectedEmailAndSubject, decryptEmail, decryptEmailAndSubject, decryptEmailAndSubjectHybrid, decryptEmailHybrid, decryptEmailPreviewHybrid, decryptPwdProtectedEmail, decryptPwdProtectedEmailAndSubject, deriveDatabaseKey, deriveEmailDraftKey, encryptEmail, encryptEmailAndSubject, encryptEmailAndSubjectHybridForMultipleRecipients, encryptEmailAndSubjectWithKey, encryptEmailHybridForMultipleRecipients, encryptEmailWithKey, generateEmailKeys } from "./email-crypto.js";
|
|
7
7
|
import { getBytesFromData, getBytesFromDataArray, hashData, hashDataArray, hashDataArrayWithKey, hashDataWithKey } from "./hash.js";
|
|
8
8
|
import { FailedToChangeMnemonicForKeyStore, FailedToCreateKeyStores, FailedToOpenEncryptionKeyStore, FailedToOpenRecoveryKeyStore, InvalidInputKeyStore, changeMnemonicForEncryptionKeystore, createEncryptionAndRecoveryKeystores, openEncryptionKeystore, openRecoveryKeystore } from "./keystore-crypto.js";
|
|
9
9
|
import { decapsulateKyber, encapsulateKyber, generateKyberKeys } from "./post-quantum-crypto.js";
|
|
@@ -28,5 +28,5 @@ declare function unwrapKey(encryptedKey: Uint8Array, wrappingKey: Uint8Array): P
|
|
|
28
28
|
*/
|
|
29
29
|
declare function wrapKey(key: Uint8Array, wrappingKey: Uint8Array): Promise<Uint8Array>;
|
|
30
30
|
//#endregion
|
|
31
|
-
export { AES_KEY_BYTE_LENGTH, ARGON2ID_ITERATIONS, ARGON2ID_MEMORY_SIZE, ARGON2ID_OUTPUT_BYTE_LENGTH, ARGON2ID_PARALLELISM, ARGON2ID_SALT_BYTE_LENGTH, CONTEXT_DATABASE, CONTEXT_DRAFT, CONTEXT_ENC_KEYSTORE, CONTEXT_RECOVERY, CONTEXT_TWO_KEYS, DB_LABEL, DB_VERSION, Email, EmailAndSubject, EmailAndSubjectEncrypted, EmailEncrypted, EmailHybridDecryptionError, EmailHybridEncryptionError, EmailPasswordOpenError, EmailPasswordProtectError, EmailSymmetricDecryptionError, EmailSymmetricEncryptionError, EncryptedKeystore, FailedToChangeMnemonicForKeyStore, FailedToCreateKeyStores, FailedToDecryptEmail, FailedToEncryptEmail, FailedToOpenEncryptionKeyStore, FailedToOpenRecoveryKeyStore, HybridEncKey,
|
|
31
|
+
export { AES_KEY_BYTE_LENGTH, ARGON2ID_ITERATIONS, ARGON2ID_MEMORY_SIZE, ARGON2ID_OUTPUT_BYTE_LENGTH, ARGON2ID_PARALLELISM, ARGON2ID_SALT_BYTE_LENGTH, CONTEXT_DATABASE, CONTEXT_DRAFT, CONTEXT_ENC_KEYSTORE, CONTEXT_RECOVERY, CONTEXT_TWO_KEYS, DB_LABEL, DB_VERSION, Email, EmailAndSubject, EmailAndSubjectEncrypted, EmailEncrypted, EmailHybridDecryptionError, EmailHybridEncryptionError, EmailPasswordOpenError, EmailPasswordProtectError, EmailSymmetricDecryptionError, EmailSymmetricEncryptionError, EncryptedKeystore, FailedToChangeMnemonicForKeyStore, FailedToCreateKeyStores, FailedToDecryptEmail, FailedToEncryptEmail, FailedToOpenEncryptionKeyStore, FailedToOpenRecoveryKeyStore, HybridEncKey, HybridKeyPair, IV_LEN_BYTES, InvalidInputEmail, InvalidInputKeyStore, KYBER768_PUBLIC_KEY_LENGTH, KYBER768_SECRET_KEY_LENGTH, KYBER_SEED_LENGTH, KeystoreType, MAX_CACHE_SIZE, MAX_EMAIL_PER_BATCH, PwdProtectedEmail, PwdProtectedEmailAndSubject, PwdProtectedKey, RecipientWithPublicKey, UTF8ToUint8, XWING_CIPHERTEXT_BYTE_LENGTH, XWING_PUBLIC_KEY_LENGTH, XWING_SECRET_KEY_LENGTH, XWING_SEED_BYTE_LENGTH, base64ToUint8Array, bytesToMnemonic, bytesToUuid, changeMnemonicForEncryptionKeystore, createEncryptionAndRecoveryKeystores, createPwdProtectedEmail, createPwdProtectedEmailAndSubject, decapsulateKyber, decryptEmail, decryptEmailAndSubject, decryptEmailAndSubjectHybrid, decryptEmailHybrid, decryptEmailPreviewHybrid, decryptPwdProtectedEmail, decryptPwdProtectedEmailAndSubject, decryptSymmetrically, deriveDatabaseKey, deriveEmailDraftKey, deriveKeyFromMnemonic, deriveSecretKey, deriveSymmetricKeyFromContext, deriveSymmetricKeyFromTwoKeys, encapsulateKyber, encryptEmail, encryptEmailAndSubject, encryptEmailAndSubjectHybridForMultipleRecipients, encryptEmailAndSubjectWithKey, encryptEmailHybridForMultipleRecipients, encryptEmailWithKey, encryptSymmetrically, genMnemonic, genSymmetricKey, generateEccKeys, generateEmailKeys, generateKyberKeys, generateSalt, generateUuid, getBytesFromData, getBytesFromDataArray, getKeyFromPassword, getKeyFromPasswordAndSalt, hashData, hashDataArray, hashDataArrayWithKey, hashDataWithKey, hexToUint8Array, mnemonicToBytes, openEncryptionKeystore, openRecoveryKeystore, uint8ArrayToBase64, uint8ArrayToHex, uint8ToUTF8, unwrapKey, uuidToBytes, wrapKey };
|
|
32
32
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.js
CHANGED
|
@@ -5,7 +5,7 @@ const require_utils = require("./utils.js");
|
|
|
5
5
|
const require_derive_key = require("./derive-key.js");
|
|
6
6
|
const require_derive_password = require("./derive-password-CbYRDq7V.js");
|
|
7
7
|
const require_symmetric_crypto = require("./symmetric-crypto.js");
|
|
8
|
-
const require_email_crypto = require("./email-crypto-
|
|
8
|
+
const require_email_crypto = require("./email-crypto-DJb-I1wm.js");
|
|
9
9
|
const require_hash = require("./hash.js");
|
|
10
10
|
const require_types = require("./types.js");
|
|
11
11
|
const require_keystore_crypto = require("./keystore-crypto-CFiiGohl.js");
|
|
@@ -61,6 +61,7 @@ exports.decryptEmail = require_email_crypto.decryptEmail;
|
|
|
61
61
|
exports.decryptEmailAndSubject = require_email_crypto.decryptEmailAndSubject;
|
|
62
62
|
exports.decryptEmailAndSubjectHybrid = require_email_crypto.decryptEmailAndSubjectHybrid;
|
|
63
63
|
exports.decryptEmailHybrid = require_email_crypto.decryptEmailHybrid;
|
|
64
|
+
exports.decryptEmailPreviewHybrid = require_email_crypto.decryptEmailPreviewHybrid;
|
|
64
65
|
exports.decryptPwdProtectedEmail = require_email_crypto.decryptPwdProtectedEmail;
|
|
65
66
|
exports.decryptPwdProtectedEmailAndSubject = require_email_crypto.decryptPwdProtectedEmailAndSubject;
|
|
66
67
|
exports.decryptSymmetrically = require_symmetric_crypto.decryptSymmetrically;
|
|
@@ -73,10 +74,8 @@ exports.deriveSymmetricKeyFromTwoKeys = require_derive_key.deriveSymmetricKeyFro
|
|
|
73
74
|
exports.encapsulateKyber = require_post_quantum_crypto.encapsulateKyber;
|
|
74
75
|
exports.encryptEmail = require_email_crypto.encryptEmail;
|
|
75
76
|
exports.encryptEmailAndSubject = require_email_crypto.encryptEmailAndSubject;
|
|
76
|
-
exports.encryptEmailAndSubjectHybrid = require_email_crypto.encryptEmailAndSubjectHybrid;
|
|
77
77
|
exports.encryptEmailAndSubjectHybridForMultipleRecipients = require_email_crypto.encryptEmailAndSubjectHybridForMultipleRecipients;
|
|
78
78
|
exports.encryptEmailAndSubjectWithKey = require_email_crypto.encryptEmailAndSubjectWithKey;
|
|
79
|
-
exports.encryptEmailHybrid = require_email_crypto.encryptEmailHybrid;
|
|
80
79
|
exports.encryptEmailHybridForMultipleRecipients = require_email_crypto.encryptEmailHybridForMultipleRecipients;
|
|
81
80
|
exports.encryptEmailWithKey = require_email_crypto.encryptEmailWithKey;
|
|
82
81
|
exports.encryptSymmetrically = require_symmetric_crypto.encryptSymmetrically;
|
package/dist/index.mjs
CHANGED
|
@@ -4,9 +4,9 @@ import { UTF8ToUint8, base64ToUint8Array, bytesToMnemonic, bytesToUuid, genMnemo
|
|
|
4
4
|
import { deriveKeyFromMnemonic, deriveSymmetricKeyFromContext, deriveSymmetricKeyFromTwoKeys } from "./derive-key.mjs";
|
|
5
5
|
import { n as getKeyFromPassword, r as getKeyFromPasswordAndSalt, t as generateSalt } from "./derive-password-PED-YfwE.mjs";
|
|
6
6
|
import { decryptSymmetrically, encryptSymmetrically, genSymmetricKey } from "./symmetric-crypto.mjs";
|
|
7
|
-
import { A as
|
|
7
|
+
import { A as EmailSymmetricEncryptionError, D as EmailPasswordProtectError, E as EmailPasswordOpenError, F as wrapKey, M as FailedToEncryptEmail, N as InvalidInputEmail, P as unwrapKey, T as EmailHybridEncryptionError, a as decryptPwdProtectedEmailAndSubject, b as encryptEmailWithKey, c as decryptEmailAndSubject, d as createPwdProtectedEmail, f as decryptPwdProtectedEmail, g as decryptEmail, h as encryptEmailHybridForMultipleRecipients, i as createPwdProtectedEmailAndSubject, j as FailedToDecryptEmail, k as EmailSymmetricDecryptionError, l as encryptEmailAndSubject, m as decryptEmailPreviewHybrid, n as deriveEmailDraftKey, o as decryptEmailAndSubjectHybrid, p as decryptEmailHybrid, r as generateEmailKeys, s as encryptEmailAndSubjectHybridForMultipleRecipients, t as deriveDatabaseKey, u as encryptEmailAndSubjectWithKey, w as EmailHybridDecryptionError, y as encryptEmail } from "./email-crypto-CoRbTphp.mjs";
|
|
8
8
|
import { getBytesFromData, getBytesFromDataArray, hashData, hashDataArray, hashDataArrayWithKey, hashDataWithKey } from "./hash.mjs";
|
|
9
9
|
import { KeystoreType } from "./types.mjs";
|
|
10
10
|
import { a as FailedToChangeMnemonicForKeyStore, c as FailedToOpenRecoveryKeyStore, i as openRecoveryKeystore, l as InvalidInputKeyStore, n as createEncryptionAndRecoveryKeystores, o as FailedToCreateKeyStores, r as openEncryptionKeystore, s as FailedToOpenEncryptionKeyStore, t as changeMnemonicForEncryptionKeystore } from "./keystore-crypto-C6F-NQdX.mjs";
|
|
11
11
|
import { decapsulateKyber, encapsulateKyber, generateKyberKeys } from "./post-quantum-crypto.mjs";
|
|
12
|
-
export { AES_KEY_BYTE_LENGTH, ARGON2ID_ITERATIONS, ARGON2ID_MEMORY_SIZE, ARGON2ID_OUTPUT_BYTE_LENGTH, ARGON2ID_PARALLELISM, ARGON2ID_SALT_BYTE_LENGTH, CONTEXT_DATABASE, CONTEXT_DRAFT, CONTEXT_ENC_KEYSTORE, CONTEXT_RECOVERY, CONTEXT_TWO_KEYS, DB_LABEL, DB_VERSION, EmailHybridDecryptionError, EmailHybridEncryptionError, EmailPasswordOpenError, EmailPasswordProtectError, EmailSymmetricDecryptionError, EmailSymmetricEncryptionError, FailedToChangeMnemonicForKeyStore, FailedToCreateKeyStores, FailedToDecryptEmail, FailedToEncryptEmail, FailedToOpenEncryptionKeyStore, FailedToOpenRecoveryKeyStore, IV_LEN_BYTES, InvalidInputEmail, InvalidInputKeyStore, KYBER768_PUBLIC_KEY_LENGTH, KYBER768_SECRET_KEY_LENGTH, KYBER_SEED_LENGTH, KeystoreType, MAX_CACHE_SIZE, MAX_EMAIL_PER_BATCH, UTF8ToUint8, XWING_CIPHERTEXT_BYTE_LENGTH, XWING_PUBLIC_KEY_LENGTH, XWING_SECRET_KEY_LENGTH, XWING_SEED_BYTE_LENGTH, base64ToUint8Array, bytesToMnemonic, bytesToUuid, changeMnemonicForEncryptionKeystore, createEncryptionAndRecoveryKeystores, createPwdProtectedEmail, createPwdProtectedEmailAndSubject, decapsulateKyber, decryptEmail, decryptEmailAndSubject, decryptEmailAndSubjectHybrid, decryptEmailHybrid, decryptPwdProtectedEmail, decryptPwdProtectedEmailAndSubject, decryptSymmetrically, deriveDatabaseKey, deriveEmailDraftKey, deriveKeyFromMnemonic, deriveSecretKey, deriveSymmetricKeyFromContext, deriveSymmetricKeyFromTwoKeys, encapsulateKyber, encryptEmail, encryptEmailAndSubject,
|
|
12
|
+
export { AES_KEY_BYTE_LENGTH, ARGON2ID_ITERATIONS, ARGON2ID_MEMORY_SIZE, ARGON2ID_OUTPUT_BYTE_LENGTH, ARGON2ID_PARALLELISM, ARGON2ID_SALT_BYTE_LENGTH, CONTEXT_DATABASE, CONTEXT_DRAFT, CONTEXT_ENC_KEYSTORE, CONTEXT_RECOVERY, CONTEXT_TWO_KEYS, DB_LABEL, DB_VERSION, EmailHybridDecryptionError, EmailHybridEncryptionError, EmailPasswordOpenError, EmailPasswordProtectError, EmailSymmetricDecryptionError, EmailSymmetricEncryptionError, FailedToChangeMnemonicForKeyStore, FailedToCreateKeyStores, FailedToDecryptEmail, FailedToEncryptEmail, FailedToOpenEncryptionKeyStore, FailedToOpenRecoveryKeyStore, IV_LEN_BYTES, InvalidInputEmail, InvalidInputKeyStore, KYBER768_PUBLIC_KEY_LENGTH, KYBER768_SECRET_KEY_LENGTH, KYBER_SEED_LENGTH, KeystoreType, MAX_CACHE_SIZE, MAX_EMAIL_PER_BATCH, UTF8ToUint8, XWING_CIPHERTEXT_BYTE_LENGTH, XWING_PUBLIC_KEY_LENGTH, XWING_SECRET_KEY_LENGTH, XWING_SEED_BYTE_LENGTH, base64ToUint8Array, bytesToMnemonic, bytesToUuid, changeMnemonicForEncryptionKeystore, createEncryptionAndRecoveryKeystores, createPwdProtectedEmail, createPwdProtectedEmailAndSubject, decapsulateKyber, decryptEmail, decryptEmailAndSubject, decryptEmailAndSubjectHybrid, decryptEmailHybrid, decryptEmailPreviewHybrid, decryptPwdProtectedEmail, decryptPwdProtectedEmailAndSubject, decryptSymmetrically, deriveDatabaseKey, deriveEmailDraftKey, deriveKeyFromMnemonic, deriveSecretKey, deriveSymmetricKeyFromContext, deriveSymmetricKeyFromTwoKeys, encapsulateKyber, encryptEmail, encryptEmailAndSubject, encryptEmailAndSubjectHybridForMultipleRecipients, encryptEmailAndSubjectWithKey, encryptEmailHybridForMultipleRecipients, encryptEmailWithKey, encryptSymmetrically, genMnemonic, genSymmetricKey, generateEccKeys, generateEmailKeys, generateKyberKeys, generateSalt, generateUuid, getBytesFromData, getBytesFromDataArray, getKeyFromPassword, getKeyFromPasswordAndSalt, hashData, hashDataArray, hashDataArrayWithKey, hashDataWithKey, hexToUint8Array, mnemonicToBytes, openEncryptionKeystore, openRecoveryKeystore, uint8ArrayToBase64, uint8ArrayToHex, uint8ToUTF8, unwrapKey, uuidToBytes, wrapKey };
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
//#region src/asymmetric-crypto/ellipticCurve.d.ts
|
|
2
|
+
/**
|
|
3
|
+
* Derives secret key from the other user's public key and own private key
|
|
4
|
+
*
|
|
5
|
+
* @param aliceSecretKey - The secret key of the user deriving the shared secret key
|
|
6
|
+
* @param bobPublicKey - The public key of the other user
|
|
7
|
+
* @returns The derived secret key bits
|
|
8
|
+
*/
|
|
9
|
+
declare function deriveSecretKey(aliceSecretKey: Uint8Array, bobPublicKey: Uint8Array): Promise<Uint8Array>;
|
|
10
|
+
/**
|
|
11
|
+
* Generates elliptic curve key pair
|
|
12
|
+
*
|
|
13
|
+
* @returns The generated key pair
|
|
14
|
+
*/
|
|
15
|
+
declare function generateEccKeys(): Promise<{
|
|
16
|
+
secretKey: Uint8Array;
|
|
17
|
+
publicKey: Uint8Array;
|
|
18
|
+
}>;
|
|
19
|
+
//#endregion
|
|
20
|
+
export { deriveSecretKey, generateEccKeys };
|
|
21
|
+
//# sourceMappingURL=asymmetric-crypto.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"asymmetric-crypto.d.mts","names":[],"sources":["../../src/asymmetric-crypto/ellipticCurve.ts"],"mappings":";;AAcA;;;;;;iBAAsB,eAAA,CAAgB,cAAA,EAAgB,UAAA,EAAY,YAAA,EAAc,UAAA,GAAa,OAAA,CAAQ,UAAA;;;;;;iBAe/E,eAAA,CAAA,GAAmB,OAAA;EAAU,SAAA,EAAW,UAAA;EAAY,SAAA,EAAW,UAAA;AAAA"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
//#region src/asymmetric-crypto/ellipticCurve.d.ts
|
|
2
|
+
/**
|
|
3
|
+
* Derives secret key from the other user's public key and own private key
|
|
4
|
+
*
|
|
5
|
+
* @param aliceSecretKey - The secret key of the user deriving the shared secret key
|
|
6
|
+
* @param bobPublicKey - The public key of the other user
|
|
7
|
+
* @returns The derived secret key bits
|
|
8
|
+
*/
|
|
9
|
+
declare function deriveSecretKey(aliceSecretKey: Uint8Array, bobPublicKey: Uint8Array): Promise<Uint8Array>;
|
|
10
|
+
/**
|
|
11
|
+
* Generates elliptic curve key pair
|
|
12
|
+
*
|
|
13
|
+
* @returns The generated key pair
|
|
14
|
+
*/
|
|
15
|
+
declare function generateEccKeys(): Promise<{
|
|
16
|
+
secretKey: Uint8Array;
|
|
17
|
+
publicKey: Uint8Array;
|
|
18
|
+
}>;
|
|
19
|
+
//#endregion
|
|
20
|
+
export { deriveSecretKey, generateEccKeys };
|
|
21
|
+
//# sourceMappingURL=asymmetric-crypto.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"asymmetric-crypto.d.ts","names":[],"sources":["../../src/asymmetric-crypto/ellipticCurve.ts"],"mappings":";;AAcA;;;;;;iBAAsB,eAAA,CAAgB,cAAA,EAAgB,UAAA,EAAY,YAAA,EAAc,UAAA,GAAa,OAAA,CAAQ,UAAA;;;;;;iBAe/E,eAAA,CAAA,GAAmB,OAAA;EAAU,SAAA,EAAW,UAAA;EAAY,SAAA,EAAW,UAAA;AAAA"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
+
require("./chunk-DskHE4z1.js");
|
|
3
|
+
let _noble_curves_ed25519_js = require("@noble/curves/ed25519.js");
|
|
4
|
+
//#region src/asymmetric-crypto/ellipticCurve.native.ts
|
|
5
|
+
/**
|
|
6
|
+
* Derives secret key from the other user's public key and own private key
|
|
7
|
+
*
|
|
8
|
+
* @param aliceSecretKey - The secret key of the user deriving the shared secret key
|
|
9
|
+
* @param bobPublicKey - The public key of the other user
|
|
10
|
+
* @returns The derived secret key bits
|
|
11
|
+
*/
|
|
12
|
+
async function deriveSecretKey(aliceSecretKey, bobPublicKey) {
|
|
13
|
+
try {
|
|
14
|
+
return _noble_curves_ed25519_js.x25519.getSharedSecret(aliceSecretKey, bobPublicKey);
|
|
15
|
+
} catch (error) {
|
|
16
|
+
throw new Error("Failed to derive elliptic curve secret key", { cause: error });
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Generates elliptic curve key pair
|
|
21
|
+
*
|
|
22
|
+
* @returns The generated key pair
|
|
23
|
+
*/
|
|
24
|
+
async function generateEccKeys() {
|
|
25
|
+
return _noble_curves_ed25519_js.x25519.keygen();
|
|
26
|
+
}
|
|
27
|
+
//#endregion
|
|
28
|
+
exports.deriveSecretKey = deriveSecretKey;
|
|
29
|
+
exports.generateEccKeys = generateEccKeys;
|
|
30
|
+
|
|
31
|
+
//# sourceMappingURL=asymmetric-crypto.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"asymmetric-crypto.js","names":["x25519"],"sources":["../../src/asymmetric-crypto/ellipticCurve.native.ts"],"sourcesContent":["import { x25519 } from '@noble/curves/ed25519.js';\n\n/**\n * Derives secret key from the other user's public key and own private key\n *\n * @param aliceSecretKey - The secret key of the user deriving the shared secret key\n * @param bobPublicKey - The public key of the other user\n * @returns The derived secret key bits\n */\nexport async function deriveSecretKey(aliceSecretKey: Uint8Array, bobPublicKey: Uint8Array): Promise<Uint8Array> {\n try {\n return x25519.getSharedSecret(aliceSecretKey, bobPublicKey);\n } catch (error) {\n throw new Error('Failed to derive elliptic curve secret key', { cause: error });\n }\n}\n\n/**\n * Generates elliptic curve key pair\n *\n * @returns The generated key pair\n */\nexport async function generateEccKeys(): Promise<{ secretKey: Uint8Array; publicKey: Uint8Array }> {\n return x25519.keygen();\n}\n"],"mappings":";;;;;;;;;;;AASA,eAAsB,gBAAgB,gBAA4B,cAA+C;AAC/G,KAAI;AACF,SAAOA,yBAAAA,OAAO,gBAAgB,gBAAgB,aAAa;UACpD,OAAO;AACd,QAAM,IAAI,MAAM,8CAA8C,EAAE,OAAO,OAAO,CAAC;;;;;;;;AASnF,eAAsB,kBAA6E;AACjG,QAAOA,yBAAAA,OAAO,QAAQ"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { x25519 } from "@noble/curves/ed25519.js";
|
|
2
|
+
//#region src/asymmetric-crypto/ellipticCurve.native.ts
|
|
3
|
+
/**
|
|
4
|
+
* Derives secret key from the other user's public key and own private key
|
|
5
|
+
*
|
|
6
|
+
* @param aliceSecretKey - The secret key of the user deriving the shared secret key
|
|
7
|
+
* @param bobPublicKey - The public key of the other user
|
|
8
|
+
* @returns The derived secret key bits
|
|
9
|
+
*/
|
|
10
|
+
async function deriveSecretKey(aliceSecretKey, bobPublicKey) {
|
|
11
|
+
try {
|
|
12
|
+
return x25519.getSharedSecret(aliceSecretKey, bobPublicKey);
|
|
13
|
+
} catch (error) {
|
|
14
|
+
throw new Error("Failed to derive elliptic curve secret key", { cause: error });
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Generates elliptic curve key pair
|
|
19
|
+
*
|
|
20
|
+
* @returns The generated key pair
|
|
21
|
+
*/
|
|
22
|
+
async function generateEccKeys() {
|
|
23
|
+
return x25519.keygen();
|
|
24
|
+
}
|
|
25
|
+
//#endregion
|
|
26
|
+
export { deriveSecretKey, generateEccKeys };
|
|
27
|
+
|
|
28
|
+
//# sourceMappingURL=asymmetric-crypto.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"asymmetric-crypto.mjs","names":[],"sources":["../../src/asymmetric-crypto/ellipticCurve.native.ts"],"sourcesContent":["import { x25519 } from '@noble/curves/ed25519.js';\n\n/**\n * Derives secret key from the other user's public key and own private key\n *\n * @param aliceSecretKey - The secret key of the user deriving the shared secret key\n * @param bobPublicKey - The public key of the other user\n * @returns The derived secret key bits\n */\nexport async function deriveSecretKey(aliceSecretKey: Uint8Array, bobPublicKey: Uint8Array): Promise<Uint8Array> {\n try {\n return x25519.getSharedSecret(aliceSecretKey, bobPublicKey);\n } catch (error) {\n throw new Error('Failed to derive elliptic curve secret key', { cause: error });\n }\n}\n\n/**\n * Generates elliptic curve key pair\n *\n * @returns The generated key pair\n */\nexport async function generateEccKeys(): Promise<{ secretKey: Uint8Array; publicKey: Uint8Array }> {\n return x25519.keygen();\n}\n"],"mappings":";;;;;;;;;AASA,eAAsB,gBAAgB,gBAA4B,cAA+C;AAC/G,KAAI;AACF,SAAO,OAAO,gBAAgB,gBAAgB,aAAa;UACpD,OAAO;AACd,QAAM,IAAI,MAAM,8CAA8C,EAAE,OAAO,OAAO,CAAC;;;;;;;;AASnF,eAAsB,kBAA6E;AACjG,QAAO,OAAO,QAAQ"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
//#region \0rolldown/runtime.js
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __exportAll = (all, no_symbols) => {
|
|
4
|
+
let target = {};
|
|
5
|
+
for (var name in all) __defProp(target, name, {
|
|
6
|
+
get: all[name],
|
|
7
|
+
enumerable: true
|
|
8
|
+
});
|
|
9
|
+
if (!no_symbols) __defProp(target, Symbol.toStringTag, { value: "Module" });
|
|
10
|
+
return target;
|
|
11
|
+
};
|
|
12
|
+
//#endregion
|
|
13
|
+
export { __exportAll as t };
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
//#region \0rolldown/runtime.js
|
|
2
|
+
var __create = Object.create;
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __exportAll = (all, no_symbols) => {
|
|
9
|
+
let target = {};
|
|
10
|
+
for (var name in all) __defProp(target, name, {
|
|
11
|
+
get: all[name],
|
|
12
|
+
enumerable: true
|
|
13
|
+
});
|
|
14
|
+
if (!no_symbols) __defProp(target, Symbol.toStringTag, { value: "Module" });
|
|
15
|
+
return target;
|
|
16
|
+
};
|
|
17
|
+
var __copyProps = (to, from, except, desc) => {
|
|
18
|
+
if (from && typeof from === "object" || typeof from === "function") for (var keys = __getOwnPropNames(from), i = 0, n = keys.length, key; i < n; i++) {
|
|
19
|
+
key = keys[i];
|
|
20
|
+
if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
|
|
21
|
+
get: ((k) => from[k]).bind(null, key),
|
|
22
|
+
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
return to;
|
|
26
|
+
};
|
|
27
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
|
|
28
|
+
value: mod,
|
|
29
|
+
enumerable: true
|
|
30
|
+
}) : target, mod));
|
|
31
|
+
//#endregion
|
|
32
|
+
Object.defineProperty(exports, "__exportAll", {
|
|
33
|
+
enumerable: true,
|
|
34
|
+
get: function() {
|
|
35
|
+
return __exportAll;
|
|
36
|
+
}
|
|
37
|
+
});
|
|
38
|
+
Object.defineProperty(exports, "__toESM", {
|
|
39
|
+
enumerable: true,
|
|
40
|
+
get: function() {
|
|
41
|
+
return __toESM;
|
|
42
|
+
}
|
|
43
|
+
});
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
//#region src/constants.d.ts
|
|
2
|
+
declare const AES_KEY_BYTE_LENGTH = 32;
|
|
3
|
+
declare const IV_LEN_BYTES = 12;
|
|
4
|
+
declare const CONTEXT_ENC_KEYSTORE = "CRYPTO library 2025-07-30 16:18:03 key for opening encryption keys keystore";
|
|
5
|
+
declare const CONTEXT_RECOVERY = "CRYPTO library 2025-07-30 16:20:00 key for account recovery";
|
|
6
|
+
declare const CONTEXT_DATABASE = "CRYPTO library 2025-07-30 17:20:00 key for protecting current search indices";
|
|
7
|
+
declare const CONTEXT_DRAFT = "CRYPTO library 2026-04-23 10:56:00 key for protecting email drafts";
|
|
8
|
+
declare const CONTEXT_TWO_KEYS = "CRYPTO library 2025-08-27 17:08:00 derive one key from two keys";
|
|
9
|
+
declare const ARGON2ID_PARALLELISM = 3;
|
|
10
|
+
declare const ARGON2ID_ITERATIONS = 4;
|
|
11
|
+
declare const ARGON2ID_MEMORY_SIZE = 65536;
|
|
12
|
+
declare const ARGON2ID_SALT_BYTE_LENGTH = 16;
|
|
13
|
+
declare const ARGON2ID_OUTPUT_BYTE_LENGTH = 32;
|
|
14
|
+
declare const KYBER768_PUBLIC_KEY_LENGTH = 1184;
|
|
15
|
+
declare const KYBER768_SECRET_KEY_LENGTH = 2400;
|
|
16
|
+
declare const KYBER_SEED_LENGTH = 64;
|
|
17
|
+
declare const MAX_CACHE_SIZE = 600000000;
|
|
18
|
+
declare const MAX_EMAIL_PER_BATCH = 100;
|
|
19
|
+
declare const DB_LABEL = "email";
|
|
20
|
+
declare const DB_VERSION = 1;
|
|
21
|
+
declare const XWING_PUBLIC_KEY_LENGTH = 1216;
|
|
22
|
+
declare const XWING_SECRET_KEY_LENGTH = 32;
|
|
23
|
+
declare const XWING_SEED_BYTE_LENGTH = 32;
|
|
24
|
+
declare const XWING_CIPHERTEXT_BYTE_LENGTH = 1120;
|
|
25
|
+
//#endregion
|
|
26
|
+
export { AES_KEY_BYTE_LENGTH, ARGON2ID_ITERATIONS, ARGON2ID_MEMORY_SIZE, ARGON2ID_OUTPUT_BYTE_LENGTH, ARGON2ID_PARALLELISM, ARGON2ID_SALT_BYTE_LENGTH, CONTEXT_DATABASE, CONTEXT_DRAFT, CONTEXT_ENC_KEYSTORE, CONTEXT_RECOVERY, CONTEXT_TWO_KEYS, DB_LABEL, DB_VERSION, IV_LEN_BYTES, KYBER768_PUBLIC_KEY_LENGTH, KYBER768_SECRET_KEY_LENGTH, KYBER_SEED_LENGTH, MAX_CACHE_SIZE, MAX_EMAIL_PER_BATCH, XWING_CIPHERTEXT_BYTE_LENGTH, XWING_PUBLIC_KEY_LENGTH, XWING_SECRET_KEY_LENGTH, XWING_SEED_BYTE_LENGTH };
|
|
27
|
+
//# sourceMappingURL=constants.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.d.mts","names":[],"sources":["../../src/constants.ts"],"mappings":";cAAa,mBAAA;AAAA,cACA,YAAA;AAAA,cAEA,oBAAA;AAAA,cACA,gBAAA;AAAA,cACA,gBAAA;AAAA,cACA,aAAA;AAAA,cACA,gBAAA;AAAA,cAGA,oBAAA;AAAA,cACA,mBAAA;AAAA,cACA,oBAAA;AAAA,cACA,yBAAA;AAAA,cACA,2BAAA;AAAA,cAEA,0BAAA;AAAA,cACA,0BAAA;AAAA,cACA,iBAAA;AAAA,cAEA,cAAA;AAAA,cACA,mBAAA;AAAA,cACA,QAAA;AAAA,cACA,UAAA;AAAA,cAEA,uBAAA;AAAA,cACA,uBAAA;AAAA,cACA,sBAAA;AAAA,cACA,4BAAA"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
//#region src/constants.d.ts
|
|
2
|
+
declare const AES_KEY_BYTE_LENGTH = 32;
|
|
3
|
+
declare const IV_LEN_BYTES = 12;
|
|
4
|
+
declare const CONTEXT_ENC_KEYSTORE = "CRYPTO library 2025-07-30 16:18:03 key for opening encryption keys keystore";
|
|
5
|
+
declare const CONTEXT_RECOVERY = "CRYPTO library 2025-07-30 16:20:00 key for account recovery";
|
|
6
|
+
declare const CONTEXT_DATABASE = "CRYPTO library 2025-07-30 17:20:00 key for protecting current search indices";
|
|
7
|
+
declare const CONTEXT_DRAFT = "CRYPTO library 2026-04-23 10:56:00 key for protecting email drafts";
|
|
8
|
+
declare const CONTEXT_TWO_KEYS = "CRYPTO library 2025-08-27 17:08:00 derive one key from two keys";
|
|
9
|
+
declare const ARGON2ID_PARALLELISM = 3;
|
|
10
|
+
declare const ARGON2ID_ITERATIONS = 4;
|
|
11
|
+
declare const ARGON2ID_MEMORY_SIZE = 65536;
|
|
12
|
+
declare const ARGON2ID_SALT_BYTE_LENGTH = 16;
|
|
13
|
+
declare const ARGON2ID_OUTPUT_BYTE_LENGTH = 32;
|
|
14
|
+
declare const KYBER768_PUBLIC_KEY_LENGTH = 1184;
|
|
15
|
+
declare const KYBER768_SECRET_KEY_LENGTH = 2400;
|
|
16
|
+
declare const KYBER_SEED_LENGTH = 64;
|
|
17
|
+
declare const MAX_CACHE_SIZE = 600000000;
|
|
18
|
+
declare const MAX_EMAIL_PER_BATCH = 100;
|
|
19
|
+
declare const DB_LABEL = "email";
|
|
20
|
+
declare const DB_VERSION = 1;
|
|
21
|
+
declare const XWING_PUBLIC_KEY_LENGTH = 1216;
|
|
22
|
+
declare const XWING_SECRET_KEY_LENGTH = 32;
|
|
23
|
+
declare const XWING_SEED_BYTE_LENGTH = 32;
|
|
24
|
+
declare const XWING_CIPHERTEXT_BYTE_LENGTH = 1120;
|
|
25
|
+
//#endregion
|
|
26
|
+
export { AES_KEY_BYTE_LENGTH, ARGON2ID_ITERATIONS, ARGON2ID_MEMORY_SIZE, ARGON2ID_OUTPUT_BYTE_LENGTH, ARGON2ID_PARALLELISM, ARGON2ID_SALT_BYTE_LENGTH, CONTEXT_DATABASE, CONTEXT_DRAFT, CONTEXT_ENC_KEYSTORE, CONTEXT_RECOVERY, CONTEXT_TWO_KEYS, DB_LABEL, DB_VERSION, IV_LEN_BYTES, KYBER768_PUBLIC_KEY_LENGTH, KYBER768_SECRET_KEY_LENGTH, KYBER_SEED_LENGTH, MAX_CACHE_SIZE, MAX_EMAIL_PER_BATCH, XWING_CIPHERTEXT_BYTE_LENGTH, XWING_PUBLIC_KEY_LENGTH, XWING_SECRET_KEY_LENGTH, XWING_SEED_BYTE_LENGTH };
|
|
27
|
+
//# sourceMappingURL=constants.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.d.ts","names":[],"sources":["../../src/constants.ts"],"mappings":";cAAa,mBAAA;AAAA,cACA,YAAA;AAAA,cAEA,oBAAA;AAAA,cACA,gBAAA;AAAA,cACA,gBAAA;AAAA,cACA,aAAA;AAAA,cACA,gBAAA;AAAA,cAGA,oBAAA;AAAA,cACA,mBAAA;AAAA,cACA,oBAAA;AAAA,cACA,yBAAA;AAAA,cACA,2BAAA;AAAA,cAEA,0BAAA;AAAA,cACA,0BAAA;AAAA,cACA,iBAAA;AAAA,cAEA,cAAA;AAAA,cACA,mBAAA;AAAA,cACA,QAAA;AAAA,cACA,UAAA;AAAA,cAEA,uBAAA;AAAA,cACA,uBAAA;AAAA,cACA,sBAAA;AAAA,cACA,4BAAA"}
|