ox 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.
Files changed (66) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/dist/core/Engine.d.ts +1 -1
  3. package/dist/core/Engine.d.ts.map +1 -1
  4. package/dist/core/Engine.js.map +1 -1
  5. package/dist/core/Json.js +1 -1
  6. package/dist/core/Json.js.map +1 -1
  7. package/dist/core/MlDsa44.d.ts +389 -0
  8. package/dist/core/MlDsa44.d.ts.map +1 -0
  9. package/dist/core/MlDsa44.js +206 -0
  10. package/dist/core/MlDsa44.js.map +1 -0
  11. package/dist/core/internal/engine.d.ts +35 -1
  12. package/dist/core/internal/engine.d.ts.map +1 -1
  13. package/dist/core/internal/engine.js +2 -0
  14. package/dist/core/internal/engine.js.map +1 -1
  15. package/dist/core/internal/mlDsa44.d.ts +10 -0
  16. package/dist/core/internal/mlDsa44.d.ts.map +1 -0
  17. package/dist/core/internal/mlDsa44.js +41 -0
  18. package/dist/core/internal/mlDsa44.js.map +1 -0
  19. package/dist/index.d.ts +39 -0
  20. package/dist/index.d.ts.map +1 -1
  21. package/dist/index.js +39 -0
  22. package/dist/index.js.map +1 -1
  23. package/dist/wasm/Engine.d.ts +5 -1
  24. package/dist/wasm/Engine.d.ts.map +1 -1
  25. package/dist/wasm/Engine.js +9 -1
  26. package/dist/wasm/Engine.js.map +1 -1
  27. package/dist/wasm/MlDsa44.d.ts +55 -0
  28. package/dist/wasm/MlDsa44.d.ts.map +1 -0
  29. package/dist/wasm/MlDsa44.js +143 -0
  30. package/dist/wasm/MlDsa44.js.map +1 -0
  31. package/dist/wasm/index.d.ts +23 -2
  32. package/dist/wasm/index.d.ts.map +1 -1
  33. package/dist/wasm/index.js +23 -2
  34. package/dist/wasm/index.js.map +1 -1
  35. package/dist/wasm/internal/mldsa44.d.ts +12 -0
  36. package/dist/wasm/internal/mldsa44.d.ts.map +1 -0
  37. package/dist/wasm/internal/mldsa44.js +5 -0
  38. package/dist/wasm/internal/mldsa44.js.map +1 -0
  39. package/dist/wasm/internal/mldsa44.wasm.d.ts +3 -0
  40. package/dist/wasm/internal/mldsa44.wasm.d.ts.map +1 -0
  41. package/dist/wasm/internal/mldsa44.wasm.js +10 -0
  42. package/dist/wasm/internal/mldsa44.wasm.js.map +1 -0
  43. package/dist/zod/TypedData.d.ts +2 -2
  44. package/package.json +14 -2
  45. package/src/core/Engine.ts +1 -0
  46. package/src/core/Json.ts +1 -1
  47. package/src/core/MlDsa44.ts +415 -0
  48. package/src/core/_test/Engine.test.ts +2 -2
  49. package/src/core/_test/Json.test.ts +6 -0
  50. package/src/core/_test/MlDsa44.test-d.ts +56 -0
  51. package/src/core/_test/MlDsa44.test.ts +393 -0
  52. package/src/core/_test/index.test.ts +1 -0
  53. package/src/core/internal/engine.ts +49 -0
  54. package/src/core/internal/mlDsa44.ts +74 -0
  55. package/src/index.ts +41 -0
  56. package/src/version.ts +1 -1
  57. package/src/wasm/Engine.ts +19 -7
  58. package/src/wasm/MlDsa44.ts +190 -0
  59. package/src/wasm/_test/Engine.test-d.ts +2 -0
  60. package/src/wasm/_test/Engine.test.ts +16 -0
  61. package/src/wasm/_test/MlDsa44.test-d.ts +28 -0
  62. package/src/wasm/_test/MlDsa44.test.ts +192 -0
  63. package/src/wasm/index.ts +24 -2
  64. package/src/wasm/internal/mldsa44.ts +34 -0
  65. package/src/wasm/internal/mldsa44.wasm.ts +11 -0
  66. package/wasm/vendor/mldsa-native/LICENSE +286 -0
