@lindorm/ec 0.2.11 → 0.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +27 -13
- package/dist/classes/EcKit.d.ts +2 -2
- package/dist/classes/EcKit.d.ts.map +1 -1
- package/dist/classes/EcKit.js +11 -15
- package/dist/classes/EcKit.js.map +1 -1
- package/dist/classes/index.d.ts +1 -1
- package/dist/classes/index.d.ts.map +1 -1
- package/dist/classes/index.js +1 -17
- package/dist/classes/index.js.map +1 -1
- package/dist/errors/EcError.js +2 -6
- package/dist/errors/EcError.js.map +1 -1
- package/dist/errors/index.d.ts +1 -1
- package/dist/errors/index.d.ts.map +1 -1
- package/dist/errors/index.js +1 -17
- package/dist/errors/index.js.map +1 -1
- package/dist/index.d.ts +3 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -19
- package/dist/index.js.map +1 -1
- package/dist/internal/ec-signature.d.ts +1 -1
- package/dist/internal/ec-signature.d.ts.map +1 -1
- package/dist/internal/ec-signature.js +18 -24
- package/dist/internal/ec-signature.js.map +1 -1
- package/dist/internal/get-key.d.ts +1 -1
- package/dist/internal/get-key.d.ts.map +1 -1
- package/dist/internal/get-key.js +5 -10
- package/dist/internal/get-key.js.map +1 -1
- package/dist/internal/index.d.ts +4 -4
- package/dist/internal/index.d.ts.map +1 -1
- package/dist/internal/index.js +4 -20
- package/dist/internal/index.js.map +1 -1
- package/dist/internal/map-algorithm.d.ts +2 -2
- package/dist/internal/map-algorithm.d.ts.map +1 -1
- package/dist/internal/map-algorithm.js +5 -9
- package/dist/internal/map-algorithm.js.map +1 -1
- package/dist/internal/raw.d.ts +1 -1
- package/dist/internal/raw.d.ts.map +1 -1
- package/dist/internal/raw.js +6 -11
- package/dist/internal/raw.js.map +1 -1
- package/dist/types/ec-kit.d.ts +2 -2
- package/dist/types/ec-kit.d.ts.map +1 -1
- package/dist/types/ec-kit.js +1 -2
- package/dist/types/index.d.ts +1 -1
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js +1 -17
- package/dist/types/index.js.map +1 -1
- package/package.json +19 -12
- package/CHANGELOG.md +0 -108
package/README.md
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
# @lindorm/ec
|
|
2
2
|
|
|
3
|
-
ECDSA
|
|
3
|
+
ECDSA signing kit built on Node's `crypto` module and [`@lindorm/kryptos`](https://www.npmjs.com/package/@lindorm/kryptos). Provides an `EcKit` class that implements the `IKeyKit` contract used across the Lindorm cryptography packages.
|
|
4
|
+
|
|
5
|
+
This package is **ESM-only**.
|
|
4
6
|
|
|
5
7
|
## Installation
|
|
6
8
|
|
|
@@ -8,6 +10,17 @@ ECDSA digital signature kit built on Node's `crypto` module and [`@lindorm/krypt
|
|
|
8
10
|
npm install @lindorm/ec
|
|
9
11
|
```
|
|
10
12
|
|
|
13
|
+
`EcKit` accepts an `IKryptos` instance constructed by the consumer, so [`@lindorm/kryptos`](https://www.npmjs.com/package/@lindorm/kryptos) must also be installed in your project.
|
|
14
|
+
|
|
15
|
+
## Features
|
|
16
|
+
|
|
17
|
+
- Sign, verify, and assert ECDSA signatures over `Buffer` or `string` input
|
|
18
|
+
- Supports `ES256`, `ES384`, and `ES512` (P-256 / P-384 / P-521 curves)
|
|
19
|
+
- DSA encoding selectable between `der` and `ieee-p1363`
|
|
20
|
+
- Optional raw `r||s` signature output for JWT/JWS interop
|
|
21
|
+
- Configurable string output encoding via Node's `BufferEncoding`
|
|
22
|
+
- Rejects non-EC keys and EC encryption algorithms at construction time
|
|
23
|
+
|
|
11
24
|
## Quick Start
|
|
12
25
|
|
|
13
26
|
```typescript
|
|
@@ -17,16 +30,12 @@ import { KryptosKit } from "@lindorm/kryptos";
|
|
|
17
30
|
const kryptos = KryptosKit.generate.sig.ec({ algorithm: "ES512" });
|
|
18
31
|
const kit = new EcKit({ kryptos });
|
|
19
32
|
|
|
20
|
-
// Sign
|
|
21
33
|
const signature = kit.sign("hello world");
|
|
22
34
|
|
|
23
|
-
// Verify
|
|
24
35
|
kit.verify("hello world", signature); // true
|
|
25
36
|
|
|
26
|
-
//
|
|
27
|
-
kit.assert("hello world", signature);
|
|
37
|
+
kit.assert("hello world", signature); // throws EcError if invalid
|
|
28
38
|
|
|
29
|
-
// Format Buffer to string
|
|
30
39
|
kit.format(signature); // base64 string
|
|
31
40
|
```
|
|
32
41
|
|
|
@@ -36,12 +45,12 @@ kit.format(signature); // base64 string
|
|
|
36
45
|
new EcKit({
|
|
37
46
|
kryptos, // IKryptos — must be an EC key with a signing algorithm
|
|
38
47
|
dsa: "der", // DsaEncoding — "der" | "ieee-p1363" (default: "der")
|
|
39
|
-
encoding: "base64", // BufferEncoding —
|
|
40
|
-
raw: false, // boolean —
|
|
48
|
+
encoding: "base64", // BufferEncoding — string encoding for verify/format (default: "base64")
|
|
49
|
+
raw: false, // boolean — emit/accept raw r||s signatures (default: false)
|
|
41
50
|
});
|
|
42
51
|
```
|
|
43
52
|
|
|
44
|
-
The constructor validates that the key is an EC
|
|
53
|
+
The constructor validates that the key is an EC key with one of the supported signing algorithms (`ES256`, `ES384`, `ES512`). EC encryption keys (e.g. `ECDH-ES`) and non-EC keys are rejected with an `EcError`.
|
|
45
54
|
|
|
46
55
|
## API
|
|
47
56
|
|
|
@@ -56,6 +65,11 @@ class EcKit implements IKeyKit {
|
|
|
56
65
|
|
|
57
66
|
`KeyData` is `Buffer | string`.
|
|
58
67
|
|
|
68
|
+
- `sign(data)` — produces a DER-encoded signature, or raw `r||s` if `raw: true` was passed to the constructor.
|
|
69
|
+
- `verify(data, signature)` — returns `true` if the signature is valid. String signatures are decoded using the configured `encoding`.
|
|
70
|
+
- `assert(data, signature)` — same as `verify`, but throws `EcError` instead of returning `false`.
|
|
71
|
+
- `format(buffer)` — encodes a signature `Buffer` to a string using the configured `encoding`.
|
|
72
|
+
|
|
59
73
|
## Supported Algorithms
|
|
60
74
|
|
|
61
75
|
| Algorithm | Curve | Hash |
|
|
@@ -66,14 +80,14 @@ class EcKit implements IKeyKit {
|
|
|
66
80
|
|
|
67
81
|
## DSA Encoding
|
|
68
82
|
|
|
69
|
-
-
|
|
70
|
-
-
|
|
83
|
+
- `der` (default) — standard ASN.1 DER encoding produced by Node's `crypto`.
|
|
84
|
+
- `ieee-p1363` — fixed-length encoding produced by Node's `crypto` when `dsaEncoding` is set.
|
|
71
85
|
|
|
72
|
-
The `raw` option
|
|
86
|
+
The separate `raw` option produces or accepts a manually built `r||s` concatenation (each component padded to the curve's byte size). This is useful for JWT/JWS compatibility where the wire format is raw `r||s`.
|
|
73
87
|
|
|
74
88
|
## Error Handling
|
|
75
89
|
|
|
76
|
-
All errors are `EcError
|
|
90
|
+
All errors thrown by this package are instances of `EcError`:
|
|
77
91
|
|
|
78
92
|
```typescript
|
|
79
93
|
import { EcError } from "@lindorm/ec";
|
package/dist/classes/EcKit.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { IKeyKit, KeyData } from "@lindorm/types";
|
|
2
|
-
import { EcKitOptions } from "../types";
|
|
1
|
+
import type { IKeyKit, KeyData } from "@lindorm/types";
|
|
2
|
+
import type { EcKitOptions } from "../types/index.js";
|
|
3
3
|
export declare class EcKit implements IKeyKit {
|
|
4
4
|
private readonly dsa;
|
|
5
5
|
private readonly encoding;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EcKit.d.ts","sourceRoot":"","sources":["../../src/classes/EcKit.ts"],"names":[],"mappings":"AAMA,OAAO,EAAe,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"EcKit.d.ts","sourceRoot":"","sources":["../../src/classes/EcKit.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAe,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAEpE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAOtD,qBAAa,KAAM,YAAW,OAAO;IACnC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAc;IAClC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAiB;IAC1C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAa;IACrC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAU;gBAEX,OAAO,EAAE,YAAY;IAgBjC,IAAI,CAAC,IAAI,EAAE,OAAO,GAAG,MAAM;IAS3B,MAAM,CAAC,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,GAAG,OAAO;IAWlD,MAAM,CAAC,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,GAAG,IAAI;IAW/C,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;CAGpC"}
|
package/dist/classes/EcKit.js
CHANGED
|
@@ -1,10 +1,7 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
const errors_1 = require("../errors");
|
|
6
|
-
const index_1 = require("../internal/index");
|
|
7
|
-
class EcKit {
|
|
1
|
+
import { EC_SIG_ALGORITHMS, KryptosKit, } from "@lindorm/kryptos";
|
|
2
|
+
import { EcError } from "../errors/index.js";
|
|
3
|
+
import { assertEcSignature, createEcSignature, verifyEcSignature, } from "../internal/index.js";
|
|
4
|
+
export class EcKit {
|
|
8
5
|
dsa;
|
|
9
6
|
encoding;
|
|
10
7
|
kryptos;
|
|
@@ -13,16 +10,16 @@ class EcKit {
|
|
|
13
10
|
this.dsa = options.dsa ?? "der";
|
|
14
11
|
this.encoding = options.encoding ?? "base64";
|
|
15
12
|
this.raw = options.raw ?? false;
|
|
16
|
-
if (!
|
|
17
|
-
throw new
|
|
13
|
+
if (!KryptosKit.isEc(options.kryptos)) {
|
|
14
|
+
throw new EcError("Invalid Kryptos instance");
|
|
18
15
|
}
|
|
19
|
-
if (!
|
|
20
|
-
throw new
|
|
16
|
+
if (!EC_SIG_ALGORITHMS.includes(options.kryptos.algorithm)) {
|
|
17
|
+
throw new EcError("EcKit only supports signing algorithms (ES256, ES384, ES512)");
|
|
21
18
|
}
|
|
22
19
|
this.kryptos = options.kryptos;
|
|
23
20
|
}
|
|
24
21
|
sign(data) {
|
|
25
|
-
return
|
|
22
|
+
return createEcSignature({
|
|
26
23
|
data,
|
|
27
24
|
dsaEncoding: this.dsa,
|
|
28
25
|
kryptos: this.kryptos,
|
|
@@ -30,7 +27,7 @@ class EcKit {
|
|
|
30
27
|
});
|
|
31
28
|
}
|
|
32
29
|
verify(data, signature) {
|
|
33
|
-
return
|
|
30
|
+
return verifyEcSignature({
|
|
34
31
|
data,
|
|
35
32
|
dsaEncoding: this.dsa,
|
|
36
33
|
encoding: this.encoding,
|
|
@@ -40,7 +37,7 @@ class EcKit {
|
|
|
40
37
|
});
|
|
41
38
|
}
|
|
42
39
|
assert(data, signature) {
|
|
43
|
-
return
|
|
40
|
+
return assertEcSignature({
|
|
44
41
|
data,
|
|
45
42
|
dsaEncoding: this.dsa,
|
|
46
43
|
encoding: this.encoding,
|
|
@@ -53,5 +50,4 @@ class EcKit {
|
|
|
53
50
|
return data.toString(this.encoding);
|
|
54
51
|
}
|
|
55
52
|
}
|
|
56
|
-
exports.EcKit = EcKit;
|
|
57
53
|
//# sourceMappingURL=EcKit.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EcKit.js","sourceRoot":"","sources":["../../src/classes/EcKit.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"EcKit.js","sourceRoot":"","sources":["../../src/classes/EcKit.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EAGjB,UAAU,GACX,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAE7C,OAAO,EACL,iBAAiB,EACjB,iBAAiB,EACjB,iBAAiB,GAClB,MAAM,sBAAsB,CAAC;AAE9B,MAAM,OAAO,KAAK;IACC,GAAG,CAAc;IACjB,QAAQ,CAAiB;IACzB,OAAO,CAAa;IACpB,GAAG,CAAU;IAE9B,YAAmB,OAAqB;QACtC,IAAI,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,KAAK,CAAC;QAChC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,QAAQ,CAAC;QAC7C,IAAI,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,KAAK,CAAC;QAEhC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YACtC,MAAM,IAAI,OAAO,CAAC,0BAA0B,CAAC,CAAC;QAChD,CAAC;QAED,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,SAA2B,CAAC,EAAE,CAAC;YAC7E,MAAM,IAAI,OAAO,CAAC,8DAA8D,CAAC,CAAC;QACpF,CAAC;QAED,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IACjC,CAAC;IAEM,IAAI,CAAC,IAAa;QACvB,OAAO,iBAAiB,CAAC;YACvB,IAAI;YACJ,WAAW,EAAE,IAAI,CAAC,GAAG;YACrB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,GAAG,EAAE,IAAI,CAAC,GAAG;SACd,CAAC,CAAC;IACL,CAAC;IAEM,MAAM,CAAC,IAAa,EAAE,SAAkB;QAC7C,OAAO,iBAAiB,CAAC;YACvB,IAAI;YACJ,WAAW,EAAE,IAAI,CAAC,GAAG;YACrB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,SAAS;SACV,CAAC,CAAC;IACL,CAAC;IAEM,MAAM,CAAC,IAAa,EAAE,SAAkB;QAC7C,OAAO,iBAAiB,CAAC;YACvB,IAAI;YACJ,WAAW,EAAE,IAAI,CAAC,GAAG;YACrB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,SAAS;SACV,CAAC,CAAC;IACL,CAAC;IAEM,MAAM,CAAC,IAAY;QACxB,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACtC,CAAC;CACF"}
|
package/dist/classes/index.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export * from "./EcKit";
|
|
1
|
+
export * from "./EcKit.js";
|
|
2
2
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/classes/index.ts"],"names":[],"mappings":"AAAA,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/classes/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC"}
|
package/dist/classes/index.js
CHANGED
|
@@ -1,18 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
-
};
|
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
__exportStar(require("./EcKit"), exports);
|
|
1
|
+
export * from "./EcKit.js";
|
|
18
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/classes/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/classes/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC"}
|
package/dist/errors/EcError.js
CHANGED
|
@@ -1,8 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
exports.EcError = void 0;
|
|
4
|
-
const errors_1 = require("@lindorm/errors");
|
|
5
|
-
class EcError extends errors_1.LindormError {
|
|
1
|
+
import { LindormError } from "@lindorm/errors";
|
|
2
|
+
export class EcError extends LindormError {
|
|
6
3
|
}
|
|
7
|
-
exports.EcError = EcError;
|
|
8
4
|
//# sourceMappingURL=EcError.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EcError.js","sourceRoot":"","sources":["../../src/errors/EcError.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"EcError.js","sourceRoot":"","sources":["../../src/errors/EcError.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,MAAM,OAAO,OAAQ,SAAQ,YAAY;CAAG"}
|
package/dist/errors/index.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export * from "./EcError";
|
|
1
|
+
export * from "./EcError.js";
|
|
2
2
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/errors/index.ts"],"names":[],"mappings":"AAAA,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/errors/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC"}
|
package/dist/errors/index.js
CHANGED
|
@@ -1,18 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
-
};
|
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
__exportStar(require("./EcError"), exports);
|
|
1
|
+
export * from "./EcError.js";
|
|
18
2
|
//# sourceMappingURL=index.js.map
|
package/dist/errors/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/errors/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/errors/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export * from "./classes";
|
|
2
|
-
export * from "./errors";
|
|
3
|
-
export * from "./types";
|
|
1
|
+
export * from "./classes/index.js";
|
|
2
|
+
export * from "./errors/index.js";
|
|
3
|
+
export * from "./types/index.js";
|
|
4
4
|
//# sourceMappingURL=index.d.ts.map
|
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,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,20 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
-
};
|
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
__exportStar(require("./classes"), exports);
|
|
18
|
-
__exportStar(require("./errors"), exports);
|
|
19
|
-
__exportStar(require("./types"), exports);
|
|
1
|
+
export * from "./classes/index.js";
|
|
2
|
+
export * from "./errors/index.js";
|
|
3
|
+
export * from "./types/index.js";
|
|
20
4
|
//# 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":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { CreateEcSignatureOptions, VerifyEcSignatureOptions } from "../types/ec-kit";
|
|
1
|
+
import type { CreateEcSignatureOptions, VerifyEcSignatureOptions } from "../types/ec-kit.js";
|
|
2
2
|
export declare const createEcSignature: ({ data, dsaEncoding, kryptos, raw, }: CreateEcSignatureOptions) => Buffer;
|
|
3
3
|
export declare const verifyEcSignature: ({ data, dsaEncoding, encoding, kryptos, raw, signature, }: VerifyEcSignatureOptions) => boolean;
|
|
4
4
|
export declare const assertEcSignature: ({ data, dsaEncoding, encoding, kryptos, raw, signature, }: VerifyEcSignatureOptions) => void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ec-signature.d.ts","sourceRoot":"","sources":["../../src/internal/ec-signature.ts"],"names":[],"mappings":"AAGA,OAAO,
|
|
1
|
+
{"version":3,"file":"ec-signature.d.ts","sourceRoot":"","sources":["../../src/internal/ec-signature.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,wBAAwB,EACxB,wBAAwB,EACzB,MAAM,oBAAoB,CAAC;AAK5B,eAAO,MAAM,iBAAiB,GAAI,sCAK/B,wBAAwB,KAAG,MAW7B,CAAC;AAEF,eAAO,MAAM,iBAAiB,GAAI,2DAO/B,wBAAwB,KAAG,OAkB7B,CAAC;AAEF,eAAO,MAAM,iBAAiB,GAAI,2DAO/B,wBAAwB,KAAG,IAG7B,CAAC"}
|
|
@@ -1,44 +1,38 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
const
|
|
8
|
-
const
|
|
9
|
-
const raw_1 = require("./raw");
|
|
10
|
-
const createEcSignature = ({ data, dsaEncoding, kryptos, raw, }) => {
|
|
11
|
-
const signature = (0, crypto_1.createSign)((0, map_algorithm_1.mapEcAlgorithm)(kryptos))
|
|
1
|
+
import { isBuffer, isString } from "@lindorm/is";
|
|
2
|
+
import { createSign, createVerify } from "crypto";
|
|
3
|
+
import { EcError } from "../errors/index.js";
|
|
4
|
+
import { getSignKey, getVerifyKey } from "./get-key.js";
|
|
5
|
+
import { mapEcAlgorithm } from "./map-algorithm.js";
|
|
6
|
+
import { derToRaw, rawToDer } from "./raw.js";
|
|
7
|
+
export const createEcSignature = ({ data, dsaEncoding, kryptos, raw, }) => {
|
|
8
|
+
const signature = createSign(mapEcAlgorithm(kryptos))
|
|
12
9
|
.update(data)
|
|
13
10
|
.end()
|
|
14
|
-
.sign({ key:
|
|
11
|
+
.sign({ key: getSignKey(kryptos), dsaEncoding });
|
|
15
12
|
if (raw) {
|
|
16
|
-
return
|
|
13
|
+
return derToRaw(kryptos, signature);
|
|
17
14
|
}
|
|
18
15
|
return signature;
|
|
19
16
|
};
|
|
20
|
-
|
|
21
|
-
const verifyEcSignature = ({ data, dsaEncoding, encoding, kryptos, raw, signature, }) => {
|
|
17
|
+
export const verifyEcSignature = ({ data, dsaEncoding, encoding, kryptos, raw, signature, }) => {
|
|
22
18
|
let buffer;
|
|
23
19
|
if (raw) {
|
|
24
|
-
buffer =
|
|
20
|
+
buffer = rawToDer(kryptos, isBuffer(signature) ? signature : Buffer.from(signature, encoding));
|
|
25
21
|
}
|
|
26
|
-
else if (
|
|
22
|
+
else if (isString(signature)) {
|
|
27
23
|
buffer = Buffer.from(signature, encoding);
|
|
28
24
|
}
|
|
29
25
|
else {
|
|
30
26
|
buffer = signature;
|
|
31
27
|
}
|
|
32
|
-
return
|
|
28
|
+
return createVerify(mapEcAlgorithm(kryptos))
|
|
33
29
|
.update(data)
|
|
34
30
|
.end()
|
|
35
|
-
.verify({ key:
|
|
31
|
+
.verify({ key: getVerifyKey(kryptos), dsaEncoding }, buffer);
|
|
36
32
|
};
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
if ((0, exports.verifyEcSignature)({ data, dsaEncoding, encoding, kryptos, raw, signature }))
|
|
33
|
+
export const assertEcSignature = ({ data, dsaEncoding, encoding, kryptos, raw, signature, }) => {
|
|
34
|
+
if (verifyEcSignature({ data, dsaEncoding, encoding, kryptos, raw, signature }))
|
|
40
35
|
return;
|
|
41
|
-
throw new
|
|
36
|
+
throw new EcError("Invalid signature");
|
|
42
37
|
};
|
|
43
|
-
exports.assertEcSignature = assertEcSignature;
|
|
44
38
|
//# sourceMappingURL=ec-signature.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ec-signature.js","sourceRoot":"","sources":["../../src/internal/ec-signature.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ec-signature.js","sourceRoot":"","sources":["../../src/internal/ec-signature.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAClD,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAK7C,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAE9C,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,EAChC,IAAI,EACJ,WAAW,EACX,OAAO,EACP,GAAG,GACsB,EAAU,EAAE;IACrC,MAAM,SAAS,GAAG,UAAU,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;SAClD,MAAM,CAAC,IAAI,CAAC;SACZ,GAAG,EAAE;SACL,IAAI,CAAC,EAAE,GAAG,EAAE,UAAU,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC;IAEnD,IAAI,GAAG,EAAE,CAAC;QACR,OAAO,QAAQ,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IACtC,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,EAChC,IAAI,EACJ,WAAW,EACX,QAAQ,EACR,OAAO,EACP,GAAG,EACH,SAAS,GACgB,EAAW,EAAE;IACtC,IAAI,MAAc,CAAC;IAEnB,IAAI,GAAG,EAAE,CAAC;QACR,MAAM,GAAG,QAAQ,CACf,OAAO,EACP,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CACnE,CAAC;IACJ,CAAC;SAAM,IAAI,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;QAC/B,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;IAC5C,CAAC;SAAM,CAAC;QACN,MAAM,GAAG,SAAS,CAAC;IACrB,CAAC;IAED,OAAO,YAAY,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;SACzC,MAAM,CAAC,IAAI,CAAC;SACZ,GAAG,EAAE;SACL,MAAM,CAAC,EAAE,GAAG,EAAE,YAAY,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,EAAE,MAAM,CAAC,CAAC;AACjE,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,EAChC,IAAI,EACJ,WAAW,EACX,QAAQ,EACR,OAAO,EACP,GAAG,EACH,SAAS,GACgB,EAAQ,EAAE;IACnC,IAAI,iBAAiB,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,CAAC;QAAE,OAAO;IACxF,MAAM,IAAI,OAAO,CAAC,mBAAmB,CAAC,CAAC;AACzC,CAAC,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { IKryptosEc } from "@lindorm/kryptos";
|
|
1
|
+
import type { IKryptosEc } from "@lindorm/kryptos";
|
|
2
2
|
export declare const getSignKey: (kryptos: IKryptosEc) => string;
|
|
3
3
|
export declare const getVerifyKey: (kryptos: IKryptosEc) => string;
|
|
4
4
|
//# sourceMappingURL=get-key.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-key.d.ts","sourceRoot":"","sources":["../../src/internal/get-key.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"get-key.d.ts","sourceRoot":"","sources":["../../src/internal/get-key.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAGnD,eAAO,MAAM,UAAU,GAAI,SAAS,UAAU,KAAG,MAQhD,CAAC;AAEF,eAAO,MAAM,YAAY,GAAI,SAAS,UAAU,KAAG,MAQlD,CAAC"}
|
package/dist/internal/get-key.js
CHANGED
|
@@ -1,21 +1,16 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
exports.getVerifyKey = exports.getSignKey = void 0;
|
|
4
|
-
const errors_1 = require("../errors");
|
|
5
|
-
const getSignKey = (kryptos) => {
|
|
1
|
+
import { EcError } from "../errors/index.js";
|
|
2
|
+
export const getSignKey = (kryptos) => {
|
|
6
3
|
const { privateKey } = kryptos.export("pem");
|
|
7
4
|
if (!privateKey) {
|
|
8
|
-
throw new
|
|
5
|
+
throw new EcError("Missing private key");
|
|
9
6
|
}
|
|
10
7
|
return privateKey;
|
|
11
8
|
};
|
|
12
|
-
|
|
13
|
-
const getVerifyKey = (kryptos) => {
|
|
9
|
+
export const getVerifyKey = (kryptos) => {
|
|
14
10
|
const { publicKey } = kryptos.export("pem");
|
|
15
11
|
if (!publicKey) {
|
|
16
|
-
throw new
|
|
12
|
+
throw new EcError("Missing public key");
|
|
17
13
|
}
|
|
18
14
|
return publicKey;
|
|
19
15
|
};
|
|
20
|
-
exports.getVerifyKey = getVerifyKey;
|
|
21
16
|
//# sourceMappingURL=get-key.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-key.js","sourceRoot":"","sources":["../../src/internal/get-key.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"get-key.js","sourceRoot":"","sources":["../../src/internal/get-key.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAE7C,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,OAAmB,EAAU,EAAE;IACxD,MAAM,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAE7C,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,MAAM,IAAI,OAAO,CAAC,qBAAqB,CAAC,CAAC;IAC3C,CAAC;IAED,OAAO,UAAU,CAAC;AACpB,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,OAAmB,EAAU,EAAE;IAC1D,MAAM,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAE5C,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,MAAM,IAAI,OAAO,CAAC,oBAAoB,CAAC,CAAC;IAC1C,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC"}
|
package/dist/internal/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
export * from "./ec-signature";
|
|
2
|
-
export * from "./get-key";
|
|
3
|
-
export * from "./map-algorithm";
|
|
4
|
-
export * from "./raw";
|
|
1
|
+
export * from "./ec-signature.js";
|
|
2
|
+
export * from "./get-key.js";
|
|
3
|
+
export * from "./map-algorithm.js";
|
|
4
|
+
export * from "./raw.js";
|
|
5
5
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/internal/index.ts"],"names":[],"mappings":"AAAA,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/internal/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,cAAc,CAAC;AAC7B,cAAc,oBAAoB,CAAC;AACnC,cAAc,UAAU,CAAC"}
|
package/dist/internal/index.js
CHANGED
|
@@ -1,21 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
-
};
|
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
__exportStar(require("./ec-signature"), exports);
|
|
18
|
-
__exportStar(require("./get-key"), exports);
|
|
19
|
-
__exportStar(require("./map-algorithm"), exports);
|
|
20
|
-
__exportStar(require("./raw"), exports);
|
|
1
|
+
export * from "./ec-signature.js";
|
|
2
|
+
export * from "./get-key.js";
|
|
3
|
+
export * from "./map-algorithm.js";
|
|
4
|
+
export * from "./raw.js";
|
|
21
5
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/internal/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/internal/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,cAAc,CAAC;AAC7B,cAAc,oBAAoB,CAAC;AACnC,cAAc,UAAU,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { IKryptosEc } from "@lindorm/kryptos";
|
|
2
|
-
import { ShaAlgorithm } from "@lindorm/types";
|
|
1
|
+
import { type IKryptosEc } from "@lindorm/kryptos";
|
|
2
|
+
import type { ShaAlgorithm } from "@lindorm/types";
|
|
3
3
|
export declare const mapEcAlgorithm: (kryptos: IKryptosEc) => ShaAlgorithm;
|
|
4
4
|
//# sourceMappingURL=map-algorithm.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"map-algorithm.d.ts","sourceRoot":"","sources":["../../src/internal/map-algorithm.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"map-algorithm.d.ts","sourceRoot":"","sources":["../../src/internal/map-algorithm.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,UAAU,EAChB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AASnD,eAAO,MAAM,cAAc,GAAI,SAAS,UAAU,KAAG,YAQpD,CAAC"}
|
|
@@ -1,20 +1,16 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
exports.mapEcAlgorithm = void 0;
|
|
4
|
-
const kryptos_1 = require("@lindorm/kryptos");
|
|
5
|
-
const errors_1 = require("../errors");
|
|
1
|
+
import { EC_SIG_ALGORITHMS, } from "@lindorm/kryptos";
|
|
2
|
+
import { EcError } from "../errors/index.js";
|
|
6
3
|
const EC_SIG_ALGORITHM_MAP = {
|
|
7
4
|
ES256: "SHA256",
|
|
8
5
|
ES384: "SHA384",
|
|
9
6
|
ES512: "SHA512",
|
|
10
7
|
};
|
|
11
|
-
const mapEcAlgorithm = (kryptos) => {
|
|
12
|
-
if (!
|
|
13
|
-
throw new
|
|
8
|
+
export const mapEcAlgorithm = (kryptos) => {
|
|
9
|
+
if (!EC_SIG_ALGORITHMS.includes(kryptos.algorithm)) {
|
|
10
|
+
throw new EcError("Unsupported EC algorithm for signing", {
|
|
14
11
|
debug: { algorithm: kryptos.algorithm },
|
|
15
12
|
});
|
|
16
13
|
}
|
|
17
14
|
return EC_SIG_ALGORITHM_MAP[kryptos.algorithm];
|
|
18
15
|
};
|
|
19
|
-
exports.mapEcAlgorithm = mapEcAlgorithm;
|
|
20
16
|
//# sourceMappingURL=map-algorithm.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"map-algorithm.js","sourceRoot":"","sources":["../../src/internal/map-algorithm.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"map-algorithm.js","sourceRoot":"","sources":["../../src/internal/map-algorithm.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,GAGlB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAE7C,MAAM,oBAAoB,GAAyC;IACjE,KAAK,EAAE,QAAQ;IACf,KAAK,EAAE,QAAQ;IACf,KAAK,EAAE,QAAQ;CAChB,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,OAAmB,EAAgB,EAAE;IAClE,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,OAAO,CAAC,SAA2B,CAAC,EAAE,CAAC;QACrE,MAAM,IAAI,OAAO,CAAC,sCAAsC,EAAE;YACxD,KAAK,EAAE,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE;SACxC,CAAC,CAAC;IACL,CAAC;IAED,OAAO,oBAAoB,CAAC,OAAO,CAAC,SAA2B,CAAC,CAAC;AACnE,CAAC,CAAC"}
|
package/dist/internal/raw.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { IKryptosEc } from "@lindorm/kryptos";
|
|
1
|
+
import type { IKryptosEc } from "@lindorm/kryptos";
|
|
2
2
|
export declare const derToRaw: (kryptos: IKryptosEc, derSignature: Buffer) => Buffer;
|
|
3
3
|
export declare const rawToDer: (kryptos: IKryptosEc, rawSignature: Buffer) => Buffer;
|
|
4
4
|
//# sourceMappingURL=raw.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"raw.d.ts","sourceRoot":"","sources":["../../src/internal/raw.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"raw.d.ts","sourceRoot":"","sources":["../../src/internal/raw.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AASnD,eAAO,MAAM,QAAQ,GAAI,SAAS,UAAU,EAAE,cAAc,MAAM,KAAG,MA2CpE,CAAC;AAEF,eAAO,MAAM,QAAQ,GAAI,SAAS,UAAU,EAAE,cAAc,MAAM,KAAG,MA8BpE,CAAC"}
|
package/dist/internal/raw.js
CHANGED
|
@@ -1,16 +1,13 @@
|
|
|
1
|
-
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.rawToDer = exports.derToRaw = void 0;
|
|
4
|
-
const errors_1 = require("../errors");
|
|
1
|
+
import { EcError } from "../errors/index.js";
|
|
5
2
|
const KEY_SIZES = {
|
|
6
3
|
"P-256": 32,
|
|
7
4
|
"P-384": 48,
|
|
8
5
|
"P-521": 66,
|
|
9
6
|
};
|
|
10
|
-
const derToRaw = (kryptos, derSignature) => {
|
|
7
|
+
export const derToRaw = (kryptos, derSignature) => {
|
|
11
8
|
const keySize = KEY_SIZES[kryptos.curve];
|
|
12
9
|
if (derSignature[0] !== 0x30) {
|
|
13
|
-
throw new
|
|
10
|
+
throw new EcError("Invalid DER format");
|
|
14
11
|
}
|
|
15
12
|
let position = 2;
|
|
16
13
|
const lengthByte = derSignature[1];
|
|
@@ -20,7 +17,7 @@ const derToRaw = (kryptos, derSignature) => {
|
|
|
20
17
|
}
|
|
21
18
|
function getInteger() {
|
|
22
19
|
if (derSignature[position] !== 0x02) {
|
|
23
|
-
throw new
|
|
20
|
+
throw new EcError("Expected integer");
|
|
24
21
|
}
|
|
25
22
|
const length = derSignature[position + 1];
|
|
26
23
|
position += 2;
|
|
@@ -42,11 +39,10 @@ const derToRaw = (kryptos, derSignature) => {
|
|
|
42
39
|
]);
|
|
43
40
|
return Buffer.concat([paddedR, paddedS]);
|
|
44
41
|
};
|
|
45
|
-
|
|
46
|
-
const rawToDer = (kryptos, rawSignature) => {
|
|
42
|
+
export const rawToDer = (kryptos, rawSignature) => {
|
|
47
43
|
const keySize = KEY_SIZES[kryptos.curve];
|
|
48
44
|
if (rawSignature.length !== 2 * keySize) {
|
|
49
|
-
throw new
|
|
45
|
+
throw new EcError("Invalid raw signature length");
|
|
50
46
|
}
|
|
51
47
|
const r = rawSignature.subarray(0, keySize);
|
|
52
48
|
const s = rawSignature.subarray(keySize);
|
|
@@ -69,5 +65,4 @@ const rawToDer = (kryptos, rawSignature) => {
|
|
|
69
65
|
const lengthByte = sequenceLength < 128 ? [sequenceLength] : [0x81, sequenceLength];
|
|
70
66
|
return Buffer.concat([Buffer.from([0x30, ...lengthByte]), derR, derS]);
|
|
71
67
|
};
|
|
72
|
-
exports.rawToDer = rawToDer;
|
|
73
68
|
//# sourceMappingURL=raw.js.map
|
package/dist/internal/raw.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"raw.js","sourceRoot":"","sources":["../../src/internal/raw.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"raw.js","sourceRoot":"","sources":["../../src/internal/raw.ts"],"names":[],"mappings":"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"}
|
package/dist/types/ec-kit.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { IKryptos, IKryptosEc } from "@lindorm/kryptos";
|
|
2
|
-
import { DsaEncoding, KeyData } from "@lindorm/types";
|
|
1
|
+
import type { IKryptos, IKryptosEc } from "@lindorm/kryptos";
|
|
2
|
+
import type { DsaEncoding, KeyData } from "@lindorm/types";
|
|
3
3
|
export type CreateEcSignatureOptions = {
|
|
4
4
|
data: KeyData;
|
|
5
5
|
dsaEncoding: DsaEncoding;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ec-kit.d.ts","sourceRoot":"","sources":["../../src/types/ec-kit.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"ec-kit.d.ts","sourceRoot":"","sources":["../../src/types/ec-kit.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAE3D,MAAM,MAAM,wBAAwB,GAAG;IACrC,IAAI,EAAE,OAAO,CAAC;IACd,WAAW,EAAE,WAAW,CAAC;IACzB,OAAO,EAAE,UAAU,CAAC;IACpB,GAAG,EAAE,OAAO,CAAC;CACd,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG;IACrC,IAAI,EAAE,OAAO,CAAC;IACd,WAAW,EAAE,WAAW,CAAC;IACzB,QAAQ,EAAE,cAAc,CAAC;IACzB,OAAO,EAAE,UAAU,CAAC;IACpB,GAAG,EAAE,OAAO,CAAC;IACb,SAAS,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,GAAG,CAAC,EAAE,WAAW,CAAC;IAClB,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,OAAO,EAAE,QAAQ,CAAC;IAClB,GAAG,CAAC,EAAE,OAAO,CAAC;CACf,CAAC"}
|
package/dist/types/ec-kit.js
CHANGED
package/dist/types/index.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export * from "./ec-kit";
|
|
1
|
+
export * from "./ec-kit.js";
|
|
2
2
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC"}
|
package/dist/types/index.js
CHANGED
|
@@ -1,18 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
-
};
|
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
__exportStar(require("./ec-kit"), exports);
|
|
1
|
+
export * from "./ec-kit.js";
|
|
18
2
|
//# 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":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@lindorm/ec",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.3.1",
|
|
4
4
|
"license": "AGPL-3.0-or-later",
|
|
5
5
|
"author": "Jonn Nilsson",
|
|
6
6
|
"repository": {
|
|
@@ -11,15 +11,24 @@
|
|
|
11
11
|
"publishConfig": {
|
|
12
12
|
"access": "public"
|
|
13
13
|
},
|
|
14
|
-
"
|
|
14
|
+
"files": [
|
|
15
|
+
"dist"
|
|
16
|
+
],
|
|
17
|
+
"type": "module",
|
|
15
18
|
"typings": "dist/index.d.ts",
|
|
19
|
+
"exports": {
|
|
20
|
+
".": {
|
|
21
|
+
"types": "./dist/index.d.ts",
|
|
22
|
+
"default": "./dist/index.js"
|
|
23
|
+
}
|
|
24
|
+
},
|
|
16
25
|
"scripts": {
|
|
17
26
|
"build": "rimraf dist && tsc -b ./tsconfig.build.json",
|
|
18
27
|
"example": "ts-node example",
|
|
19
28
|
"prettier": "prettier --write ./src/*",
|
|
20
|
-
"test": "
|
|
21
|
-
"test:
|
|
22
|
-
"test:watch": "
|
|
29
|
+
"test": "vitest run",
|
|
30
|
+
"test:unit": "vitest run --exclude '**/*.integration.test.ts'",
|
|
31
|
+
"test:watch": "vitest",
|
|
23
32
|
"typecheck": "tsc",
|
|
24
33
|
"typecheck:watch": "tsc --watch",
|
|
25
34
|
"update": "ncu -i",
|
|
@@ -27,12 +36,10 @@
|
|
|
27
36
|
"verify": "npm run typecheck && npm run build && npm test"
|
|
28
37
|
},
|
|
29
38
|
"dependencies": {
|
|
30
|
-
"@lindorm/errors": "^0.1
|
|
31
|
-
"@lindorm/is": "^0.1
|
|
32
|
-
"@lindorm/kryptos": "^0.
|
|
33
|
-
|
|
34
|
-
"devDependencies": {
|
|
35
|
-
"@lindorm/types": "^0.5.0"
|
|
39
|
+
"@lindorm/errors": "^0.2.1",
|
|
40
|
+
"@lindorm/is": "^0.2.1",
|
|
41
|
+
"@lindorm/kryptos": "^0.8.1",
|
|
42
|
+
"@lindorm/types": "^0.6.1"
|
|
36
43
|
},
|
|
37
|
-
"gitHead": "
|
|
44
|
+
"gitHead": "da067071d415e07d7d25bbac1621b9e02fcc3166"
|
|
38
45
|
}
|
package/CHANGELOG.md
DELETED
|
@@ -1,108 +0,0 @@
|
|
|
1
|
-
# Change Log
|
|
2
|
-
|
|
3
|
-
All notable changes to this project will be documented in this file.
|
|
4
|
-
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
|
-
|
|
6
|
-
## [0.2.11](https://github.com/lindorm-io/monorepo/compare/@lindorm/ec@0.2.10...@lindorm/ec@0.2.11) (2026-04-19)
|
|
7
|
-
|
|
8
|
-
**Note:** Version bump only for package @lindorm/ec
|
|
9
|
-
|
|
10
|
-
## [0.2.10](https://github.com/lindorm-io/monorepo/compare/@lindorm/ec@0.2.9...@lindorm/ec@0.2.10) (2026-04-15)
|
|
11
|
-
|
|
12
|
-
**Note:** Version bump only for package @lindorm/ec
|
|
13
|
-
|
|
14
|
-
## [0.2.9](https://github.com/lindorm-io/monorepo/compare/@lindorm/ec@0.2.8...@lindorm/ec@0.2.9) (2026-04-01)
|
|
15
|
-
|
|
16
|
-
**Note:** Version bump only for package @lindorm/ec
|
|
17
|
-
|
|
18
|
-
## [0.2.8](https://github.com/lindorm-io/monorepo/compare/@lindorm/ec@0.2.7...@lindorm/ec@0.2.8) (2026-03-13)
|
|
19
|
-
|
|
20
|
-
**Note:** Version bump only for package @lindorm/ec
|
|
21
|
-
|
|
22
|
-
## [0.2.7](https://github.com/lindorm-io/monorepo/compare/@lindorm/ec@0.2.6...@lindorm/ec@0.2.7) (2026-03-13)
|
|
23
|
-
|
|
24
|
-
**Note:** Version bump only for package @lindorm/ec
|
|
25
|
-
|
|
26
|
-
## [0.2.6](https://github.com/lindorm-io/monorepo/compare/@lindorm/ec@0.2.5...@lindorm/ec@0.2.6) (2026-02-17)
|
|
27
|
-
|
|
28
|
-
### Bug Fixes
|
|
29
|
-
|
|
30
|
-
- **ec,oct,okp,rsa:** harden signing kits with validation and security fixes ([910f016](https://github.com/lindorm-io/monorepo/commit/910f01669aefcb4e6eb69c0297291fe2404232f8))
|
|
31
|
-
|
|
32
|
-
## [0.2.5](https://github.com/lindorm-io/monorepo/compare/@lindorm/ec@0.2.4...@lindorm/ec@0.2.5) (2025-09-18)
|
|
33
|
-
|
|
34
|
-
**Note:** Version bump only for package @lindorm/ec
|
|
35
|
-
|
|
36
|
-
## [0.2.4](https://github.com/lindorm-io/monorepo/compare/@lindorm/ec@0.2.3...@lindorm/ec@0.2.4) (2025-07-19)
|
|
37
|
-
|
|
38
|
-
**Note:** Version bump only for package @lindorm/ec
|
|
39
|
-
|
|
40
|
-
## [0.2.3](https://github.com/lindorm-io/monorepo/compare/@lindorm/ec@0.2.2...@lindorm/ec@0.2.3) (2025-07-12)
|
|
41
|
-
|
|
42
|
-
**Note:** Version bump only for package @lindorm/ec
|
|
43
|
-
|
|
44
|
-
## [0.2.2](https://github.com/lindorm-io/monorepo/compare/@lindorm/ec@0.2.1...@lindorm/ec@0.2.2) (2025-07-10)
|
|
45
|
-
|
|
46
|
-
**Note:** Version bump only for package @lindorm/ec
|
|
47
|
-
|
|
48
|
-
## [0.2.1](https://github.com/lindorm-io/monorepo/compare/@lindorm/ec@0.2.0...@lindorm/ec@0.2.1) (2025-07-02)
|
|
49
|
-
|
|
50
|
-
**Note:** Version bump only for package @lindorm/ec
|
|
51
|
-
|
|
52
|
-
# [0.2.0](https://github.com/lindorm-io/monorepo/compare/@lindorm/ec@0.1.8...@lindorm/ec@0.2.0) (2025-06-17)
|
|
53
|
-
|
|
54
|
-
### Bug Fixes
|
|
55
|
-
|
|
56
|
-
- add and implement keykit interface ([70762aa](https://github.com/lindorm-io/monorepo/commit/70762aaca51c9fe904121b69b4bc072cdd89c8a2))
|
|
57
|
-
- align with kryptos changes ([206eb38](https://github.com/lindorm-io/monorepo/commit/206eb38ae2a03b14973e706035c87a953cc753af))
|
|
58
|
-
|
|
59
|
-
### Features
|
|
60
|
-
|
|
61
|
-
- add dsa encoding ([a893601](https://github.com/lindorm-io/monorepo/commit/a8936015a9408733445cdbda8d8b70d633a2330a))
|
|
62
|
-
- upgrade key kits ([198956c](https://github.com/lindorm-io/monorepo/commit/198956c5fa276ae192af22cb204b3c2158c74339))
|
|
63
|
-
|
|
64
|
-
## [0.1.8](https://github.com/lindorm-io/monorepo/compare/@lindorm/ec@0.1.7...@lindorm/ec@0.1.8) (2025-01-28)
|
|
65
|
-
|
|
66
|
-
**Note:** Version bump only for package @lindorm/ec
|
|
67
|
-
|
|
68
|
-
## [0.1.7](https://github.com/lindorm-io/monorepo/compare/@lindorm/ec@0.1.6...@lindorm/ec@0.1.7) (2024-10-12)
|
|
69
|
-
|
|
70
|
-
**Note:** Version bump only for package @lindorm/ec
|
|
71
|
-
|
|
72
|
-
## [0.1.6](https://github.com/lindorm-io/monorepo/compare/@lindorm/ec@0.1.5...@lindorm/ec@0.1.6) (2024-10-09)
|
|
73
|
-
|
|
74
|
-
**Note:** Version bump only for package @lindorm/ec
|
|
75
|
-
|
|
76
|
-
## [0.1.5](https://github.com/lindorm-io/monorepo/compare/@lindorm/ec@0.1.4...@lindorm/ec@0.1.5) (2024-09-25)
|
|
77
|
-
|
|
78
|
-
**Note:** Version bump only for package @lindorm/ec
|
|
79
|
-
|
|
80
|
-
## [0.1.4](https://github.com/lindorm-io/monorepo/compare/@lindorm/ec@0.1.3...@lindorm/ec@0.1.4) (2024-09-23)
|
|
81
|
-
|
|
82
|
-
**Note:** Version bump only for package @lindorm/ec
|
|
83
|
-
|
|
84
|
-
## [0.1.3](https://github.com/lindorm-io/monorepo/compare/@lindorm/ec@0.1.2...@lindorm/ec@0.1.3) (2024-09-20)
|
|
85
|
-
|
|
86
|
-
**Note:** Version bump only for package @lindorm/ec
|
|
87
|
-
|
|
88
|
-
## [0.1.2](https://github.com/lindorm-io/monorepo/compare/@lindorm/ec@0.1.1...@lindorm/ec@0.1.2) (2024-05-20)
|
|
89
|
-
|
|
90
|
-
**Note:** Version bump only for package @lindorm/ec
|
|
91
|
-
|
|
92
|
-
## [0.1.1](https://github.com/lindorm-io/monorepo/compare/@lindorm/ec@0.1.0...@lindorm/ec@0.1.1) (2024-05-19)
|
|
93
|
-
|
|
94
|
-
### Bug Fixes
|
|
95
|
-
|
|
96
|
-
- align with kryptos changes ([344c4e2](https://github.com/lindorm-io/monorepo/commit/344c4e2fad07e66c91f7e0820bfc929c1f8ffcab))
|
|
97
|
-
- rename interfaces ([3b1f457](https://github.com/lindorm-io/monorepo/commit/3b1f45736f88b8c2d4481cbeca6da87bf8443bde))
|
|
98
|
-
- simplify interfaces with kryptos metadata ([c4075d2](https://github.com/lindorm-io/monorepo/commit/c4075d2e133c2fe0a1fafa548da68db34b3407c6))
|
|
99
|
-
|
|
100
|
-
# 0.1.0 (2024-05-12)
|
|
101
|
-
|
|
102
|
-
### Bug Fixes
|
|
103
|
-
|
|
104
|
-
- add missing format ([2386865](https://github.com/lindorm-io/monorepo/commit/2386865f60168cef31ffc8f1ce15c5fdc4c9fd82))
|
|
105
|
-
|
|
106
|
-
### Features
|
|
107
|
-
|
|
108
|
-
- initialise ec package ([5ad9918](https://github.com/lindorm-io/monorepo/commit/5ad99183aa933524f74850cf2bed5d10c03c6498))
|