@enbox/crypto 0.0.1 → 0.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (182) hide show
  1. package/README.md +34 -102
  2. package/dist/browser.js +6 -10
  3. package/dist/browser.js.map +4 -4
  4. package/dist/browser.mjs +6 -10
  5. package/dist/browser.mjs.map +4 -4
  6. package/dist/esm/algorithms/aes-gcm.js +1 -1
  7. package/dist/esm/algorithms/aes-gcm.js.map +1 -1
  8. package/dist/esm/algorithms/ecdsa.js +9 -5
  9. package/dist/esm/algorithms/ecdsa.js.map +1 -1
  10. package/dist/esm/algorithms/eddsa.js +9 -5
  11. package/dist/esm/algorithms/eddsa.js.map +1 -1
  12. package/dist/esm/algorithms/sha-2.js +1 -1
  13. package/dist/esm/algorithms/sha-2.js.map +1 -1
  14. package/dist/esm/crypto-error.js +41 -0
  15. package/dist/esm/crypto-error.js.map +1 -0
  16. package/dist/esm/index.js +3 -0
  17. package/dist/esm/index.js.map +1 -1
  18. package/dist/esm/jose/jwk.js +52 -26
  19. package/dist/esm/jose/jwk.js.map +1 -1
  20. package/dist/esm/local-key-manager.js +3 -2
  21. package/dist/esm/local-key-manager.js.map +1 -1
  22. package/dist/esm/primitives/aes-ctr.js.map +1 -1
  23. package/dist/esm/primitives/aes-gcm.js.map +1 -1
  24. package/dist/esm/primitives/aes-kw.js +246 -0
  25. package/dist/esm/primitives/aes-kw.js.map +1 -0
  26. package/dist/esm/primitives/concat-kdf.js +1 -1
  27. package/dist/esm/primitives/concat-kdf.js.map +1 -1
  28. package/dist/esm/primitives/ed25519.js +3 -3
  29. package/dist/esm/primitives/ed25519.js.map +1 -1
  30. package/dist/esm/primitives/hkdf.js +79 -0
  31. package/dist/esm/primitives/hkdf.js.map +1 -0
  32. package/dist/esm/primitives/pbkdf2.js +49 -0
  33. package/dist/esm/primitives/pbkdf2.js.map +1 -1
  34. package/dist/esm/primitives/secp256k1.js +4 -4
  35. package/dist/esm/primitives/secp256k1.js.map +1 -1
  36. package/dist/esm/primitives/secp256r1.js +4 -4
  37. package/dist/esm/primitives/secp256r1.js.map +1 -1
  38. package/dist/esm/primitives/x25519.js +1 -1
  39. package/dist/esm/primitives/x25519.js.map +1 -1
  40. package/dist/esm/primitives/xchacha20-poly1305.js +48 -3
  41. package/dist/esm/primitives/xchacha20-poly1305.js.map +1 -1
  42. package/dist/esm/primitives/xchacha20.js +1 -1
  43. package/dist/esm/primitives/xchacha20.js.map +1 -1
  44. package/dist/esm/utils.js.map +1 -1
  45. package/dist/types/algorithms/aes-ctr.d.ts +1 -1
  46. package/dist/types/algorithms/aes-ctr.d.ts.map +1 -1
  47. package/dist/types/algorithms/aes-gcm.d.ts +2 -2
  48. package/dist/types/algorithms/aes-gcm.d.ts.map +1 -1
  49. package/dist/types/algorithms/ecdsa.d.ts +1 -1
  50. package/dist/types/algorithms/ecdsa.d.ts.map +1 -1
  51. package/dist/types/algorithms/eddsa.d.ts +2 -2
  52. package/dist/types/algorithms/eddsa.d.ts.map +1 -1
  53. package/dist/types/algorithms/sha-2.d.ts +1 -1
  54. package/dist/types/algorithms/sha-2.d.ts.map +1 -1
  55. package/dist/types/crypto-error.d.ts +29 -0
  56. package/dist/types/crypto-error.d.ts.map +1 -0
  57. package/dist/types/index.d.ts +3 -0
  58. package/dist/types/index.d.ts.map +1 -1
  59. package/dist/types/jose/jwk.d.ts.map +1 -1
  60. package/dist/types/local-key-manager.d.ts +3 -3
  61. package/dist/types/local-key-manager.d.ts.map +1 -1
  62. package/dist/types/primitives/aes-kw.d.ts +103 -0
  63. package/dist/types/primitives/aes-kw.d.ts.map +1 -0
  64. package/dist/types/primitives/concat-kdf.d.ts +1 -1
  65. package/dist/types/primitives/concat-kdf.d.ts.map +1 -1
  66. package/dist/types/primitives/hkdf.d.ts +90 -0
  67. package/dist/types/primitives/hkdf.d.ts.map +1 -0
  68. package/dist/types/primitives/pbkdf2.d.ts +58 -0
  69. package/dist/types/primitives/pbkdf2.d.ts.map +1 -1
  70. package/dist/types/primitives/xchacha20-poly1305.d.ts +47 -0
  71. package/dist/types/primitives/xchacha20-poly1305.d.ts.map +1 -1
  72. package/dist/types/types/cipher.d.ts +1 -1
  73. package/dist/types/types/crypto-api.d.ts +3 -3
  74. package/dist/types/types/crypto-api.d.ts.map +1 -1
  75. package/dist/types/types/params-direct.d.ts +79 -1
  76. package/dist/types/types/params-direct.d.ts.map +1 -1
  77. package/dist/utils.js.map +2 -2
  78. package/package.json +21 -34
  79. package/src/algorithms/aes-ctr.ts +1 -1
  80. package/src/algorithms/aes-gcm.ts +3 -2
  81. package/src/algorithms/ecdsa.ts +13 -7
  82. package/src/algorithms/eddsa.ts +9 -9
  83. package/src/algorithms/sha-2.ts +2 -2
  84. package/src/crypto-error.ts +45 -0
  85. package/src/index.ts +3 -0
  86. package/src/jose/jwk.ts +32 -32
  87. package/src/local-key-manager.ts +14 -13
  88. package/src/primitives/aes-ctr.ts +1 -1
  89. package/src/primitives/aes-gcm.ts +5 -5
  90. package/src/primitives/aes-kw.ts +269 -0
  91. package/src/primitives/concat-kdf.ts +4 -2
  92. package/src/primitives/ed25519.ts +6 -6
  93. package/src/primitives/hkdf.ts +121 -0
  94. package/src/primitives/pbkdf2.ts +91 -0
  95. package/src/primitives/secp256k1.ts +6 -6
  96. package/src/primitives/secp256r1.ts +6 -6
  97. package/src/primitives/x25519.ts +3 -3
  98. package/src/primitives/xchacha20-poly1305.ts +57 -4
  99. package/src/primitives/xchacha20.ts +1 -1
  100. package/src/types/cipher.ts +1 -1
  101. package/src/types/crypto-api.ts +5 -5
  102. package/src/types/params-direct.ts +97 -1
  103. package/src/utils.ts +2 -2
  104. package/dist/cjs/algorithms/aes-ctr.js +0 -188
  105. package/dist/cjs/algorithms/aes-ctr.js.map +0 -1
  106. package/dist/cjs/algorithms/aes-gcm.js +0 -196
  107. package/dist/cjs/algorithms/aes-gcm.js.map +0 -1
  108. package/dist/cjs/algorithms/crypto-algorithm.js +0 -13
  109. package/dist/cjs/algorithms/crypto-algorithm.js.map +0 -1
  110. package/dist/cjs/algorithms/ecdsa.js +0 -352
  111. package/dist/cjs/algorithms/ecdsa.js.map +0 -1
  112. package/dist/cjs/algorithms/eddsa.js +0 -325
  113. package/dist/cjs/algorithms/eddsa.js.map +0 -1
  114. package/dist/cjs/algorithms/sha-2.js +0 -119
  115. package/dist/cjs/algorithms/sha-2.js.map +0 -1
  116. package/dist/cjs/index.js +0 -41
  117. package/dist/cjs/index.js.map +0 -1
  118. package/dist/cjs/jose/jwe.js +0 -3
  119. package/dist/cjs/jose/jwe.js.map +0 -1
  120. package/dist/cjs/jose/jwk.js +0 -278
  121. package/dist/cjs/jose/jwk.js.map +0 -1
  122. package/dist/cjs/jose/jws.js +0 -3
  123. package/dist/cjs/jose/jws.js.map +0 -1
  124. package/dist/cjs/jose/jwt.js +0 -3
  125. package/dist/cjs/jose/jwt.js.map +0 -1
  126. package/dist/cjs/jose/utils.js +0 -60
  127. package/dist/cjs/jose/utils.js.map +0 -1
  128. package/dist/cjs/local-key-manager.js +0 -521
  129. package/dist/cjs/local-key-manager.js.map +0 -1
  130. package/dist/cjs/package.json +0 -1
  131. package/dist/cjs/primitives/aes-ctr.js +0 -398
  132. package/dist/cjs/primitives/aes-ctr.js.map +0 -1
  133. package/dist/cjs/primitives/aes-gcm.js +0 -425
  134. package/dist/cjs/primitives/aes-gcm.js.map +0 -1
  135. package/dist/cjs/primitives/concat-kdf.js +0 -215
  136. package/dist/cjs/primitives/concat-kdf.js.map +0 -1
  137. package/dist/cjs/primitives/ed25519.js +0 -651
  138. package/dist/cjs/primitives/ed25519.js.map +0 -1
  139. package/dist/cjs/primitives/pbkdf2.js +0 -120
  140. package/dist/cjs/primitives/pbkdf2.js.map +0 -1
  141. package/dist/cjs/primitives/secp256k1.js +0 -958
  142. package/dist/cjs/primitives/secp256k1.js.map +0 -1
  143. package/dist/cjs/primitives/secp256r1.js +0 -959
  144. package/dist/cjs/primitives/secp256r1.js.map +0 -1
  145. package/dist/cjs/primitives/sha256.js +0 -93
  146. package/dist/cjs/primitives/sha256.js.map +0 -1
  147. package/dist/cjs/primitives/x25519.js +0 -498
  148. package/dist/cjs/primitives/x25519.js.map +0 -1
  149. package/dist/cjs/primitives/xchacha20-poly1305.js +0 -340
  150. package/dist/cjs/primitives/xchacha20-poly1305.js.map +0 -1
  151. package/dist/cjs/primitives/xchacha20.js +0 -316
  152. package/dist/cjs/primitives/xchacha20.js.map +0 -1
  153. package/dist/cjs/types/cipher.js +0 -3
  154. package/dist/cjs/types/cipher.js.map +0 -1
  155. package/dist/cjs/types/crypto-api.js +0 -3
  156. package/dist/cjs/types/crypto-api.js.map +0 -1
  157. package/dist/cjs/types/hasher.js +0 -3
  158. package/dist/cjs/types/hasher.js.map +0 -1
  159. package/dist/cjs/types/identifier.js +0 -3
  160. package/dist/cjs/types/identifier.js.map +0 -1
  161. package/dist/cjs/types/key-compressor.js +0 -3
  162. package/dist/cjs/types/key-compressor.js.map +0 -1
  163. package/dist/cjs/types/key-converter.js +0 -3
  164. package/dist/cjs/types/key-converter.js.map +0 -1
  165. package/dist/cjs/types/key-deriver.js +0 -3
  166. package/dist/cjs/types/key-deriver.js.map +0 -1
  167. package/dist/cjs/types/key-generator.js +0 -3
  168. package/dist/cjs/types/key-generator.js.map +0 -1
  169. package/dist/cjs/types/key-io.js +0 -3
  170. package/dist/cjs/types/key-io.js.map +0 -1
  171. package/dist/cjs/types/key-wrapper.js +0 -3
  172. package/dist/cjs/types/key-wrapper.js.map +0 -1
  173. package/dist/cjs/types/params-direct.js +0 -3
  174. package/dist/cjs/types/params-direct.js.map +0 -1
  175. package/dist/cjs/types/params-enclosed.js +0 -3
  176. package/dist/cjs/types/params-enclosed.js.map +0 -1
  177. package/dist/cjs/types/params-kms.js +0 -3
  178. package/dist/cjs/types/params-kms.js.map +0 -1
  179. package/dist/cjs/types/signer.js +0 -3
  180. package/dist/cjs/types/signer.js.map +0 -1
  181. package/dist/cjs/utils.js +0 -173
  182. package/dist/cjs/utils.js.map +0 -1