package/CHANGELOG.md CHANGED
@@ -1,5 +1,17 @@
1
1
  # ox
2
2
 
3
+ ## 1.6.1
4
+
5
+ ### Patch Changes
6
+
7
+ - [#365](https://github.com/wevm/ox/pull/365) [`c8bcc7e`](https://github.com/wevm/ox/commit/c8bcc7e7b85bf319f8acdbf386d303314cbabbff) Thanks [@RezaRahemtola](https://github.com/RezaRahemtola)! - Fixed `Json.stringify` throwing `TypeError` when a replacer returned a `bigint` unchanged.
8
+
9
+ ## 1.6.0
10
+
11
+ ### Minor Changes
12
+
13
+ - [#350](https://github.com/wevm/ox/pull/350) [`7cabe8b`](https://github.com/wevm/ox/commit/7cabe8bcda8d54c4b63cb39f601ed77e586bd47e) Thanks [@jxom](https://github.com/jxom)! - Added `MlDsa44` for ML-DSA-44 signatures and included its WASM provider with `Secp256k1` in `ox/wasm`'s aggregate engine.
14
+
3
15
  ## 1.5.0
4
16
 
5
17
  ### Minor Changes
@@ -1,6 +1,6 @@
1
1
  import * as Errors from './Errors.js';
2
2
  import * as engine from './internal/engine.js';
3
- export type { Bls, Ecdh, Ecdsa, Eddsa, Engine, Hash, HashState, Keystore, Mnemonic, } from './internal/engine.js';
3
+ export type { Bls, Ecdh, Ecdsa, Eddsa, Engine, Hash, HashState, Keystore, MlDsa, Mnemonic, } from './internal/engine.js';
4
4
  /**
5
5
  * Resolves and installs crypto implementations.
6
6
  *
@@ -1 +1 @@
1
- {"version":3,"file":"Engine.d.ts","sourceRoot":"","sources":["../../src/core/Engine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Engine.d.ts","sourceRoot":"","sources":["../../src/core/Engine.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"Engine.js","sourceRoot":"","sources":["../../src/core/Engine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Engine.js","sourceRoot":"","sources":["../../src/core/Engine.ts"],"names":[],"mappings":"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"}
package/dist/core/Json.js CHANGED
@@ -125,7 +125,7 @@ export function parse(string, reviver) {
125
125
  export function stringify(value, replacer, space) {
126
126
  return JSON.stringify(value, (key, value) => {
127
127
  if (typeof replacer === 'function')
128
- return replacer(key, value);
128
+ value = replacer(key, value);
129
129
  if (typeof value === 'bigint')
130
130
  return value.toString() + bigIntSuffix;
131
131
  return value;
@@ -1 +1 @@
1
- {"version":3,"file":"Json.js","sourceRoot":"","sources":["../../src/core/Json.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Json.js","sourceRoot":"","sources":["../../src/core/Json.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,389 @@
1
+ import * as Bytes from './Bytes.js';
2
+ import * as Errors from './Errors.js';
3
+ import * as Hash from './Hash.js';
4
+ import * as Hex from './Hex.js';
5
+ /** Re-export of noble/post-quantum ML-DSA-44 utilities. */
6
+ export declare const noble: import("@noble/post-quantum/utils.js").CryptoKeys & {
7
+ lengths: {
8
+ signRand?: number;
9
+ signature?: number;
10
+ };
11
+ sign: (msg: import("@noble/post-quantum/utils.js").TArg<Uint8Array>, secretKey: import("@noble/post-quantum/utils.js").TArg<Uint8Array>, opts
12
+ /** Thrown when a context string exceeds the 255-byte FIPS 204 limit. */
13
+ ?: import("@noble/post-quantum/utils.js").TArg<import("@noble/post-quantum/utils.js").SigOpts>) => import("@noble/post-quantum/utils.js").TRet<Uint8Array>;
14
+ verify: (sig: import("@noble/post-quantum/utils.js").TArg<Uint8Array>, msg: import("@noble/post-quantum/utils.js").TArg<Uint8Array>, publicKey: import("@noble/post-quantum/utils.js").TArg<Uint8Array>, opts?: import("@noble/post-quantum/utils.js").TArg<import("@noble/post-quantum/utils.js").VerOpts>) => boolean;
15
+ } & {
16
+ internal: import("@noble/post-quantum/utils.js").TRet<import("@noble/post-quantum/ml-dsa.js").DSAInternal>;
17
+ } & {
18
+ info?: ({
19
+ type?: string;
20
+ } & {
21
+ type?: string | undefined;
22
+ }) | undefined;
23
+ lengths: {
24
+ seed?: number;
25
+ publicKey?: number;
26
+ secretKey?: number;
27
+ } & {
28
+ signRand?: number;
29
+ signature?: number;
30
+ } & {
31
+ seed?: number | undefined;
32
+ publicKey?: number | undefined;
33
+ secretKey?: number | undefined;
34
+ signRand?: number | undefined;
35
+ signature?: number | undefined;
36
+ };
37
+ keygen: ((seed?: import("@noble/post-quantum/utils.js").TArg<Uint8Array>) => {
38
+ secretKey: import("@noble/post-quantum/utils.js").TRet<Uint8Array>;
39
+ publicKey: import("@noble/post-quantum/utils.js").TRet<Uint8Array>;
40
+ }) & ((seed?: import("@noble/post-quantum/utils.js").TArg<Uint8Array | undefined>) => {
41
+ secretKey: import("@noble/post-quantum/utils.js").TRet<Uint8Array>;
42
+ publicKey: import("@noble/post-quantum/utils.js").TRet<Uint8Array>;
43
+ } & {
44
+ secretKey: import("@noble/post-quantum/utils.js").TRet<Uint8Array>;
45
+ publicKey: import("@noble/post-quantum/utils.js").TRet<Uint8Array>;
46
+ }) & {};
47
+ getPublicKey: ((secretKey: import("@noble/post-quantum/utils.js").TArg<Uint8Array>) => import("@noble/post-quantum/utils.js").TRet<Uint8Array>) & ((secretKey: Uint8Array) => Uint8Array) & {};
48
+ sign: ((msg: import("@noble/post-quantum/utils.js").TArg<Uint8Array>, secretKey: import("@noble/post-quantum/utils.js").TArg<Uint8Array>, opts?: import("@noble/post-quantum/utils.js").TArg<import("@noble/post-quantum/utils.js").SigOpts>) => import("@noble/post-quantum/utils.js").TRet<Uint8Array>) & ((msg: Uint8Array, secretKey: Uint8Array, opts?: import("@noble/post-quantum/utils.js").TArg<import("@noble/post-quantum/utils.js").TArg<import("@noble/post-quantum/utils.js").SigOpts> | undefined>) => Uint8Array) & {};
49
+ verify: ((sig: import("@noble/post-quantum/utils.js").TArg<Uint8Array>, msg: import("@noble/post-quantum/utils.js").TArg<Uint8Array>, publicKey: import("@noble/post-quantum/utils.js").TArg<Uint8Array>, opts?: import("@noble/post-quantum/utils.js").TArg<import("@noble/post-quantum/utils.js").VerOpts>) => boolean) & ((sig: Uint8Array, msg: Uint8Array, publicKey: Uint8Array, opts?: import("@noble/post-quantum/utils.js").TArg<import("@noble/post-quantum/utils.js").TArg<import("@noble/post-quantum/utils.js").VerOpts> | undefined>) => boolean) & {};
50
+ internal: import("@noble/post-quantum/utils.js").CryptoKeys & {
51
+ lengths: import("@noble/post-quantum/utils.js").Signer["lengths"];
52
+ sign: (msg: import("@noble/post-quantum/utils.js").TArg<Uint8Array>, secretKey: import("@noble/post-quantum/utils.js").TArg<Uint8Array>, opts?: import("@noble/post-quantum/utils.js").TArg<import("@noble/post-quantum/utils.js").SigOpts & import("@noble/post-quantum/ml-dsa.js").DSAInternalOpts>) => import("@noble/post-quantum/utils.js").TRet<Uint8Array>;
53
+ verify: (sig: import("@noble/post-quantum/utils.js").TArg<Uint8Array>, msg: import("@noble/post-quantum/utils.js").TArg<Uint8Array>, pubKey: import("@noble/post-quantum/utils.js").TArg<Uint8Array>, opts?: import("@noble/post-quantum/utils.js").TArg<import("@noble/post-quantum/utils.js").VerOpts & import("@noble/post-quantum/ml-dsa.js").DSAInternalOpts>) => boolean;
54
+ } & {
55
+ info?: ({
56
+ type?: string;
57
+ } & {
58
+ type?: string | undefined;
59
+ }) | undefined;
60
+ lengths: {
61
+ seed?: number;
62
+ publicKey?: number;
63
+ secretKey?: number;
64
+ } & {
65
+ signRand?: number;
66
+ signature?: number;
67
+ } & {
68
+ seed?: number | undefined;
69
+ publicKey?: number | undefined;
70
+ secretKey?: number | undefined;
71
+ signRand?: number | undefined;
72
+ signature?: number | undefined;
73
+ };
74
+ keygen: ((seed?: import("@noble/post-quantum/utils.js").TArg<Uint8Array>) => {
75
+ secretKey: import("@noble/post-quantum/utils.js").TRet<Uint8Array>;
76
+ publicKey: import("@noble/post-quantum/utils.js").TRet<Uint8Array>;
77
+ }) & ((seed?: import("@noble/post-quantum/utils.js").TArg<Uint8Array | undefined>) => {
78
+ secretKey: import("@noble/post-quantum/utils.js").TRet<Uint8Array>;
79
+ publicKey: import("@noble/post-quantum/utils.js").TRet<Uint8Array>;
80
+ } & {
81
+ secretKey: import("@noble/post-quantum/utils.js").TRet<Uint8Array>;
82
+ publicKey: import("@noble/post-quantum/utils.js").TRet<Uint8Array>;
83
+ }) & {};
84
+ getPublicKey: ((secretKey: import("@noble/post-quantum/utils.js").TArg<Uint8Array>) => import("@noble/post-quantum/utils.js").TRet<Uint8Array>) & ((secretKey: Uint8Array) => Uint8Array) & {};
85
+ sign: ((msg: import("@noble/post-quantum/utils.js").TArg<Uint8Array>, secretKey: import("@noble/post-quantum/utils.js").TArg<Uint8Array>, opts?: import("@noble/post-quantum/utils.js").TArg<import("@noble/post-quantum/utils.js").SigOpts & import("@noble/post-quantum/ml-dsa.js").DSAInternalOpts>) => import("@noble/post-quantum/utils.js").TRet<Uint8Array>) & ((msg: Uint8Array, secretKey: Uint8Array, opts?: import("@noble/post-quantum/utils.js").TArg<import("@noble/post-quantum/utils.js").TArg<import("@noble/post-quantum/utils.js").VerOpts & {
86
+ extraEntropy?: Uint8Array | false;
87
+ } & import("@noble/post-quantum/ml-dsa.js").DSAInternalOpts> | undefined>) => Uint8Array) & {};
88
+ verify: ((sig: import("@noble/post-quantum/utils.js").TArg<Uint8Array>, msg: import("@noble/post-quantum/utils.js").TArg<Uint8Array>, pubKey: import("@noble/post-quantum/utils.js").TArg<Uint8Array>, opts?: import("@noble/post-quantum/utils.js").TArg<import("@noble/post-quantum/utils.js").VerOpts & import("@noble/post-quantum/ml-dsa.js").DSAInternalOpts>) => boolean) & ((sig: Uint8Array, msg: Uint8Array, pubKey: Uint8Array, opts?: import("@noble/post-quantum/utils.js").TArg<import("@noble/post-quantum/utils.js").TArg<import("@noble/post-quantum/utils.js").VerOpts & import("@noble/post-quantum/ml-dsa.js").DSAInternalOpts> | undefined>) => boolean) & {};
89
+ } & {
90
+ info?: ({
91
+ type?: string;
92
+ } & {
93
+ type?: string | undefined;
94
+ } & {
95
+ type?: string | undefined;
96
+ }) | undefined;
97
+ lengths: {
98
+ seed?: number;
99
+ publicKey?: number;
100
+ secretKey?: number;
101
+ } & {
102
+ signRand?: number;
103
+ signature?: number;
104
+ } & {
105
+ seed?: number | undefined;
106
+ publicKey?: number | undefined;
107
+ secretKey?: number | undefined;
108
+ signRand?: number | undefined;
109
+ signature?: number | undefined;
110
+ } & {
111
+ seed?: number | undefined;
112
+ publicKey?: number | undefined;
113
+ secretKey?: number | undefined;
114
+ signRand?: number | undefined;
115
+ signature?: number | undefined;
116
+ };
117
+ keygen: ((seed?: import("@noble/post-quantum/utils.js").TArg<Uint8Array>) => {
118
+ secretKey: import("@noble/post-quantum/utils.js").TRet<Uint8Array>;
119
+ publicKey: import("@noble/post-quantum/utils.js").TRet<Uint8Array>;
120
+ }) & ((seed?: import("@noble/post-quantum/utils.js").TArg<Uint8Array | undefined>) => {
121
+ secretKey: import("@noble/post-quantum/utils.js").TRet<Uint8Array>;
122
+ publicKey: import("@noble/post-quantum/utils.js").TRet<Uint8Array>;
123
+ } & {
124
+ secretKey: import("@noble/post-quantum/utils.js").TRet<Uint8Array>;
125
+ publicKey: import("@noble/post-quantum/utils.js").TRet<Uint8Array>;
126
+ }) & {} & ((seed?: import("@noble/post-quantum/utils.js").TArg<import("@noble/post-quantum/utils.js").TArg<Uint8Array | undefined>>) => {
127
+ secretKey: import("@noble/post-quantum/utils.js").TRet<Uint8Array>;
128
+ publicKey: import("@noble/post-quantum/utils.js").TRet<Uint8Array>;
129
+ } & {
130
+ secretKey: import("@noble/post-quantum/utils.js").TRet<Uint8Array>;
131
+ publicKey: import("@noble/post-quantum/utils.js").TRet<Uint8Array>;
132
+ } & {
133
+ secretKey: import("@noble/post-quantum/utils.js").TRet<Uint8Array>;
134
+ publicKey: import("@noble/post-quantum/utils.js").TRet<Uint8Array>;
135
+ }) & {};
136
+ getPublicKey: ((secretKey: import("@noble/post-quantum/utils.js").TArg<Uint8Array>) => import("@noble/post-quantum/utils.js").TRet<Uint8Array>) & ((secretKey: Uint8Array) => Uint8Array) & {} & {};
137
+ sign: ((msg: import("@noble/post-quantum/utils.js").TArg<Uint8Array>, secretKey: import("@noble/post-quantum/utils.js").TArg<Uint8Array>, opts?: import("@noble/post-quantum/utils.js").TArg<import("@noble/post-quantum/utils.js").SigOpts & import("@noble/post-quantum/ml-dsa.js").DSAInternalOpts>) => import("@noble/post-quantum/utils.js").TRet<Uint8Array>) & ((msg: Uint8Array, secretKey: Uint8Array, opts?: import("@noble/post-quantum/utils.js").TArg<import("@noble/post-quantum/utils.js").TArg<import("@noble/post-quantum/utils.js").VerOpts & {
138
+ extraEntropy?: Uint8Array | false;
139
+ } & import("@noble/post-quantum/ml-dsa.js").DSAInternalOpts> | undefined>) => Uint8Array) & {} & {};
140
+ verify: ((sig: import("@noble/post-quantum/utils.js").TArg<Uint8Array>, msg: import("@noble/post-quantum/utils.js").TArg<Uint8Array>, pubKey: import("@noble/post-quantum/utils.js").TArg<Uint8Array>, opts?: import("@noble/post-quantum/utils.js").TArg<import("@noble/post-quantum/utils.js").VerOpts & import("@noble/post-quantum/ml-dsa.js").DSAInternalOpts>) => boolean) & ((sig: Uint8Array, msg: Uint8Array, pubKey: Uint8Array, opts?: import("@noble/post-quantum/utils.js").TArg<import("@noble/post-quantum/utils.js").TArg<import("@noble/post-quantum/utils.js").VerOpts & import("@noble/post-quantum/ml-dsa.js").DSAInternalOpts> | undefined>) => boolean) & {} & {};
141
+ };
142
+ };
143
+ /** Size of an ML-DSA-44 private key (seed) in bytes. */
144
+ export declare const privateKeySize = 32;
145
+ /** Size of an ML-DSA-44 public key in bytes. */
146
+ export declare const publicKeySize = 1312;
147
+ /** Size of an ML-DSA-44 signature in bytes. */
148
+ export declare const signatureSize = 2420;
149
+ /**
150
+ * Creates a new ML-DSA-44 key pair consisting of a private key and its
151
+ * corresponding public key.
152
+ *
153
+ * The private key is the 32-byte seed (`ξ`) from FIPS 204 key generation —
154
+ * the canonical interchange form of an ML-DSA private key. The 1,312-byte
155
+ * public key is deterministically expanded from it.
156
+ *
157
+ * @example
158
+ * ```ts twoslash
159
+ * import { MlDsa44 } from 'ox'
160
+ *
161
+ * const { privateKey, publicKey } = MlDsa44.createKeyPair()
162
+ * ```
163
+ *
164
+ * @param options - The options to generate the key pair.
165
+ * @returns The generated key pair containing both private and public keys.
166
+ */
167
+ export declare function createKeyPair<as extends 'Hex' | 'Bytes' = 'Hex'>(options?: createKeyPair.Options<as>): createKeyPair.ReturnType<as>;
168
+ export declare namespace createKeyPair {
169
+ type Options<as extends 'Hex' | 'Bytes' = 'Hex'> = {
170
+ /**
171
+ * Format of the returned private and public keys.
172
+ * @default 'Hex'
173
+ */
174
+ as?: as | 'Hex' | 'Bytes' | undefined;
175
+ };
176
+ type ReturnType<as extends 'Hex' | 'Bytes'> = {
177
+ privateKey: (as extends 'Bytes' ? Bytes.Bytes : never) | (as extends 'Hex' ? Hex.Hex : never);
178
+ publicKey: (as extends 'Bytes' ? Bytes.Bytes : never) | (as extends 'Hex' ? Hex.Hex : never);
179
+ };
180
+ type ErrorType = randomPrivateKey.ErrorType | getPublicKey.ErrorType | Errors.GlobalErrorType;
181
+ }
182
+ /**
183
+ * Derives an ML-DSA-44 private key from a 32-byte WebAuthn PRF output.
184
+ *
185
+ * The permanent derivation contract uses the PRF output as the HMAC-SHA256
186
+ * key. Its message is the UTF-8 bytes of `ox.mldsa44.fromPrf.v1` followed by
187
+ * a 32-bit big-endian counter set to zero.
188
+ *
189
+ * @example
190
+ * ```ts twoslash
191
+ * import { MlDsa44 } from 'ox'
192
+ *
193
+ * const privateKey = MlDsa44.fromPrf(
194
+ * '0x000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f'
195
+ * )
196
+ * ```
197
+ *
198
+ * @param value - A 32-byte WebAuthn PRF output.
199
+ * @param options - Options.
200
+ * @returns An ML-DSA-44 private key (32-byte seed).
201
+ */
202
+ export declare function fromPrf<as extends 'Hex' | 'Bytes' = 'Hex'>(value: Hex.Hex | Bytes.Bytes, options?: fromPrf.Options<as>): fromPrf.ReturnType<as>;
203
+ export declare namespace fromPrf {
204
+ type Options<as extends 'Hex' | 'Bytes' = 'Hex'> = {
205
+ /**
206
+ * Format of the returned private key.
207
+ * @default 'Hex'
208
+ */
209
+ as?: as | 'Hex' | 'Bytes' | undefined;
210
+ };
211
+ type ReturnType<as extends 'Hex' | 'Bytes'> = (as extends 'Bytes' ? Bytes.Bytes : never) | (as extends 'Hex' ? Hex.Hex : never);
212
+ type ErrorType = Bytes.concat.ErrorType | Bytes.from.ErrorType | Bytes.fromNumber.ErrorType | Hash.hmac256.ErrorType | Hex.fromBytes.ErrorType | InvalidPrfSizeError | Errors.GlobalErrorType;
213
+ }
214
+ /**
215
+ * Computes the ML-DSA-44 public key from a provided private key.
216
+ *
217
+ * @example
218
+ * ```ts twoslash
219
+ * import { MlDsa44 } from 'ox'
220
+ *
221
+ * const publicKey = MlDsa44.getPublicKey({
222
+ * privateKey: '0x...'
223
+ * })
224
+ * ```
225
+ *
226
+ * @param options - The options to compute the public key.
227
+ * @returns The computed 1,312-byte public key.
228
+ */
229
+ export declare function getPublicKey<as extends 'Hex' | 'Bytes' = 'Hex'>(options: getPublicKey.Options<as>): getPublicKey.ReturnType<as>;
230
+ export declare namespace getPublicKey {
231
+ type Options<as extends 'Hex' | 'Bytes' = 'Hex'> = {
232
+ /**
233
+ * Format of the returned public key.
234
+ * @default 'Hex'
235
+ */
236
+ as?: as | 'Hex' | 'Bytes' | undefined;
237
+ /**
238
+ * Private key (32-byte seed) to compute the public key from.
239
+ */
240
+ privateKey: Hex.Hex | Bytes.Bytes;
241
+ };
242
+ type ReturnType<as extends 'Hex' | 'Bytes'> = (as extends 'Bytes' ? Bytes.Bytes : never) | (as extends 'Hex' ? Hex.Hex : never);
243
+ type ErrorType = Bytes.from.ErrorType | Hex.fromBytes.ErrorType | Errors.GlobalErrorType;
244
+ }
245
+ /**
246
+ * Generates a random ML-DSA-44 private key (32-byte seed).
247
+ *
248
+ * @example
249
+ * ```ts twoslash
250
+ * import { MlDsa44 } from 'ox'
251
+ *
252
+ * const privateKey = MlDsa44.randomPrivateKey()
253
+ * ```
254
+ *
255
+ * @param options - The options to generate the private key.
256
+ * @returns The generated private key.
257
+ */
258
+ export declare function randomPrivateKey<as extends 'Hex' | 'Bytes' = 'Hex'>(options?: randomPrivateKey.Options<as>): randomPrivateKey.ReturnType<as>;
259
+ export declare namespace randomPrivateKey {
260
+ type Options<as extends 'Hex' | 'Bytes' = 'Hex'> = {
261
+ /**
262
+ * Format of the returned private key.
263
+ * @default 'Hex'
264
+ */
265
+ as?: as | 'Hex' | 'Bytes' | undefined;
266
+ };
267
+ type ReturnType<as extends 'Hex' | 'Bytes'> = (as extends 'Bytes' ? Bytes.Bytes : never) | (as extends 'Hex' ? Hex.Hex : never);
268
+ type ErrorType = Hex.fromBytes.ErrorType | Errors.GlobalErrorType;
269
+ }
270
+ /**
271
+ * Signs the payload with the provided private key and returns an ML-DSA-44
272
+ * signature (2,420 bytes).
273
+ *
274
+ * Signing is deterministic by default. Set `extraEntropy` to `true` (or to 32
275
+ * bytes of entropy) for the hedged variant of FIPS 204, which protects against
276
+ * fault attacks and randomness-reuse pitfalls at the cost of reproducibility.
277
+ *
278
+ * @example
279
+ * ```ts twoslash
280
+ * import { MlDsa44 } from 'ox'
281
+ *
282
+ * const signature = MlDsa44.sign({
283
+ * // [!code focus]
284
+ * payload: '0xdeadbeef', // [!code focus]
285
+ * privateKey: '0x...' // [!code focus]
286
+ * }) // [!code focus]
287
+ * ```
288
+ *
289
+ * @param options - The signing options.
290
+ * @returns The ML-DSA-44 signature.
291
+ */
292
+ export declare function sign<as extends 'Hex' | 'Bytes' = 'Hex'>(options: sign.Options<as>): sign.ReturnType<as>;
293
+ export declare namespace sign {
294
+ type Options<as extends 'Hex' | 'Bytes' = 'Hex'> = {
295
+ /**
296
+ * Format of the returned signature.
297
+ * @default 'Hex'
298
+ */
299
+ as?: as | 'Hex' | 'Bytes' | undefined;
300
+ /**
301
+ * Context string for domain separation, at most 255 bytes.
302
+ * @default empty
303
+ */
304
+ context?: Hex.Hex | Bytes.Bytes | undefined;
305
+ /**
306
+ * Extra entropy to add to the signing process. Setting to `true` enables
307
+ * hedged signing with 32 fresh random bytes; 32 bytes may be supplied
308
+ * directly instead.
309
+ * @default false
310
+ */
311
+ extraEntropy?: boolean | Hex.Hex | Bytes.Bytes | undefined;
312
+ /**
313
+ * Payload to sign.
314
+ */
315
+ payload: Hex.Hex | Bytes.Bytes;
316
+ /**
317
+ * ML-DSA-44 private key (32-byte seed).
318
+ */
319
+ privateKey: Hex.Hex | Bytes.Bytes;
320
+ };
321
+ type ReturnType<as extends 'Hex' | 'Bytes'> = (as extends 'Bytes' ? Bytes.Bytes : never) | (as extends 'Hex' ? Hex.Hex : never);
322
+ type ErrorType = Bytes.from.ErrorType | Hex.fromBytes.ErrorType | InvalidContextSizeError | Errors.GlobalErrorType;
323
+ }
324
+ /**
325
+ * Verifies a payload was signed by the provided public key.
326
+ *
327
+ * @example
328
+ * ```ts twoslash
329
+ * import { MlDsa44 } from 'ox'
330
+ *
331
+ * const { privateKey, publicKey } = MlDsa44.createKeyPair()
332
+ * const signature = MlDsa44.sign({
333
+ * payload: '0xdeadbeef',
334
+ * privateKey
335
+ * })
336
+ *
337
+ * const verified = MlDsa44.verify({
338
+ * // [!code focus]
339
+ * publicKey, // [!code focus]
340
+ * payload: '0xdeadbeef', // [!code focus]
341
+ * signature // [!code focus]
342
+ * }) // [!code focus]
343
+ * ```
344
+ *
345
+ * @param options - The verification options.
346
+ * @returns Whether the payload was signed by the provided public key.
347
+ */
348
+ export declare function verify(options: verify.Options): boolean;
349
+ export declare namespace verify {
350
+ type Options = {
351
+ /**
352
+ * Context string for domain separation, at most 255 bytes.
353
+ * @default empty
354
+ */
355
+ context?: Hex.Hex | Bytes.Bytes | undefined;
356
+ /** Payload that was signed. */
357
+ payload: Hex.Hex | Bytes.Bytes;
358
+ /** Public key that signed the payload. */
359
+ publicKey: Hex.Hex | Bytes.Bytes;
360
+ /** Signature of the payload. */
361
+ signature: Hex.Hex | Bytes.Bytes;
362
+ };
363
+ type ErrorType = Bytes.from.ErrorType | InvalidContextSizeError | Errors.GlobalErrorType;
364
+ }
365
+ /** Thrown when a context string exceeds the 255-byte FIPS 204 limit. */
366
+ export declare class InvalidContextSizeError extends Errors.BaseError {
367
+ readonly name = "MlDsa44.InvalidContextSizeError";
368
+ constructor(options: InvalidContextSizeError.Options);
369
+ }
370
+ export declare namespace InvalidContextSizeError {
371
+ /** Options for {@link ox#MlDsa44.InvalidContextSizeError}. */
372
+ type Options = {
373
+ /** Received context size. */
374
+ size: number;
375
+ };
376
+ }
377
+ /** Thrown when a WebAuthn PRF output is not 32 bytes. */
378
+ export declare class InvalidPrfSizeError extends Errors.BaseError {
379
+ readonly name = "MlDsa44.InvalidPrfSizeError";
380
+ constructor(options: InvalidPrfSizeError.Options);
381
+ }
382
+ export declare namespace InvalidPrfSizeError {
383
+ /** Options for {@link ox#MlDsa44.InvalidPrfSizeError}. */
384
+ type Options = {
385
+ /** Received PRF output size. */
386
+ size: number;
387
+ };
388
+ }
389
+ //# sourceMappingURL=MlDsa44.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MlDsa44.d.ts","sourceRoot":"","sources":["../../src/core/MlDsa44.ts"],"names":[],"mappings":"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"}