@lindorm/aes 0.1.3 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +20 -0
- package/dist/classes/AesKit.d.ts +2 -4
- package/dist/classes/AesKit.d.ts.map +1 -1
- package/dist/classes/AesKit.js +9 -17
- package/dist/classes/AesKit.js.map +1 -1
- package/dist/constants/version.d.ts +1 -1
- package/dist/constants/version.js +1 -1
- package/dist/index.d.ts +0 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +0 -1
- package/dist/index.js.map +1 -1
- package/dist/types/aes-cipher.d.ts +2 -2
- package/dist/types/aes-cipher.d.ts.map +1 -1
- package/dist/types/aes-data.d.ts +10 -10
- package/dist/types/aes-data.d.ts.map +1 -1
- package/dist/types/aes-encryption-data.d.ts +10 -6
- package/dist/types/aes-encryption-data.d.ts.map +1 -1
- package/dist/types/aes-kit.d.ts +4 -6
- package/dist/types/aes-kit.d.ts.map +1 -1
- package/dist/types/curve.d.ts +4 -0
- package/dist/types/curve.d.ts.map +1 -0
- package/dist/types/curve.js +3 -0
- package/dist/types/curve.js.map +1 -0
- package/dist/types/index.d.ts +1 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js +1 -0
- package/dist/types/index.js.map +1 -1
- package/dist/types/private/aes-key-derivation.d.ts +2 -0
- package/dist/types/private/aes-key-derivation.d.ts.map +1 -0
- package/dist/types/private/aes-key-derivation.js +3 -0
- package/dist/types/private/aes-key-derivation.js.map +1 -0
- package/dist/types/private/aes-string.d.ts +18 -0
- package/dist/types/private/aes-string.d.ts.map +1 -0
- package/dist/types/private/aes-string.js +3 -0
- package/dist/types/private/aes-string.js.map +1 -0
- package/dist/types/{auth-tag.d.ts → private/auth-tag.d.ts} +7 -9
- package/dist/types/private/auth-tag.d.ts.map +1 -0
- package/dist/types/{auth-tag.js.map → private/auth-tag.js.map} +1 -1
- package/dist/types/private/content-encryption-key.d.ts +28 -0
- package/dist/types/private/content-encryption-key.d.ts.map +1 -0
- package/dist/types/private/content-encryption-key.js +3 -0
- package/dist/types/private/content-encryption-key.js.map +1 -0
- package/dist/types/private/index.d.ts +5 -0
- package/dist/types/private/index.d.ts.map +1 -0
- package/dist/{enums → types/private}/index.js +4 -4
- package/dist/types/private/index.js.map +1 -0
- package/dist/types/types.d.ts +3 -9
- package/dist/types/types.d.ts.map +1 -1
- package/dist/utils/private/aes-data/auth-tag-hmac.d.ts +5 -0
- package/dist/utils/private/aes-data/auth-tag-hmac.d.ts.map +1 -0
- package/dist/utils/private/aes-data/auth-tag-hmac.js +37 -0
- package/dist/utils/private/aes-data/auth-tag-hmac.js.map +1 -0
- package/dist/utils/private/aes-data/auth-tag.d.ts +5 -0
- package/dist/utils/private/aes-data/auth-tag.d.ts.map +1 -0
- package/dist/utils/private/aes-data/auth-tag.js +52 -0
- package/dist/utils/private/aes-data/auth-tag.js.map +1 -0
- package/dist/utils/private/aes-data/get-initialisation-vector.d.ts +4 -0
- package/dist/utils/private/aes-data/get-initialisation-vector.d.ts.map +1 -0
- package/dist/utils/private/{get-initialisation-vector.js → aes-data/get-initialisation-vector.js} +7 -7
- package/dist/utils/private/aes-data/get-initialisation-vector.js.map +1 -0
- package/dist/utils/private/aes-data/split-content-encryption-key.d.ts +9 -0
- package/dist/utils/private/aes-data/split-content-encryption-key.d.ts.map +1 -0
- package/dist/utils/private/aes-data/split-content-encryption-key.js +31 -0
- package/dist/utils/private/aes-data/split-content-encryption-key.js.map +1 -0
- package/dist/utils/private/aes-data.d.ts.map +1 -1
- package/dist/utils/private/aes-data.js +31 -24
- package/dist/utils/private/aes-data.js.map +1 -1
- package/dist/utils/private/calculate/calculate-aes-encryption.d.ts +4 -0
- package/dist/utils/private/calculate/calculate-aes-encryption.d.ts.map +1 -0
- package/dist/utils/private/calculate/calculate-aes-encryption.js +24 -0
- package/dist/utils/private/calculate/calculate-aes-encryption.js.map +1 -0
- package/dist/utils/private/calculate/calculate-content-encryption-key-size.d.ts +4 -0
- package/dist/utils/private/calculate/calculate-content-encryption-key-size.d.ts.map +1 -0
- package/dist/utils/private/calculate/calculate-content-encryption-key-size.js +24 -0
- package/dist/utils/private/calculate/calculate-content-encryption-key-size.js.map +1 -0
- package/dist/utils/private/calculate/calculate-key-wrap-encryption.d.ts +5 -0
- package/dist/utils/private/calculate/calculate-key-wrap-encryption.d.ts.map +1 -0
- package/dist/utils/private/calculate/calculate-key-wrap-encryption.js +23 -0
- package/dist/utils/private/calculate/calculate-key-wrap-encryption.js.map +1 -0
- package/dist/utils/private/calculate/calculate-key-wrap-size.d.ts +4 -0
- package/dist/utils/private/calculate/calculate-key-wrap-size.d.ts.map +1 -0
- package/dist/utils/private/calculate/calculate-key-wrap-size.js +24 -0
- package/dist/utils/private/calculate/calculate-key-wrap-size.js.map +1 -0
- package/dist/utils/private/calculate/calculate-pbkdf-hash.d.ts +4 -0
- package/dist/utils/private/calculate/calculate-pbkdf-hash.d.ts.map +1 -0
- package/dist/utils/private/calculate/calculate-pbkdf-hash.js +18 -0
- package/dist/utils/private/calculate/calculate-pbkdf-hash.js.map +1 -0
- package/dist/utils/private/calculate/calculate-rsa-oaep-hash.d.ts +4 -0
- package/dist/utils/private/calculate/calculate-rsa-oaep-hash.d.ts.map +1 -0
- package/dist/utils/private/calculate/calculate-rsa-oaep-hash.js +22 -0
- package/dist/utils/private/calculate/calculate-rsa-oaep-hash.js.map +1 -0
- package/dist/utils/private/decode-aes-string.d.ts.map +1 -1
- package/dist/utils/private/decode-aes-string.js +13 -11
- package/dist/utils/private/decode-aes-string.js.map +1 -1
- package/dist/utils/private/diffie-hellman/diffie-hellman-key-wrap.d.ts +4 -0
- package/dist/utils/private/diffie-hellman/diffie-hellman-key-wrap.d.ts.map +1 -0
- package/dist/utils/private/diffie-hellman/diffie-hellman-key-wrap.js +50 -0
- package/dist/utils/private/diffie-hellman/diffie-hellman-key-wrap.js.map +1 -0
- package/dist/utils/private/diffie-hellman/diffie-hellman.d.ts +4 -0
- package/dist/utils/private/diffie-hellman/diffie-hellman.d.ts.map +1 -0
- package/dist/utils/private/diffie-hellman/diffie-hellman.js +40 -0
- package/dist/utils/private/diffie-hellman/diffie-hellman.js.map +1 -0
- package/dist/utils/private/diffie-hellman/shared-secret.d.ts +13 -0
- package/dist/utils/private/diffie-hellman/shared-secret.d.ts.map +1 -0
- package/dist/utils/private/diffie-hellman/shared-secret.js +68 -0
- package/dist/utils/private/diffie-hellman/shared-secret.js.map +1 -0
- package/dist/utils/private/encode-aes-string.d.ts +1 -1
- package/dist/utils/private/encode-aes-string.d.ts.map +1 -1
- package/dist/utils/private/encode-aes-string.js +12 -9
- package/dist/utils/private/encode-aes-string.js.map +1 -1
- package/dist/utils/private/get-key/get-decryption-key.d.ts +3 -0
- package/dist/utils/private/get-key/get-decryption-key.d.ts.map +1 -0
- package/dist/utils/private/get-key/get-decryption-key.js +26 -0
- package/dist/utils/private/get-key/get-decryption-key.js.map +1 -0
- package/dist/utils/private/get-key/get-encryption-key.d.ts +3 -0
- package/dist/utils/private/get-key/get-encryption-key.d.ts.map +1 -0
- package/dist/utils/private/get-key/get-encryption-key.js +26 -0
- package/dist/utils/private/get-key/get-encryption-key.js.map +1 -0
- package/dist/utils/private/key-derivation/hkdf.d.ts +14 -0
- package/dist/utils/private/key-derivation/hkdf.d.ts.map +1 -0
- package/dist/utils/private/key-derivation/hkdf.js +12 -0
- package/dist/utils/private/key-derivation/hkdf.js.map +1 -0
- package/dist/utils/private/key-derivation/pbkdf.d.ts +17 -0
- package/dist/utils/private/key-derivation/pbkdf.d.ts.map +1 -0
- package/dist/utils/private/key-derivation/pbkdf.js +13 -0
- package/dist/utils/private/key-derivation/pbkdf.js.map +1 -0
- package/dist/utils/private/key-types/get-ec-keys.d.ts +4 -0
- package/dist/utils/private/key-types/get-ec-keys.d.ts.map +1 -0
- package/dist/utils/private/key-types/get-ec-keys.js +37 -0
- package/dist/utils/private/key-types/get-ec-keys.js.map +1 -0
- package/dist/utils/private/key-types/get-oct-keys.d.ts +4 -0
- package/dist/utils/private/key-types/get-oct-keys.d.ts.map +1 -0
- package/dist/utils/private/key-types/get-oct-keys.js +46 -0
- package/dist/utils/private/key-types/get-oct-keys.js.map +1 -0
- package/dist/utils/private/key-types/get-okp-keys.d.ts +4 -0
- package/dist/utils/private/key-types/get-okp-keys.d.ts.map +1 -0
- package/dist/utils/private/key-types/get-okp-keys.js +28 -0
- package/dist/utils/private/key-types/get-okp-keys.js.map +1 -0
- package/dist/utils/private/key-types/get-rsa-keys.d.ts +4 -0
- package/dist/utils/private/key-types/get-rsa-keys.d.ts.map +1 -0
- package/dist/utils/private/key-types/get-rsa-keys.js +58 -0
- package/dist/utils/private/key-types/get-rsa-keys.js.map +1 -0
- package/dist/utils/private/key-wrap/key-wrap.d.ts +16 -0
- package/dist/utils/private/key-wrap/key-wrap.d.ts.map +1 -0
- package/dist/utils/private/key-wrap/key-wrap.js +66 -0
- package/dist/utils/private/key-wrap/key-wrap.js.map +1 -0
- package/dist/utils/private/oct/get-oct-dir-keys.d.ts +4 -0
- package/dist/utils/private/oct/get-oct-dir-keys.d.ts.map +1 -0
- package/dist/utils/private/oct/get-oct-dir-keys.js +35 -0
- package/dist/utils/private/oct/get-oct-dir-keys.js.map +1 -0
- package/dist/utils/private/oct/get-oct-key-wrap-keys.d.ts +4 -0
- package/dist/utils/private/oct/get-oct-key-wrap-keys.d.ts.map +1 -0
- package/dist/utils/private/oct/get-oct-key-wrap-keys.js +55 -0
- package/dist/utils/private/oct/get-oct-key-wrap-keys.js.map +1 -0
- package/dist/utils/private/oct/get-oct-pbkdf-key-wrap-keys.d.ts +4 -0
- package/dist/utils/private/oct/get-oct-pbkdf-key-wrap-keys.d.ts.map +1 -0
- package/dist/utils/private/oct/get-oct-pbkdf-key-wrap-keys.js +60 -0
- package/dist/utils/private/oct/get-oct-pbkdf-key-wrap-keys.js.map +1 -0
- package/package.json +8 -5
- package/dist/enums/AesEncryption.d.ts +0 -9
- package/dist/enums/AesEncryption.d.ts.map +0 -1
- package/dist/enums/AesEncryption.js +0 -13
- package/dist/enums/AesEncryption.js.map +0 -1
- package/dist/enums/AesEncryptionKeyAlgorithm.d.ts +0 -9
- package/dist/enums/AesEncryptionKeyAlgorithm.d.ts.map +0 -1
- package/dist/enums/AesEncryptionKeyAlgorithm.js +0 -13
- package/dist/enums/AesEncryptionKeyAlgorithm.js.map +0 -1
- package/dist/enums/AesFormat.d.ts +0 -6
- package/dist/enums/AesFormat.d.ts.map +0 -1
- package/dist/enums/AesFormat.js +0 -10
- package/dist/enums/AesFormat.js.map +0 -1
- package/dist/enums/AesIntegrityHash.d.ts +0 -6
- package/dist/enums/AesIntegrityHash.d.ts.map +0 -1
- package/dist/enums/AesIntegrityHash.js +0 -10
- package/dist/enums/AesIntegrityHash.js.map +0 -1
- package/dist/enums/index.d.ts +0 -5
- package/dist/enums/index.d.ts.map +0 -1
- package/dist/enums/index.js.map +0 -1
- package/dist/types/auth-tag.d.ts.map +0 -1
- package/dist/utils/private/auth-tag-hmac.d.ts +0 -5
- package/dist/utils/private/auth-tag-hmac.d.ts.map +0 -1
- package/dist/utils/private/auth-tag-hmac.js +0 -25
- package/dist/utils/private/auth-tag-hmac.js.map +0 -1
- package/dist/utils/private/auth-tag.d.ts +0 -5
- package/dist/utils/private/auth-tag.d.ts.map +0 -1
- package/dist/utils/private/auth-tag.js +0 -58
- package/dist/utils/private/auth-tag.js.map +0 -1
- package/dist/utils/private/ec/get-ec-keys.d.ts +0 -21
- package/dist/utils/private/ec/get-ec-keys.d.ts.map +0 -1
- package/dist/utils/private/ec/get-ec-keys.js +0 -55
- package/dist/utils/private/ec/get-ec-keys.js.map +0 -1
- package/dist/utils/private/ec/get-key-curve.d.ts +0 -4
- package/dist/utils/private/ec/get-key-curve.d.ts.map +0 -1
- package/dist/utils/private/ec/get-key-curve.js +0 -37
- package/dist/utils/private/ec/get-key-curve.js.map +0 -1
- package/dist/utils/private/get-decryption-key.d.ts +0 -13
- package/dist/utils/private/get-decryption-key.d.ts.map +0 -1
- package/dist/utils/private/get-decryption-key.js +0 -33
- package/dist/utils/private/get-decryption-key.js.map +0 -1
- package/dist/utils/private/get-encryption-keys.d.ts +0 -16
- package/dist/utils/private/get-encryption-keys.d.ts.map +0 -1
- package/dist/utils/private/get-encryption-keys.js +0 -23
- package/dist/utils/private/get-encryption-keys.js.map +0 -1
- package/dist/utils/private/get-initialisation-vector.d.ts +0 -4
- package/dist/utils/private/get-initialisation-vector.d.ts.map +0 -1
- package/dist/utils/private/get-initialisation-vector.js.map +0 -1
- package/dist/utils/private/oct/get-oct-keys.d.ts +0 -14
- package/dist/utils/private/oct/get-oct-keys.d.ts.map +0 -1
- package/dist/utils/private/oct/get-oct-keys.js +0 -24
- package/dist/utils/private/oct/get-oct-keys.js.map +0 -1
- package/dist/utils/private/rsa/generate-encryption-key.d.ts +0 -4
- package/dist/utils/private/rsa/generate-encryption-key.d.ts.map +0 -1
- package/dist/utils/private/rsa/generate-encryption-key.js +0 -8
- package/dist/utils/private/rsa/generate-encryption-key.js.map +0 -1
- package/dist/utils/private/rsa/get-oaep-hash.d.ts +0 -3
- package/dist/utils/private/rsa/get-oaep-hash.d.ts.map +0 -1
- package/dist/utils/private/rsa/get-oaep-hash.js +0 -22
- package/dist/utils/private/rsa/get-oaep-hash.js.map +0 -1
- package/dist/utils/private/rsa/get-rsa-keys.d.ts +0 -21
- package/dist/utils/private/rsa/get-rsa-keys.d.ts.map +0 -1
- package/dist/utils/private/rsa/get-rsa-keys.js +0 -22
- package/dist/utils/private/rsa/get-rsa-keys.js.map +0 -1
- package/dist/utils/private/rsa/public-encryption-key.d.ts +0 -17
- package/dist/utils/private/rsa/public-encryption-key.d.ts.map +0 -1
- package/dist/utils/private/rsa/public-encryption-key.js +0 -56
- package/dist/utils/private/rsa/public-encryption-key.js.map +0 -1
- package/dist/utils/private/secret/calculate-secret-length.d.ts +0 -3
- package/dist/utils/private/secret/calculate-secret-length.d.ts.map +0 -1
- package/dist/utils/private/secret/calculate-secret-length.js +0 -21
- package/dist/utils/private/secret/calculate-secret-length.js.map +0 -1
- package/dist/utils/private/secret/create-key-derivation.d.ts +0 -10
- package/dist/utils/private/secret/create-key-derivation.d.ts.map +0 -1
- package/dist/utils/private/secret/create-key-derivation.js +0 -35
- package/dist/utils/private/secret/create-key-derivation.js.map +0 -1
- /package/dist/types/{auth-tag.js → private/auth-tag.js} +0 -0
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,26 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
# [0.2.0](https://github.com/lindorm-io/monorepo/compare/@lindorm/aes@0.1.3...@lindorm/aes@0.2.0) (2024-05-19)
|
|
7
|
+
|
|
8
|
+
### Bug Fixes
|
|
9
|
+
|
|
10
|
+
- align curves to kryptos ([b9288a5](https://github.com/lindorm-io/monorepo/commit/b9288a54b6dbb520328aff77cd3c8d2818183ac5))
|
|
11
|
+
- align with kryptos changes ([344c4e2](https://github.com/lindorm-io/monorepo/commit/344c4e2fad07e66c91f7e0820bfc929c1f8ffcab))
|
|
12
|
+
- improve kryptos generate method ([9e7098d](https://github.com/lindorm-io/monorepo/commit/9e7098d4b219b11140e28e554ffd573204772249))
|
|
13
|
+
- remove private key encryption ([be54916](https://github.com/lindorm-io/monorepo/commit/be54916a20de667e96826d6be0eb8d0fda67176e))
|
|
14
|
+
- remove unnecessary code ([e44a056](https://github.com/lindorm-io/monorepo/commit/e44a0565e577fc23a827c9283839684c1e40d287))
|
|
15
|
+
- rename interfaces ([3b1f457](https://github.com/lindorm-io/monorepo/commit/3b1f45736f88b8c2d4481cbeca6da87bf8443bde))
|
|
16
|
+
- simplify interfaces with kryptos metadata ([c4075d2](https://github.com/lindorm-io/monorepo/commit/c4075d2e133c2fe0a1fafa548da68db34b3407c6))
|
|
17
|
+
- use pbkdf2 key derivation for oct ([d068947](https://github.com/lindorm-io/monorepo/commit/d068947f70712fb71f57d5ec6947062219200155))
|
|
18
|
+
|
|
19
|
+
### Features
|
|
20
|
+
|
|
21
|
+
- add okp encryption and clean up ec encryption ([4d3cbab](https://github.com/lindorm-io/monorepo/commit/4d3cbabe1968ab7f8a9ecc8e226ce91403342f0f))
|
|
22
|
+
- implement missing encryption types ([c94b538](https://github.com/lindorm-io/monorepo/commit/c94b53823fcb7a24823b25535b83799f2bbdd250))
|
|
23
|
+
- refine and improve oct encryption ([99db5a2](https://github.com/lindorm-io/monorepo/commit/99db5a290b7a081ab80c3811bcc04021e1ac9b4e))
|
|
24
|
+
- use pbkdf with short oct keys ([d1d8e5e](https://github.com/lindorm-io/monorepo/commit/d1d8e5ea6dcac24b1b1402e841777a0affefcfff))
|
|
25
|
+
|
|
6
26
|
## [0.1.3](https://github.com/lindorm-io/monorepo/compare/@lindorm/aes@0.1.2...@lindorm/aes@0.1.3) (2024-05-12)
|
|
7
27
|
|
|
8
28
|
**Note:** Version bump only for package @lindorm/aes
|
package/dist/classes/AesKit.d.ts
CHANGED
|
@@ -1,14 +1,12 @@
|
|
|
1
1
|
import { AesEncryptionData, AesKitOptions, DecryptAesDataOptions } from "../types";
|
|
2
2
|
export declare class AesKit {
|
|
3
3
|
private readonly encryption;
|
|
4
|
-
private readonly encryptionKeyAlgorithm;
|
|
5
4
|
private readonly format;
|
|
6
|
-
private readonly integrityHash;
|
|
7
5
|
private readonly kryptos;
|
|
8
6
|
constructor(options: AesKitOptions);
|
|
9
|
-
encrypt(
|
|
7
|
+
encrypt(data: string, mode?: "cipher"): string;
|
|
10
8
|
encrypt(data: string, mode: "object"): AesEncryptionData;
|
|
11
|
-
decrypt(
|
|
9
|
+
decrypt(data: string): string;
|
|
12
10
|
decrypt(data: Omit<DecryptAesDataOptions, "kryptos">): string;
|
|
13
11
|
verify(data: string, cipher: string): boolean;
|
|
14
12
|
assert(data: string, cipher: string): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AesKit.d.ts","sourceRoot":"","sources":["../../src/classes/AesKit.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"AesKit.d.ts","sourceRoot":"","sources":["../../src/classes/AesKit.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,qBAAqB,EAAE,MAAM,UAAU,CAAC;AASnF,qBAAa,MAAM;IACjB,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAoB;IAC/C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAe;IACtC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAW;gBAEhB,OAAO,EAAE,aAAa;IAMlC,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,QAAQ,GAAG,MAAM;IAC9C,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,GAAG,iBAAiB;IA2BxD,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAC7B,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,qBAAqB,EAAE,SAAS,CAAC,GAAG,MAAM;IAmB7D,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO;IAQ7C,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;CAOlD"}
|
package/dist/classes/AesKit.js
CHANGED
|
@@ -7,51 +7,43 @@ const aes_cipher_1 = require("../utils/private/aes-cipher");
|
|
|
7
7
|
const aes_data_1 = require("../utils/private/aes-data");
|
|
8
8
|
class AesKit {
|
|
9
9
|
encryption;
|
|
10
|
-
encryptionKeyAlgorithm;
|
|
11
10
|
format;
|
|
12
|
-
integrityHash;
|
|
13
11
|
kryptos;
|
|
14
12
|
constructor(options) {
|
|
15
|
-
this.encryption = options.encryption || "
|
|
16
|
-
this.encryptionKeyAlgorithm = options.encryptionKeyAlgorithm || "RSA-OAEP-256";
|
|
13
|
+
this.encryption = options.encryption || "A256GCM";
|
|
17
14
|
this.format = options.format || "base64url";
|
|
18
|
-
this.integrityHash = options.integrityHash || "sha256";
|
|
19
15
|
this.kryptos = options.kryptos;
|
|
20
16
|
}
|
|
21
|
-
encrypt(
|
|
17
|
+
encrypt(data, mode = "cipher") {
|
|
22
18
|
switch (mode) {
|
|
23
19
|
case "cipher":
|
|
24
20
|
return (0, aes_cipher_1._encryptAesCipher)({
|
|
25
|
-
data:
|
|
21
|
+
data: data,
|
|
26
22
|
encryption: this.encryption,
|
|
27
|
-
encryptionKeyAlgorithm: this.encryptionKeyAlgorithm,
|
|
28
23
|
format: this.format,
|
|
29
|
-
integrityHash: this.integrityHash,
|
|
30
24
|
kryptos: this.kryptos,
|
|
31
25
|
});
|
|
32
26
|
case "object":
|
|
33
27
|
return (0, aes_data_1._encryptAesData)({
|
|
34
|
-
data:
|
|
28
|
+
data: data,
|
|
35
29
|
encryption: this.encryption,
|
|
36
|
-
encryptionKeyAlgorithm: this.encryptionKeyAlgorithm,
|
|
37
30
|
format: this.format,
|
|
38
|
-
integrityHash: this.integrityHash,
|
|
39
31
|
kryptos: this.kryptos,
|
|
40
32
|
});
|
|
41
33
|
default:
|
|
42
34
|
throw new errors_1.AesError("Invalid encryption mode");
|
|
43
35
|
}
|
|
44
36
|
}
|
|
45
|
-
decrypt(
|
|
46
|
-
if ((0, is_1.isString)(
|
|
37
|
+
decrypt(data) {
|
|
38
|
+
if ((0, is_1.isString)(data)) {
|
|
47
39
|
return (0, aes_cipher_1._decryptAesCipher)({
|
|
48
|
-
cipher:
|
|
40
|
+
cipher: data,
|
|
49
41
|
kryptos: this.kryptos,
|
|
50
42
|
});
|
|
51
43
|
}
|
|
52
|
-
if ((0, is_1.isObject)(
|
|
44
|
+
if ((0, is_1.isObject)(data)) {
|
|
53
45
|
return (0, aes_data_1._decryptAesData)({
|
|
54
|
-
...
|
|
46
|
+
...data,
|
|
55
47
|
kryptos: this.kryptos,
|
|
56
48
|
});
|
|
57
49
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AesKit.js","sourceRoot":"","sources":["../../src/classes/AesKit.ts"],"names":[],"mappings":";;;AAAA,oCAAiD;
|
|
1
|
+
{"version":3,"file":"AesKit.js","sourceRoot":"","sources":["../../src/classes/AesKit.ts"],"names":[],"mappings":";;;AAAA,oCAAiD;AAGjD,sCAAqC;AAErC,4DAKqC;AACrC,wDAA6E;AAE7E,MAAa,MAAM;IACA,UAAU,CAAoB;IAC9B,MAAM,CAAe;IACrB,OAAO,CAAW;IAEnC,YAAmB,OAAsB;QACvC,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,SAAS,CAAC;QAClD,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,WAAW,CAAC;QAC5C,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IACjC,CAAC;IAIM,OAAO,CACZ,IAAY,EACZ,OAA4B,QAAQ;QAEpC,QAAQ,IAAI,EAAE,CAAC;YACb,KAAK,QAAQ;gBACX,OAAO,IAAA,8BAAiB,EAAC;oBACvB,IAAI,EAAE,IAAI;oBACV,UAAU,EAAE,IAAI,CAAC,UAAU;oBAC3B,MAAM,EAAE,IAAI,CAAC,MAAM;oBACnB,OAAO,EAAE,IAAI,CAAC,OAAO;iBACtB,CAAC,CAAC;YAEL,KAAK,QAAQ;gBACX,OAAO,IAAA,0BAAe,EAAC;oBACrB,IAAI,EAAE,IAAI;oBACV,UAAU,EAAE,IAAI,CAAC,UAAU;oBAC3B,MAAM,EAAE,IAAI,CAAC,MAAM;oBACnB,OAAO,EAAE,IAAI,CAAC,OAAO;iBACtB,CAAC,CAAC;YAEL;gBACE,MAAM,IAAI,iBAAQ,CAAC,yBAAyB,CAAC,CAAC;QAClD,CAAC;IACH,CAAC;IAIM,OAAO,CAAC,IAAqD;QAClE,IAAI,IAAA,aAAQ,EAAC,IAAI,CAAC,EAAE,CAAC;YACnB,OAAO,IAAA,8BAAiB,EAAC;gBACvB,MAAM,EAAE,IAAI;gBACZ,OAAO,EAAE,IAAI,CAAC,OAAO;aACtB,CAAC,CAAC;QACL,CAAC;QAED,IAAI,IAAA,aAAQ,EAAC,IAAI,CAAC,EAAE,CAAC;YACnB,OAAO,IAAA,0BAAe,EAAC;gBACrB,GAAG,IAAI;gBACP,OAAO,EAAE,IAAI,CAAC,OAAO;aACtB,CAAC,CAAC;QACL,CAAC;QAED,MAAM,IAAI,iBAAQ,CAAC,yBAAyB,CAAC,CAAC;IAChD,CAAC;IAEM,MAAM,CAAC,IAAY,EAAE,MAAc;QACxC,OAAO,IAAA,6BAAgB,EAAC;YACtB,MAAM;YACN,IAAI;YACJ,OAAO,EAAE,IAAI,CAAC,OAAO;SACtB,CAAC,CAAC;IACL,CAAC;IAEM,MAAM,CAAC,IAAY,EAAE,MAAc;QACxC,OAAO,IAAA,6BAAgB,EAAC;YACtB,MAAM;YACN,IAAI;YACJ,OAAO,EAAE,IAAI,CAAC,OAAO;SACtB,CAAC,CAAC;IACL,CAAC;CACF;AA1ED,wBA0EC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const LATEST_AES_VERSION =
|
|
1
|
+
export declare const LATEST_AES_VERSION = 7;
|
|
2
2
|
//# sourceMappingURL=version.d.ts.map
|
package/dist/index.d.ts
CHANGED
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -15,7 +15,6 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
17
|
__exportStar(require("./classes"), exports);
|
|
18
|
-
__exportStar(require("./enums"), exports);
|
|
19
18
|
__exportStar(require("./errors"), exports);
|
|
20
19
|
__exportStar(require("./types"), exports);
|
|
21
20
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,4CAA0B;AAC1B,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,4CAA0B;AAC1B,2CAAyB;AACzB,0CAAwB"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { IKryptos } from "@lindorm/kryptos";
|
|
2
2
|
import { EncryptAesDataOptions } from "./aes-data";
|
|
3
3
|
export type EncryptAesCipherOptions = EncryptAesDataOptions;
|
|
4
4
|
export type DecryptAesCipherOptions = {
|
|
5
5
|
cipher: string;
|
|
6
|
-
kryptos:
|
|
6
|
+
kryptos: IKryptos;
|
|
7
7
|
};
|
|
8
8
|
export type VerifyAesCipherOptions = DecryptAesCipherOptions & {
|
|
9
9
|
data: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aes-cipher.d.ts","sourceRoot":"","sources":["../../src/types/aes-cipher.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"aes-cipher.d.ts","sourceRoot":"","sources":["../../src/types/aes-cipher.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAEnD,MAAM,MAAM,uBAAuB,GAAG,qBAAqB,CAAC;AAE5D,MAAM,MAAM,uBAAuB,GAAG;IACpC,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,QAAQ,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG,uBAAuB,GAAG;IAC7D,IAAI,EAAE,MAAM,CAAC;CACd,CAAC"}
|
package/dist/types/aes-data.d.ts
CHANGED
|
@@ -1,22 +1,22 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
|
-
import {
|
|
3
|
-
import { BufferFormat
|
|
2
|
+
import { IKryptos, KryptosEncryption } from "@lindorm/kryptos";
|
|
3
|
+
import { BufferFormat } from "@lindorm/types";
|
|
4
|
+
import { PublicEncryptionJwk } from "./types";
|
|
4
5
|
export type EncryptAesDataOptions = {
|
|
5
6
|
data: Buffer | string;
|
|
6
|
-
encryption?:
|
|
7
|
-
encryptionKeyAlgorithm?: EncryptionKeyAlgorithm;
|
|
7
|
+
encryption?: KryptosEncryption;
|
|
8
8
|
format?: BufferFormat;
|
|
9
|
-
|
|
10
|
-
kryptos: Kryptos;
|
|
9
|
+
kryptos: IKryptos;
|
|
11
10
|
};
|
|
12
11
|
export type DecryptAesDataOptions = {
|
|
13
12
|
authTag?: Buffer;
|
|
14
13
|
content: Buffer;
|
|
15
|
-
encryption:
|
|
16
|
-
|
|
14
|
+
encryption: KryptosEncryption;
|
|
15
|
+
hkdfSalt?: Buffer;
|
|
17
16
|
initialisationVector: Buffer;
|
|
18
|
-
|
|
19
|
-
|
|
17
|
+
kryptos: IKryptos;
|
|
18
|
+
pbkdfIterations?: number;
|
|
19
|
+
pbkdfSalt?: Buffer;
|
|
20
20
|
publicEncryptionJwk?: PublicEncryptionJwk;
|
|
21
21
|
publicEncryptionKey?: Buffer;
|
|
22
22
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aes-data.d.ts","sourceRoot":"","sources":["../../src/types/aes-data.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"aes-data.d.ts","sourceRoot":"","sources":["../../src/types/aes-data.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAE9C,MAAM,MAAM,qBAAqB,GAAG;IAClC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,iBAAiB,CAAC;IAC/B,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,OAAO,EAAE,QAAQ,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,iBAAiB,CAAC;IAC9B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,OAAO,EAAE,QAAQ,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;IAC1C,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B,CAAC"}
|
|
@@ -1,14 +1,18 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
|
-
import {
|
|
2
|
+
import { KryptosAlgorithm, KryptosEncryption } from "@lindorm/kryptos";
|
|
3
|
+
import { BufferFormat } from "@lindorm/types";
|
|
4
|
+
import { PublicEncryptionJwk } from "./types";
|
|
3
5
|
export type AesEncryptionData = {
|
|
4
|
-
|
|
6
|
+
algorithm: KryptosAlgorithm;
|
|
7
|
+
authTag: Buffer;
|
|
5
8
|
content: Buffer;
|
|
6
|
-
encryption:
|
|
7
|
-
encryptionKeyAlgorithm: EncryptionKeyAlgorithm | undefined;
|
|
9
|
+
encryption: KryptosEncryption;
|
|
8
10
|
format: BufferFormat;
|
|
11
|
+
hkdfSalt: Buffer | undefined;
|
|
9
12
|
initialisationVector: Buffer;
|
|
10
|
-
|
|
11
|
-
|
|
13
|
+
keyId: Buffer;
|
|
14
|
+
pbkdfIterations: number | undefined;
|
|
15
|
+
pbkdfSalt: Buffer | undefined;
|
|
12
16
|
publicEncryptionJwk: PublicEncryptionJwk | undefined;
|
|
13
17
|
publicEncryptionKey: Buffer | undefined;
|
|
14
18
|
version: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aes-encryption-data.d.ts","sourceRoot":"","sources":["../../src/types/aes-encryption-data.ts"],"names":[],"mappings":";AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"aes-encryption-data.d.ts","sourceRoot":"","sources":["../../src/types/aes-encryption-data.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACvE,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAE9C,MAAM,MAAM,iBAAiB,GAAG;IAC9B,SAAS,EAAE,gBAAgB,CAAC;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,iBAAiB,CAAC;IAC9B,MAAM,EAAE,YAAY,CAAC;IACrB,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7B,oBAAoB,EAAE,MAAM,CAAC;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,eAAe,EAAE,MAAM,GAAG,SAAS,CAAC;IACpC,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,mBAAmB,EAAE,mBAAmB,GAAG,SAAS,CAAC;IACrD,mBAAmB,EAAE,MAAM,GAAG,SAAS,CAAC;IACxC,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC"}
|
package/dist/types/aes-kit.d.ts
CHANGED
|
@@ -1,10 +1,8 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { BufferFormat
|
|
1
|
+
import { IKryptos, KryptosEncryption } from "@lindorm/kryptos";
|
|
2
|
+
import { BufferFormat } from "@lindorm/types";
|
|
3
3
|
export type AesKitOptions = {
|
|
4
|
-
encryption?:
|
|
5
|
-
encryptionKeyAlgorithm?: EncryptionKeyAlgorithm;
|
|
4
|
+
encryption?: KryptosEncryption;
|
|
6
5
|
format?: BufferFormat;
|
|
7
|
-
|
|
8
|
-
kryptos: Kryptos;
|
|
6
|
+
kryptos: IKryptos;
|
|
9
7
|
};
|
|
10
8
|
//# sourceMappingURL=aes-kit.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aes-kit.d.ts","sourceRoot":"","sources":["../../src/types/aes-kit.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"aes-kit.d.ts","sourceRoot":"","sources":["../../src/types/aes-kit.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,MAAM,MAAM,aAAa,GAAG;IAC1B,UAAU,CAAC,EAAE,iBAAiB,CAAC;IAC/B,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,OAAO,EAAE,QAAQ,CAAC;CACnB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"curve.d.ts","sourceRoot":"","sources":["../../src/types/curve.ts"],"names":[],"mappings":"AAAA,KAAK,aAAa,GAAG,WAAW,GAAG,WAAW,GAAG,WAAW,CAAC;AAE7D,MAAM,MAAM,QAAQ,GAAG,aAAa,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"curve.js","sourceRoot":"","sources":["../../src/types/curve.ts"],"names":[],"mappings":""}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,uBAAuB,CAAC;AACtC,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,uBAAuB,CAAC;AACtC,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC"}
|
package/dist/types/index.js
CHANGED
|
@@ -18,5 +18,6 @@ __exportStar(require("./aes-cipher"), exports);
|
|
|
18
18
|
__exportStar(require("./aes-data"), exports);
|
|
19
19
|
__exportStar(require("./aes-encryption-data"), exports);
|
|
20
20
|
__exportStar(require("./aes-kit"), exports);
|
|
21
|
+
__exportStar(require("./curve"), exports);
|
|
21
22
|
__exportStar(require("./types"), exports);
|
|
22
23
|
//# sourceMappingURL=index.js.map
|
package/dist/types/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+CAA6B;AAC7B,6CAA2B;AAC3B,wDAAsC;AACtC,4CAA0B;AAC1B,0CAAwB"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+CAA6B;AAC7B,6CAA2B;AAC3B,wDAAsC;AACtC,4CAA0B;AAC1B,0CAAwB;AACxB,0CAAwB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"aes-key-derivation.d.ts","sourceRoot":"","sources":["../../../src/types/private/aes-key-derivation.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,gBAAgB,GAAG,KAAK,GAAG,MAAM,GAAG,QAAQ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"aes-key-derivation.js","sourceRoot":"","sources":["../../../src/types/private/aes-key-derivation.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { KryptosAlgorithm, KryptosCurve, KryptosType } from "@lindorm/kryptos";
|
|
2
|
+
export type AesStringValues = {
|
|
3
|
+
v: string;
|
|
4
|
+
f: string;
|
|
5
|
+
alg: KryptosAlgorithm;
|
|
6
|
+
crv: KryptosCurve | undefined;
|
|
7
|
+
hks: string | undefined;
|
|
8
|
+
iv: string;
|
|
9
|
+
kid: string;
|
|
10
|
+
kty: KryptosType | undefined;
|
|
11
|
+
p2c: string | undefined;
|
|
12
|
+
p2s: string | undefined;
|
|
13
|
+
pek: string | undefined;
|
|
14
|
+
tag: string;
|
|
15
|
+
x: string | undefined;
|
|
16
|
+
y: string | undefined;
|
|
17
|
+
};
|
|
18
|
+
//# sourceMappingURL=aes-string.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"aes-string.d.ts","sourceRoot":"","sources":["../../../src/types/private/aes-string.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/E,MAAM,MAAM,eAAe,GAAG;IAC5B,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,GAAG,EAAE,gBAAgB,CAAC;IACtB,GAAG,EAAE,YAAY,GAAG,SAAS,CAAC;IAC9B,GAAG,EAAE,MAAM,GAAG,SAAS,CAAC;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,WAAW,GAAG,SAAS,CAAC;IAC7B,GAAG,EAAE,MAAM,GAAG,SAAS,CAAC;IACxB,GAAG,EAAE,MAAM,GAAG,SAAS,CAAC;IACxB,GAAG,EAAE,MAAM,GAAG,SAAS,CAAC;IACxB,GAAG,EAAE,MAAM,CAAC;IACZ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACtB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACvB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"aes-string.js","sourceRoot":"","sources":["../../../src/types/private/aes-string.ts"],"names":[],"mappings":""}
|
|
@@ -1,29 +1,27 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
2
|
/// <reference types="node" />
|
|
3
|
+
import { KryptosEncryption } from "@lindorm/kryptos";
|
|
3
4
|
import { Cipher, CipherGCM, Decipher, DecipherGCM } from "crypto";
|
|
4
|
-
import { Encryption, IntegrityHash } from "./types";
|
|
5
5
|
export type GetAuthTagOptions = {
|
|
6
6
|
cipher: Cipher | CipherGCM;
|
|
7
7
|
content: Buffer;
|
|
8
|
-
|
|
9
|
-
|
|
8
|
+
hashKey: Buffer;
|
|
9
|
+
encryption: KryptosEncryption;
|
|
10
10
|
initialisationVector: Buffer;
|
|
11
|
-
integrityHash?: IntegrityHash;
|
|
12
11
|
};
|
|
13
12
|
export type SetAuthTagOptions = {
|
|
14
13
|
authTag?: Buffer;
|
|
15
14
|
content: Buffer;
|
|
15
|
+
hashKey: Buffer;
|
|
16
16
|
decipher: Decipher | DecipherGCM;
|
|
17
|
-
|
|
18
|
-
encryption: Encryption;
|
|
17
|
+
encryption: KryptosEncryption;
|
|
19
18
|
initialisationVector: Buffer;
|
|
20
|
-
integrityHash?: IntegrityHash;
|
|
21
19
|
};
|
|
22
20
|
export type CreateHmacAuthTag = {
|
|
23
21
|
content: Buffer;
|
|
24
|
-
|
|
22
|
+
encryption: KryptosEncryption;
|
|
23
|
+
hashKey: Buffer;
|
|
25
24
|
initialisationVector: Buffer;
|
|
26
|
-
integrityHash: IntegrityHash;
|
|
27
25
|
};
|
|
28
26
|
export type VerifyHmacAuthTag = CreateHmacAuthTag & {
|
|
29
27
|
authTag: Buffer;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auth-tag.d.ts","sourceRoot":"","sources":["../../../src/types/private/auth-tag.ts"],"names":[],"mappings":";;AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAElE,MAAM,MAAM,iBAAiB,GAAG;IAC9B,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,iBAAiB,CAAC;IAC9B,oBAAoB,EAAE,MAAM,CAAC;CAC9B,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,QAAQ,GAAG,WAAW,CAAC;IACjC,UAAU,EAAE,iBAAiB,CAAC;IAC9B,oBAAoB,EAAE,MAAM,CAAC;CAC9B,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,iBAAiB,CAAC;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,oBAAoB,EAAE,MAAM,CAAC;CAC9B,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG,iBAAiB,GAAG;IAAE,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth-tag.js","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"auth-tag.js","sourceRoot":"","sources":["../../../src/types/private/auth-tag.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
import { IKryptos, KryptosEncryption } from "@lindorm/kryptos";
|
|
3
|
+
import { PublicEncryptionJwk } from "../types";
|
|
4
|
+
export type CreateCekOptions = {
|
|
5
|
+
encryption: KryptosEncryption;
|
|
6
|
+
kryptos: IKryptos;
|
|
7
|
+
};
|
|
8
|
+
export type CreateCekResult = {
|
|
9
|
+
contentEncryptionKey: Buffer;
|
|
10
|
+
hkdfSalt?: Buffer;
|
|
11
|
+
pbkdfIterations?: number;
|
|
12
|
+
pbkdfSalt?: Buffer;
|
|
13
|
+
publicEncryptionJwk?: PublicEncryptionJwk;
|
|
14
|
+
publicEncryptionKey?: Buffer;
|
|
15
|
+
};
|
|
16
|
+
export type DecryptCekOptions = {
|
|
17
|
+
encryption: KryptosEncryption;
|
|
18
|
+
hkdfSalt?: Buffer;
|
|
19
|
+
kryptos: IKryptos;
|
|
20
|
+
pbkdfIterations?: number;
|
|
21
|
+
pbkdfSalt?: Buffer;
|
|
22
|
+
publicEncryptionJwk?: PublicEncryptionJwk;
|
|
23
|
+
publicEncryptionKey?: Buffer;
|
|
24
|
+
};
|
|
25
|
+
export type DecryptCekResult = {
|
|
26
|
+
contentEncryptionKey: Buffer;
|
|
27
|
+
};
|
|
28
|
+
//# sourceMappingURL=content-encryption-key.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"content-encryption-key.d.ts","sourceRoot":"","sources":["../../../src/types/private/content-encryption-key.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAC/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAE/C,MAAM,MAAM,gBAAgB,GAAG;IAC7B,UAAU,EAAE,iBAAiB,CAAC;IAC9B,OAAO,EAAE,QAAQ,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,oBAAoB,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;IAC1C,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,UAAU,EAAE,iBAAiB,CAAC;IAC9B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,QAAQ,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;IAC1C,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,oBAAoB,EAAE,MAAM,CAAC;CAC9B,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"content-encryption-key.js","sourceRoot":"","sources":["../../../src/types/private/content-encryption-key.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/types/private/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,0BAA0B,CAAC"}
|
|
@@ -14,8 +14,8 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
__exportStar(require("./
|
|
18
|
-
__exportStar(require("./
|
|
19
|
-
__exportStar(require("./
|
|
20
|
-
__exportStar(require("./
|
|
17
|
+
__exportStar(require("./aes-key-derivation"), exports);
|
|
18
|
+
__exportStar(require("./aes-string"), exports);
|
|
19
|
+
__exportStar(require("./auth-tag"), exports);
|
|
20
|
+
__exportStar(require("./content-encryption-key"), exports);
|
|
21
21
|
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/types/private/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,uDAAqC;AACrC,+CAA6B;AAC7B,6CAA2B;AAC3B,2DAAyC"}
|
package/dist/types/types.d.ts
CHANGED
|
@@ -1,10 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
export type
|
|
4
|
-
export type Encryption = "aes-128-cbc" | "aes-192-cbc" | "aes-256-cbc" | "aes-128-gcm" | "aes-192-gcm" | "aes-256-gcm";
|
|
5
|
-
export type EncryptionKeyAlgorithm = "ECDH-ES" | "RSA-OAEP" | "RSA-OAEP-256" | "RSA-OAEP-384" | "RSA-OAEP-512" | "RSA-PRIVATE-KEY";
|
|
6
|
-
export type IntegrityHash = "sha256" | "sha384" | "sha512";
|
|
7
|
-
export type PublicEncryptionJwk = Pick<EcKeyJwk, "crv" | "kty" | "x" | "y">;
|
|
8
|
-
export type Secret = Buffer | string;
|
|
9
|
-
export type ShaHash = "sha1" | "sha256" | "sha384" | "sha512";
|
|
1
|
+
import { KryptosJwk } from "@lindorm/kryptos";
|
|
2
|
+
export type AesEncryption = "aes-128-cbc" | "aes-192-cbc" | "aes-256-cbc" | "aes-128-gcm" | "aes-192-gcm" | "aes-256-gcm";
|
|
3
|
+
export type PublicEncryptionJwk = Pick<KryptosJwk, "crv" | "kty" | "x" | "y">;
|
|
10
4
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types/types.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,MAAM,MAAM,aAAa,GACrB,aAAa,GACb,aAAa,GACb,aAAa,GACb,aAAa,GACb,aAAa,GACb,aAAa,CAAC;AAElB,MAAM,MAAM,mBAAmB,GAAG,IAAI,CAAC,UAAU,EAAE,KAAK,GAAG,KAAK,GAAG,GAAG,GAAG,GAAG,CAAC,CAAC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
import { CreateHmacAuthTag, VerifyHmacAuthTag } from "../../../types/private/auth-tag";
|
|
3
|
+
export declare const _createHmacAuthTag: ({ content, hashKey, initialisationVector, encryption, }: CreateHmacAuthTag) => Buffer;
|
|
4
|
+
export declare const _assertHmacAuthTag: ({ authTag, content, encryption, hashKey, initialisationVector, }: VerifyHmacAuthTag) => void;
|
|
5
|
+
//# sourceMappingURL=auth-tag-hmac.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auth-tag-hmac.d.ts","sourceRoot":"","sources":["../../../../src/utils/private/aes-data/auth-tag-hmac.ts"],"names":[],"mappings":";AAIA,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAkBvF,eAAO,MAAM,kBAAkB,4DAK5B,iBAAiB,KAAG,MAOtB,CAAC;AAEF,eAAO,MAAM,kBAAkB,qEAM5B,iBAAiB,KAAG,IAWtB,CAAC"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports._assertHmacAuthTag = exports._createHmacAuthTag = void 0;
|
|
4
|
+
const crypto_1 = require("crypto");
|
|
5
|
+
const errors_1 = require("../../../errors");
|
|
6
|
+
const _shaHash = (encryption) => {
|
|
7
|
+
switch (encryption) {
|
|
8
|
+
case "A128CBC-HS256":
|
|
9
|
+
return "SHA256";
|
|
10
|
+
case "A192CBC-HS384":
|
|
11
|
+
return "SHA384";
|
|
12
|
+
case "A256CBC-HS512":
|
|
13
|
+
return "SHA512";
|
|
14
|
+
default:
|
|
15
|
+
throw new errors_1.AesError("Unexpected algorithm");
|
|
16
|
+
}
|
|
17
|
+
};
|
|
18
|
+
const _createHmacAuthTag = ({ content, hashKey, initialisationVector, encryption, }) => {
|
|
19
|
+
const hmac = (0, crypto_1.createHmac)(_shaHash(encryption), hashKey);
|
|
20
|
+
hmac.update(initialisationVector);
|
|
21
|
+
hmac.update(content);
|
|
22
|
+
return hmac.digest();
|
|
23
|
+
};
|
|
24
|
+
exports._createHmacAuthTag = _createHmacAuthTag;
|
|
25
|
+
const _assertHmacAuthTag = ({ authTag, content, encryption, hashKey, initialisationVector, }) => {
|
|
26
|
+
const generated = (0, exports._createHmacAuthTag)({
|
|
27
|
+
content,
|
|
28
|
+
encryption,
|
|
29
|
+
hashKey,
|
|
30
|
+
initialisationVector,
|
|
31
|
+
});
|
|
32
|
+
if (Buffer.compare(generated, authTag) === 0)
|
|
33
|
+
return;
|
|
34
|
+
throw new errors_1.AesError("Auth tag verification failed");
|
|
35
|
+
};
|
|
36
|
+
exports._assertHmacAuthTag = _assertHmacAuthTag;
|
|
37
|
+
//# sourceMappingURL=auth-tag-hmac.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auth-tag-hmac.js","sourceRoot":"","sources":["../../../../src/utils/private/aes-data/auth-tag-hmac.ts"],"names":[],"mappings":";;;AAEA,mCAAoC;AACpC,4CAA2C;AAG3C,MAAM,QAAQ,GAAG,CAAC,UAA6B,EAAgB,EAAE;IAC/D,QAAQ,UAAU,EAAE,CAAC;QACnB,KAAK,eAAe;YAClB,OAAO,QAAQ,CAAC;QAElB,KAAK,eAAe;YAClB,OAAO,QAAQ,CAAC;QAElB,KAAK,eAAe;YAClB,OAAO,QAAQ,CAAC;QAElB;YACE,MAAM,IAAI,iBAAQ,CAAC,sBAAsB,CAAC,CAAC;IAC/C,CAAC;AACH,CAAC,CAAC;AAEK,MAAM,kBAAkB,GAAG,CAAC,EACjC,OAAO,EACP,OAAO,EACP,oBAAoB,EACpB,UAAU,GACQ,EAAU,EAAE;IAC9B,MAAM,IAAI,GAAG,IAAA,mBAAU,EAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC,CAAC;IAEvD,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC;IAClC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAErB,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC;AACvB,CAAC,CAAC;AAZW,QAAA,kBAAkB,sBAY7B;AAEK,MAAM,kBAAkB,GAAG,CAAC,EACjC,OAAO,EACP,OAAO,EACP,UAAU,EACV,OAAO,EACP,oBAAoB,GACF,EAAQ,EAAE;IAC5B,MAAM,SAAS,GAAG,IAAA,0BAAkB,EAAC;QACnC,OAAO;QACP,UAAU;QACV,OAAO;QACP,oBAAoB;KACrB,CAAC,CAAC;IAEH,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO;IAErD,MAAM,IAAI,iBAAQ,CAAC,8BAA8B,CAAC,CAAC;AACrD,CAAC,CAAC;AAjBW,QAAA,kBAAkB,sBAiB7B"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
import { GetAuthTagOptions, SetAuthTagOptions } from "../../../types/private";
|
|
3
|
+
export declare const _createAuthTag: ({ encryption, cipher, content, hashKey, initialisationVector, }: GetAuthTagOptions) => Buffer;
|
|
4
|
+
export declare const _assertAuthTag: ({ authTag, content, hashKey, decipher, encryption, initialisationVector, }: SetAuthTagOptions) => void;
|
|
5
|
+
//# sourceMappingURL=auth-tag.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auth-tag.d.ts","sourceRoot":"","sources":["../../../../src/utils/private/aes-data/auth-tag.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAG9E,eAAO,MAAM,cAAc,oEAMxB,iBAAiB,KAAG,MAoBtB,CAAC;AAEF,eAAO,MAAM,cAAc,+EAOxB,iBAAiB,KAAG,IA2BtB,CAAC"}
|