@@ -0,0 +1,246 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ var __rest = (this && this.__rest) || function (s, e) {
11
+ var t = {};
12
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
13
+ t[p] = s[p];
14
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
15
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
16
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
17
+ t[p[i]] = s[p[i]];
18
+ }
19
+ return t;
20
+ };
21
+ import { getWebcryptoSubtle } from '@noble/ciphers/webcrypto';
22
+ import { Convert } from '@enbox/common';
23
+ import { computeJwkThumbprint, isOctPrivateJwk } from '../jose/jwk.js';
24
+ import { CryptoError, CryptoErrorCode } from '../crypto-error.js';
25
+ /**
26
+ * Constant defining the AES key length values in bits.
27
+ *
28
+ * @remarks
29
+ * NIST publication FIPS 197 states:
30
+ * > The AES algorithm is capable of using cryptographic keys of 128, 192, and 256 bits to encrypt
31
+ * > and decrypt data in blocks of 128 bits.
32
+ *
33
+ * This implementation does not support key lengths that are different from the three values
34
+ * defined by this constant.
35
+ *
36
+ * @see {@link https://doi.org/10.6028/NIST.FIPS.197-upd1 | NIST FIPS 197}
37
+ */
38
+ const AES_KEY_LENGTHS = [128, 192, 256];
39
+ export class AesKw {
40
+ /**
41
+ * Converts a raw private key in bytes to its corresponding JSON Web Key (JWK) format.
42
+ *
43
+ * @remarks
44
+ * This method takes a symmetric key represented as a byte array (Uint8Array) and
45
+ * converts it into a JWK object for use with AES (Advanced Encryption Standard)
46
+ * for key wrapping. The conversion process involves encoding the key into
47
+ * base64url format and setting the appropriate JWK parameters.
48
+ *
49
+ * The resulting JWK object includes the following properties:
50
+ * - `kty`: Key Type, set to 'oct' for Octet Sequence (representing a symmetric key).
51
+ * - `k`: The symmetric key, base64url-encoded.
52
+ * - `kid`: Key ID, generated based on the JWK thumbprint.
53
+ *
54
+ * @example
55
+ * ```ts
56
+ * const privateKeyBytes = new Uint8Array([...]); // Replace with actual symmetric key bytes
57
+ * const privateKey = await AesKw.bytesToPrivateKey({ privateKeyBytes });
58
+ * ```
59
+ *
60
+ * @param params - The parameters for the symmetric key conversion.
61
+ * @param params.privateKeyBytes - The raw symmetric key as a Uint8Array.
62
+ *
63
+ * @returns A Promise that resolves to the symmetric key in JWK format.
64
+ */
65
+ static bytesToPrivateKey(_a) {
66
+ return __awaiter(this, arguments, void 0, function* ({ privateKeyBytes }) {
67
+ // Construct the private key in JWK format.
68
+ const privateKey = {
69
+ k: Convert.uint8Array(privateKeyBytes).toBase64Url(),
70
+ kty: 'oct'
71
+ };
72
+ // Compute the JWK thumbprint and set as the key ID.
73
+ privateKey.kid = yield computeJwkThumbprint({ jwk: privateKey });
74
+ // Add algorithm identifier based on key length.
75
+ const lengthInBits = privateKeyBytes.length * 8;
76
+ privateKey.alg = { 128: 'A128KW', 192: 'A192KW', 256: 'A256KW' }[lengthInBits];
77
+ return privateKey;
78
+ });
79
+ }
80
+ /**
81
+ * Generates a symmetric key for AES for key wrapping in JSON Web Key (JWK) format.
82
+ *
83
+ * @remarks
84
+ * This method creates a new symmetric key of a specified length suitable for use with
85
+ * AES key wrapping. It uses cryptographically secure random number generation to
86
+ * ensure the uniqueness and security of the key. The generated key adheres to the JWK
87
+ * format, making it compatible with common cryptographic standards and easy to use in
88
+ * various cryptographic processes.
89
+ *
90
+ * The generated key includes the following components:
91
+ * - `kty`: Key Type, set to 'oct' for Octet Sequence.
92
+ * - `k`: The symmetric key component, base64url-encoded.
93
+ * - `kid`: Key ID, generated based on the JWK thumbprint.
94
+ * - `alg`: Algorithm, set to 'A128KW', 'A192KW', or 'A256KW' for AES Key Wrap with the
95
+ * specified key length.
96
+ *
97
+ * @example
98
+ * ```ts
99
+ * const length = 256; // Length of the key in bits (e.g., 128, 192, 256)
100
+ * const privateKey = await AesKw.generateKey({ length });
101
+ * ```
102
+ *
103
+ * @param params - The parameters for the key generation.
104
+ * @param params.length - The length of the key in bits. Common lengths are 128, 192, and 256 bits.
105
+ *
106
+ * @returns A Promise that resolves to the generated symmetric key in JWK format.
107
+ */
108
+ static generateKey(_a) {
109
+ return __awaiter(this, arguments, void 0, function* ({ length }) {
110
+ // Validate the key length.
111
+ if (!AES_KEY_LENGTHS.includes(length)) {
112
+ throw new RangeError(`The key length is invalid: Must be ${AES_KEY_LENGTHS.join(', ')} bits`);
113
+ }
114
+ // Get the Web Crypto API interface.
115
+ const webCrypto = getWebcryptoSubtle();
116
+ // Generate a random private key.
117
+ // See https://developer.mozilla.org/en-US/docs/Web/API/Crypto/getRandomValues#usage_notes for
118
+ // an explanation for why Web Crypto generateKey() is used instead of getRandomValues().
119
+ const webCryptoKey = yield webCrypto.generateKey({ name: 'AES-KW', length }, true, ['wrapKey', 'unwrapKey']);
120
+ // Export the private key in JWK format.
121
+ const _b = yield webCrypto.exportKey('jwk', webCryptoKey), { ext, key_ops } = _b, privateKey = __rest(_b, ["ext", "key_ops"]);
122
+ // Compute the JWK thumbprint and set as the key ID.
123
+ privateKey.kid = yield computeJwkThumbprint({ jwk: privateKey });
124
+ return privateKey;
125
+ });
126
+ }
127
+ /**
128
+ * Converts a private key from JSON Web Key (JWK) format to a raw byte array (Uint8Array).
129
+ *
130
+ * @remarks
131
+ * This method takes a symmetric key in JWK format and extracts its raw byte representation.
132
+ * It decodes the 'k' parameter of the JWK value, which represents the symmetric key in base64url
133
+ * encoding, into a byte array.
134
+ *
135
+ * @example
136
+ * ```ts
137
+ * const privateKey = { ... }; // A symmetric key in JWK format
138
+ * const privateKeyBytes = await AesKw.privateKeyToBytes({ privateKey });
139
+ * ```
140
+ *
141
+ * @param params - The parameters for the symmetric key conversion.
142
+ * @param params.privateKey - The symmetric key in JWK format.
143
+ *
144
+ * @returns A Promise that resolves to the symmetric key as a Uint8Array.
145
+ */
146
+ static privateKeyToBytes(_a) {
147
+ return __awaiter(this, arguments, void 0, function* ({ privateKey }) {
148
+ // Verify the provided JWK represents a valid oct private key.
149
+ if (!isOctPrivateJwk(privateKey)) {
150
+ throw new Error(`AesKw: The provided key is not a valid oct private key.`);
151
+ }
152
+ // Decode the provided private key to bytes.
153
+ const privateKeyBytes = Convert.base64Url(privateKey.k).toUint8Array();
154
+ return privateKeyBytes;
155
+ });
156
+ }
157
+ static unwrapKey(_a) {
158
+ return __awaiter(this, arguments, void 0, function* ({ wrappedKeyBytes, wrappedKeyAlgorithm, decryptionKey }) {
159
+ if (!('alg' in decryptionKey && decryptionKey.alg)) {
160
+ throw new CryptoError(CryptoErrorCode.InvalidJwk, `The decryption key is missing the 'alg' property.`);
161
+ }
162
+ if (!['A128KW', 'A192KW', 'A256KW'].includes(decryptionKey.alg)) {
163
+ throw new CryptoError(CryptoErrorCode.AlgorithmNotSupported, `The 'decryptionKey' algorithm is not supported: ${decryptionKey.alg}`);
164
+ }
165
+ // Get the Web Crypto API interface.
166
+ const webCrypto = getWebcryptoSubtle();
167
+ // Import the decryption key for use with the Web Crypto API.
168
+ const decryptionCryptoKey = yield webCrypto.importKey('jwk', // key format
169
+ decryptionKey, // key data
170
+ { name: 'AES-KW' }, // algorithm identifier
171
+ true, // key is extractable
172
+ ['unwrapKey'] // key usages
173
+ );
174
+ // Map the private key's JOSE algorithm name to the Web Crypto API algorithm identifier.
175
+ const webCryptoAlgorithm = {
176
+ A128KW: 'AES-KW', A192KW: 'AES-KW', A256KW: 'AES-KW',
177
+ A128GCM: 'AES-GCM', A192GCM: 'AES-GCM', A256GCM: 'AES-GCM',
178
+ }[wrappedKeyAlgorithm];
179
+ if (!webCryptoAlgorithm) {
180
+ throw new CryptoError(CryptoErrorCode.AlgorithmNotSupported, `The 'wrappedKeyAlgorithm' is not supported: ${wrappedKeyAlgorithm}`);
181
+ }
182
+ // Unwrap the key using the Web Crypto API.
183
+ const unwrappedCryptoKey = yield webCrypto.unwrapKey('raw', // output format
184
+ wrappedKeyBytes.buffer, // key to unwrap
185
+ decryptionCryptoKey, // unwrapping key
186
+ 'AES-KW', // algorithm identifier
187
+ { name: webCryptoAlgorithm }, // unwrapped key algorithm identifier
188
+ true, // key is extractable
189
+ ['unwrapKey'] // key usages
190
+ );
191
+ // Export the unwrapped key in JWK format.
192
+ const _b = yield webCrypto.exportKey('jwk', unwrappedCryptoKey), { ext, key_ops } = _b, unwrappedJsonWebKey = __rest(_b, ["ext", "key_ops"]);
193
+ const unwrappedKey = unwrappedJsonWebKey;
194
+ // Compute the JWK thumbprint and set as the key ID.
195
+ unwrappedKey.kid = yield computeJwkThumbprint({ jwk: unwrappedKey });
196
+ return unwrappedKey;
197
+ });
198
+ }
199
+ static wrapKey(_a) {
200
+ return __awaiter(this, arguments, void 0, function* ({ unwrappedKey, encryptionKey }) {
201
+ if (!('alg' in encryptionKey && encryptionKey.alg)) {
202
+ throw new CryptoError(CryptoErrorCode.InvalidJwk, `The encryption key is missing the 'alg' property.`);
203
+ }
204
+ if (!['A128KW', 'A192KW', 'A256KW'].includes(encryptionKey.alg)) {
205
+ throw new CryptoError(CryptoErrorCode.AlgorithmNotSupported, `The 'encryptionKey' algorithm is not supported: ${encryptionKey.alg}`);
206
+ }
207
+ if (!('alg' in unwrappedKey && unwrappedKey.alg)) {
208
+ throw new CryptoError(CryptoErrorCode.InvalidJwk, `The private key to wrap is missing the 'alg' property.`);
209
+ }
210
+ // Get the Web Crypto API interface.
211
+ const webCrypto = getWebcryptoSubtle();
212
+ // Import the encryption key for use with the Web Crypto API.
213
+ const encryptionCryptoKey = yield webCrypto.importKey('jwk', // key format
214
+ encryptionKey, // key data
215
+ { name: 'AES-KW' }, // algorithm identifier
216
+ true, // key is extractable
217
+ ['wrapKey'] // key usages
218
+ );
219
+ // Map the private key's JOSE algorithm name to the Web Crypto API algorithm identifier.
220
+ const webCryptoAlgorithm = {
221
+ A128KW: 'AES-KW', A192KW: 'AES-KW', A256KW: 'AES-KW',
222
+ A128GCM: 'AES-GCM', A192GCM: 'AES-GCM', A256GCM: 'AES-GCM',
223
+ }[unwrappedKey.alg];
224
+ if (!webCryptoAlgorithm) {
225
+ throw new CryptoError(CryptoErrorCode.AlgorithmNotSupported, `The 'unwrappedKey' algorithm is not supported: ${unwrappedKey.alg}`);
226
+ }
227
+ // Import the private key to wrap for use with the Web Crypto API.
228
+ const unwrappedCryptoKey = yield webCrypto.importKey('jwk', // key format
229
+ unwrappedKey, // key data
230
+ { name: webCryptoAlgorithm }, // algorithm identifier
231
+ true, // key is extractable
232
+ ['unwrapKey'] // key usages
233
+ );
234
+ // Wrap the key using the Web Crypto API.
235
+ const wrappedKeyBuffer = yield webCrypto.wrapKey('raw', // output format
236
+ unwrappedCryptoKey, // key to wrap
237
+ encryptionCryptoKey, // wrapping key
238
+ 'AES-KW' // algorithm identifier
239
+ );
240
+ // Convert from ArrayBuffer to Uint8Array.
241
+ const wrappedKeyBytes = new Uint8Array(wrappedKeyBuffer);
242
+ return wrappedKeyBytes;
243
+ });
244
+ }
245
+ }
246
+ //# sourceMappingURL=aes-kw.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"aes-kw.js","sourceRoot":"","sources":["../../../src/primitives/aes-kw.ts"],"names":[],"mappings":"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"}
@@ -7,9 +7,9 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
7
7
  step((generator = generator.apply(thisArg, _arguments || [])).next());
8
8
  });
9
9
  };
10
+ import { concatBytes } from '@noble/hashes/utils';
10
11
  import { sha256 } from '@noble/hashes/sha256';
11
12
  import { Convert, universalTypeOf } from '@enbox/common';
12
- import { concatBytes } from '@noble/hashes/utils';
13
13
  /**
14
14
  * An implementation of the Concatenation Key Derivation Function (ConcatKDF)
15
15
  * as specified in NIST.800-56A, a single-step key-derivation function (SSKDF).
@@ -1 +1 @@
1
- {"version":3,"file":"concat-kdf.js","sourceRoot":"","sources":["../../../src/primitives/concat-kdf.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"concat-kdf.js","sourceRoot":"","sources":["../../../src/primitives/concat-kdf.ts"],"names":[],"mappings":"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"}
@@ -19,7 +19,7 @@ var __rest = (this && this.__rest) || function (s, e) {
19
19
  return t;
20
20
  };
21
21
  import { Convert } from '@enbox/common';
22
- import { ed25519, edwardsToMontgomeryPub, edwardsToMontgomeryPriv, x25519 } from '@noble/curves/ed25519';
22
+ import { ed25519, edwardsToMontgomeryPriv, edwardsToMontgomeryPub, x25519 } from '@noble/curves/ed25519';
23
23
  import { computeJwkThumbprint, isOkpPrivateJwk, isOkpPublicJwk } from '../jose/jwk.js';
24
24
  /**
25
25
  * The `Ed25519` class provides a comprehensive suite of utilities for working with the Ed25519
@@ -343,7 +343,7 @@ export class Ed25519 {
343
343
  throw new Error(`Ed25519: The provided key is not an Ed25519 private JWK.`);
344
344
  }
345
345
  // Remove the private key property ('d') and make a shallow copy of the provided key.
346
- let { d } = key, publicKey = __rest(key, ["d"]);
346
+ const { d } = key, publicKey = __rest(key, ["d"]);
347
347
  // If the key ID is undefined, set it to the JWK thumbprint.
348
348
  (_b = publicKey.kid) !== null && _b !== void 0 ? _b : (publicKey.kid = yield computeJwkThumbprint({ jwk: publicKey }));
349
349
  return publicKey;
@@ -477,7 +477,7 @@ export class Ed25519 {
477
477
  // Check if points are on the Twisted Edwards curve.
478
478
  point.assertValidity();
479
479
  }
480
- catch (error) {
480
+ catch (_b) {
481
481
  return false;
482
482
  }
483
483
  return true;
@@ -1 +1 @@
1
- {"version":3,"file":"ed25519.js","sourceRoot":"","sources":["../../../src/primitives/ed25519.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ed25519.js","sourceRoot":"","sources":["../../../src/primitives/ed25519.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,79 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ import { getWebcryptoSubtle } from '@noble/ciphers/webcrypto';
11
+ import { Convert } from '@enbox/common';
12
+ /**
13
+ * The `Hkdf` class provides an interface for HMAC-based Extract-and-Expand Key Derivation Function (HKDF)
14
+ * as defined in RFC 5869.
15
+ *
16
+ * Note: The `baseKeyBytes` that will be the input key material for HKDF should be a high-entropy secret
17
+ * value, such as a cryptographic key. It should be kept confidential and not be derived from a
18
+ * low-entropy value, such as a password.
19
+ *
20
+ * @example
21
+ * ```ts
22
+ * const info = new Uint8Array([...]);
23
+ * const derivedKeyBytes = await Hkdf.deriveKeyBytes({
24
+ * baseKeyBytes: new Uint8Array([...]), // Input keying material
25
+ * hash: 'SHA-256', // The hash function to use ('SHA-256', 'SHA-384', 'SHA-512')
26
+ * salt: new Uint8Array([...]), // The salt value
27
+ * info: new Uint8Array([...]), // Optional application-specific information
28
+ * length: 256 // The length of the derived key in bits
29
+ * });
30
+ * ```
31
+ */
32
+ export class Hkdf {
33
+ /**
34
+ * Derives a key using the HMAC-based Extract-and-Expand Key Derivation Function (HKDF).
35
+ *
36
+ * This method generates a derived key using a hash function from input keying material given as
37
+ * `baseKeyBytes`. The length of the derived key can be specified. Optionally, it can also use a salt
38
+ * and info for the derivation process.
39
+ *
40
+ * HKDF is useful in various cryptographic applications and protocols, especially when
41
+ * there's a need to derive multiple keys from a single source of key material.
42
+ *
43
+ * Note: The `baseKeyBytes` that will be the input key material for HKDF should be a high-entropy
44
+ * secret value, such as a cryptographic key. It should be kept confidential and not be derived
45
+ * from a low-entropy value, such as a password.
46
+ *
47
+ * @example
48
+ * ```ts
49
+ * const info = new Uint8Array([...]);
50
+ * const derivedKeyBytes = await Hkdf.deriveKeyBytes({
51
+ * baseKeyBytes: new Uint8Array([...]), // Input keying material
52
+ * hash: 'SHA-256', // The hash function to use ('SHA-256', 'SHA-384', 'SHA-512')
53
+ * salt: new Uint8Array([...]), // The salt value
54
+ * info: new Uint8Array([...]), // Optional application-specific information
55
+ * length: 256 // The length of the derived key in bits
56
+ * });
57
+ * ```
58
+ *
59
+ * @param params - The parameters for key derivation.
60
+ * @returns A Promise that resolves to the derived key as a byte array.
61
+ */
62
+ static deriveKeyBytes(_a) {
63
+ return __awaiter(this, arguments, void 0, function* ({ baseKeyBytes, length, hash, salt, info = new Uint8Array() }) {
64
+ // Get the Web Crypto API interface.
65
+ const webCrypto = getWebcryptoSubtle();
66
+ // Import the baseKeyBytes into the Web Crypto API to use for the key derivation operation.
67
+ const webCryptoKey = yield webCrypto.importKey('raw', baseKeyBytes, { name: 'HKDF' }, false, ['deriveBits']);
68
+ // Convert the salt and info to Uint8Array if they are provided as strings.
69
+ const saltBytes = typeof salt === 'string' ? Convert.string(salt).toUint8Array() : salt;
70
+ const infoBytes = typeof info === 'string' ? Convert.string(info).toUint8Array() : info;
71
+ // Derive the bytes using the Web Crypto API.
72
+ const derivedKeyBuffer = yield webCrypto.deriveBits({ name: 'HKDF', hash, salt: saltBytes, info: infoBytes }, webCryptoKey, length);
73
+ // Convert from ArrayBuffer to Uint8Array.
74
+ const derivedKeyBytes = new Uint8Array(derivedKeyBuffer);
75
+ return derivedKeyBytes;
76
+ });
77
+ }
78
+ }
79
+ //# sourceMappingURL=hkdf.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hkdf.js","sourceRoot":"","sources":["../../../src/primitives/hkdf.ts"],"names":[],"mappings":";;;;;;;;;AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAE9D,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAyCxC;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,OAAO,IAAI;IACf;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA4BG;IACI,MAAM,CAAO,cAAc;6DAAC,EAAE,YAAY,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,GAAG,IAAI,UAAU,EAAE,EAC3D;YAEjC,oCAAoC;YACpC,MAAM,SAAS,GAAG,kBAAkB,EAAkB,CAAC;YAEvD,2FAA2F;YAC3F,MAAM,YAAY,GAAG,MAAM,SAAS,CAAC,SAAS,CAAC,KAAK,EAAE,YAAY,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC;YAE7G,2EAA2E;YAC3E,MAAM,SAAS,GAAG,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;YACxF,MAAM,SAAS,GAAG,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;YAExF,6CAA6C;YAC7C,MAAM,gBAAgB,GAAG,MAAM,SAAS,CAAC,UAAU,CACjD,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,EACxD,YAAY,EACZ,MAAM,CACP,CAAC;YAEF,0CAA0C;YAC1C,MAAM,eAAe,GAAG,IAAI,UAAU,CAAC,gBAAgB,CAAC,CAAC;YAEzD,OAAO,eAAe,CAAC;QACzB,CAAC;KAAA;CACF"}
@@ -7,6 +7,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
7
7
  step((generator = generator.apply(thisArg, _arguments || [])).next());
8
8
  });
9
9
  };
10
+ import { getWebcryptoSubtle } from '@noble/ciphers/webcrypto';
10
11
  import { crypto } from '@noble/hashes/crypto';
11
12
  /**
12
13
  * The `Pbkdf2` class provides a secure way to derive cryptographic keys from a password
@@ -74,5 +75,53 @@ export class Pbkdf2 {
74
75
  return derivedKey;
75
76
  });
76
77
  }
78
+ /**
79
+ * Derives cryptographic key bytes from base key material using the PBKDF2 algorithm.
80
+ *
81
+ * @remarks
82
+ * This method is similar to {@link Pbkdf2.deriveKey | `deriveKey()`} but accepts
83
+ * raw key bytes (`baseKeyBytes`) instead of a password. It is intended for use cases
84
+ * where the input key material is already available as a byte array.
85
+ *
86
+ * Notes:
87
+ * - The `baseKeyBytes` that will be the input key material for PBKDF2 is expected to be a
88
+ * low-entropy value, such as a password or passphrase. It should be kept confidential.
89
+ * - In 2023,
90
+ * {@link https://web.archive.org/web/20230123232056/https://cheatsheetseries.owasp.org/cheatsheets/Password_Storage_Cheat_Sheet.html#pbkdf2
91
+ * | OWASP recommended}
92
+ * a minimum of 600,000 iterations for PBKDF2-HMAC-SHA256 and 210,000 for PBKDF2-HMAC-SHA512.
93
+ *
94
+ * @example
95
+ * ```ts
96
+ * const derivedKeyBytes = await Pbkdf2.deriveKeyBytes({
97
+ * baseKeyBytes: new TextEncoder().encode('password'),
98
+ * hash: 'SHA-256',
99
+ * salt: new Uint8Array([...]),
100
+ * iterations: 600_000,
101
+ * length: 256
102
+ * });
103
+ * ```
104
+ *
105
+ * @param params - The parameters for key derivation.
106
+ * @returns A Promise that resolves to the derived key as a byte array.
107
+ */
108
+ static deriveKeyBytes(_a) {
109
+ return __awaiter(this, arguments, void 0, function* ({ baseKeyBytes, hash, salt, iterations, length }) {
110
+ // Get the Web Crypto API interface.
111
+ const webCrypto = getWebcryptoSubtle();
112
+ // Import the password as a raw key for use with the Web Crypto API.
113
+ const webCryptoKey = yield webCrypto.importKey('raw', // key format is raw bytes
114
+ baseKeyBytes, // key data to import
115
+ { name: 'PBKDF2' }, // algorithm identifier
116
+ false, // key is not extractable
117
+ ['deriveBits'] // key usages
118
+ );
119
+ // Derive the bytes using the Web Crypto API.
120
+ const derivedKeyBuffer = yield webCrypto.deriveBits({ name: 'PBKDF2', hash, salt, iterations }, webCryptoKey, length);
121
+ // Convert from ArrayBuffer to Uint8Array.
122
+ const derivedKeyBytes = new Uint8Array(derivedKeyBuffer);
123
+ return derivedKeyBytes;
124
+ });
125
+ }
77
126
  }
78
127
  //# sourceMappingURL=pbkdf2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"pbkdf2.js","sourceRoot":"","sources":["../../../src/primitives/pbkdf2.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AA0C9C;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,OAAO,MAAM;IACjB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA6BG;IACI,MAAM,CAAO,SAAS;6DAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EACjD;YAErB,oEAAoE;YACpE,MAAM,YAAY,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,SAAS,CAChD,KAAK,EACL,QAAQ,EACR,EAAE,IAAI,EAAE,QAAQ,EAAE,EAClB,KAAK,EACL,CAAC,YAAY,CAAC,CACf,CAAC;YAEF,MAAM,gBAAgB,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,UAAU,CACrD,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,EAC1C,YAAY,EACZ,MAAM,CACP,CAAC;YAEF,0CAA0C;YAC1C,MAAM,UAAU,GAAG,IAAI,UAAU,CAAC,gBAAgB,CAAC,CAAC;YAEpD,OAAO,UAAU,CAAC;QACpB,CAAC;KAAA;CACF"}
1
+ {"version":3,"file":"pbkdf2.js","sourceRoot":"","sources":["../../../src/primitives/pbkdf2.ts"],"names":[],"mappings":";;;;;;;;;AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAE9D,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAuE9C;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,OAAO,MAAM;IACjB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA6BG;IACI,MAAM,CAAO,SAAS;6DAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EACjD;YAErB,oEAAoE;YACpE,MAAM,YAAY,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,SAAS,CAChD,KAAK,EACL,QAAQ,EACR,EAAE,IAAI,EAAE,QAAQ,EAAE,EAClB,KAAK,EACL,CAAC,YAAY,CAAC,CACf,CAAC;YAEF,MAAM,gBAAgB,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,UAAU,CACrD,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,EAC1C,YAAY,EACZ,MAAM,CACP,CAAC;YAEF,0CAA0C;YAC1C,MAAM,UAAU,GAAG,IAAI,UAAU,CAAC,gBAAgB,CAAC,CAAC;YAEpD,OAAO,UAAU,CAAC;QACpB,CAAC;KAAA;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA6BG;IACI,MAAM,CAAO,cAAc;6DAAC,EAAE,YAAY,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAC5C;YAEnC,oCAAoC;YACpC,MAAM,SAAS,GAAG,kBAAkB,EAAkB,CAAC;YAEvD,oEAAoE;YACpE,MAAM,YAAY,GAAG,MAAM,SAAS,CAAC,SAAS,CAC5C,KAAK,EAAE,0BAA0B;YACjC,YAAY,EAAE,qBAAqB;YACnC,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,uBAAuB;YAC3C,KAAK,EAAE,yBAAyB;YAChC,CAAC,YAAY,CAAC,CAAC,aAAa;aAC7B,CAAC;YAEF,6CAA6C;YAC7C,MAAM,gBAAgB,GAAG,MAAM,SAAS,CAAC,UAAU,CACjD,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,EAC1C,YAAY,EACZ,MAAM,CACP,CAAC;YAEF,0CAA0C;YAC1C,MAAM,eAAe,GAAG,IAAI,UAAU,CAAC,gBAAgB,CAAC,CAAC;YAEzD,OAAO,eAAe,CAAC;QACzB,CAAC;KAAA;CACF"}
@@ -19,9 +19,9 @@ var __rest = (this && this.__rest) || function (s, e) {
19
19
  return t;
20
20
  };
21
21
  import { Convert } from '@enbox/common';
22
- import { sha256 } from '@noble/hashes/sha256';
23
- import { secp256k1 } from '@noble/curves/secp256k1';
24
22
  import { numberToBytesBE } from '@noble/curves/abstract/utils';
23
+ import { secp256k1 } from '@noble/curves/secp256k1';
24
+ import { sha256 } from '@noble/hashes/sha256';
25
25
  import { computeJwkThumbprint, isEcPrivateJwk, isEcPublicJwk } from '../jose/jwk.js';
26
26
  /**
27
27
  * The `Secp256k1` class provides a comprehensive suite of utilities for working with
@@ -454,7 +454,7 @@ export class Secp256k1 {
454
454
  throw new Error(`Secp256k1: The provided key is not a secp256k1 private JWK.`);
455
455
  }
456
456
  // Remove the private key property ('d') and make a shallow copy of the provided key.
457
- let { d } = key, publicKey = __rest(key, ["d"]);
457
+ const { d } = key, publicKey = __rest(key, ["d"]);
458
458
  // If the key ID is undefined, set it to the JWK thumbprint.
459
459
  (_b = publicKey.kid) !== null && _b !== void 0 ? _b : (publicKey.kid = yield computeJwkThumbprint({ jwk: publicKey }));
460
460
  return publicKey;
@@ -696,7 +696,7 @@ export class Secp256k1 {
696
696
  // Check if points are on the Short Weierstrass curve.
697
697
  point.assertValidity();
698
698
  }
699
- catch (error) {
699
+ catch (_b) {
700
700
  return false;
701
701
  }
702
702
  return true;
@@ -1 +1 @@
1
- {"version":3,"file":"secp256k1.js","sourceRoot":"","sources":["../../../src/primitives/secp256k1.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"secp256k1.js","sourceRoot":"","sources":["../../../src/primitives/secp256k1.ts"],"names":[],"mappings":"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"}
@@ -19,9 +19,9 @@ var __rest = (this && this.__rest) || function (s, e) {
19
19
  return t;
20
20
  };
21
21
  import { Convert } from '@enbox/common';
22
- import { sha256 } from '@noble/hashes/sha256';
23
- import { secp256r1 } from '@noble/curves/p256';
24
22
  import { numberToBytesBE } from '@noble/curves/abstract/utils';
23
+ import { secp256r1 } from '@noble/curves/p256';
24
+ import { sha256 } from '@noble/hashes/sha256';
25
25
  import { computeJwkThumbprint, isEcPrivateJwk, isEcPublicJwk } from '../jose/jwk.js';
26
26
  /**
27
27
  * The `Secp256r1` class provides a comprehensive suite of utilities for working with
@@ -454,7 +454,7 @@ export class Secp256r1 {
454
454
  throw new Error(`Secp256r1: The provided key is not a 'P-256' private JWK.`);
455
455
  }
456
456
  // Remove the private key property ('d') and make a shallow copy of the provided key.
457
- let { d } = key, publicKey = __rest(key, ["d"]);
457
+ const { d } = key, publicKey = __rest(key, ["d"]);
458
458
  // If the key ID is undefined, set it to the JWK thumbprint.
459
459
  (_b = publicKey.kid) !== null && _b !== void 0 ? _b : (publicKey.kid = yield computeJwkThumbprint({ jwk: publicKey }));
460
460
  return publicKey;
@@ -696,7 +696,7 @@ export class Secp256r1 {
696
696
  // Check if points are on the Short Weierstrass curve.
697
697
  point.assertValidity();
698
698
  }
699
- catch (error) {
699
+ catch (_b) {
700
700
  return false;
701
701
  }
702
702
  return true;