@lindorm/rsa 0.1.9 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -3,6 +3,19 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # [0.2.0](https://github.com/lindorm-io/monorepo/compare/@lindorm/rsa@0.1.9...@lindorm/rsa@0.2.0) (2025-06-17)
7
+
8
+ ### Bug Fixes
9
+
10
+ - add and implement keykit interface ([70762aa](https://github.com/lindorm-io/monorepo/commit/70762aaca51c9fe904121b69b4bc072cdd89c8a2))
11
+ - align with changes to kryptos ([74bbfff](https://github.com/lindorm-io/monorepo/commit/74bbfff6fb50504dc70327f7de3fd6d4b45cb65a))
12
+ - align with kryptos changes ([206eb38](https://github.com/lindorm-io/monorepo/commit/206eb38ae2a03b14973e706035c87a953cc753af))
13
+
14
+ ### Features
15
+
16
+ - add dsa encoding ([a893601](https://github.com/lindorm-io/monorepo/commit/a8936015a9408733445cdbda8d8b70d633a2330a))
17
+ - upgrade key kits ([198956c](https://github.com/lindorm-io/monorepo/commit/198956c5fa276ae192af22cb204b3c2158c74339))
18
+
6
19
  ## [0.1.9](https://github.com/lindorm-io/monorepo/compare/@lindorm/rsa@0.1.8...@lindorm/rsa@0.1.9) (2025-01-28)
7
20
 
8
21
  **Note:** Version bump only for package @lindorm/rsa
@@ -1,10 +1,13 @@
1
+ import { IKeyKit, KeyData } from "@lindorm/types";
1
2
  import { RsaKitOptions } from "../types";
2
- export declare class RsaKit {
3
- private readonly format;
3
+ export declare class RsaKit implements IKeyKit {
4
+ private readonly dsa;
5
+ private readonly encoding;
4
6
  private readonly kryptos;
5
7
  constructor(options: RsaKitOptions);
6
- sign(data: string): string;
7
- verify(data: string, signature: string): boolean;
8
- assert(data: string, signature: string): void;
8
+ sign(data: KeyData): Buffer;
9
+ verify(data: KeyData, signature: KeyData): boolean;
10
+ assert(data: KeyData, signature: KeyData): void;
11
+ format(data: Buffer): string;
9
12
  }
10
13
  //# sourceMappingURL=RsaKit.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"RsaKit.d.ts","sourceRoot":"","sources":["../../src/classes/RsaKit.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAOzC,qBAAa,MAAM;IACjB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAe;IACtC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAc;gBAEnB,OAAO,EAAE,aAAa;IAUlC,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAQ1B,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO;IAShD,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI;CAQrD"}
1
+ {"version":3,"file":"RsaKit.d.ts","sourceRoot":"","sources":["../../src/classes/RsaKit.ts"],"names":[],"mappings":"AACA,OAAO,EAAe,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAE/D,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAOzC,qBAAa,MAAO,YAAW,OAAO;IACpC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAc;IAClC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAiB;IAC1C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAc;gBAEnB,OAAO,EAAE,aAAa;IAWlC,IAAI,CAAC,IAAI,EAAE,OAAO,GAAG,MAAM;IAQ3B,MAAM,CAAC,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,GAAG,OAAO;IAUlD,MAAM,CAAC,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,GAAG,IAAI;IAU/C,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;CAGpC"}
@@ -5,11 +5,13 @@ const kryptos_1 = require("@lindorm/kryptos");
5
5
  const errors_1 = require("../errors");
6
6
  const private_1 = require("../utils/private");
7
7
  class RsaKit {
8
- format;
8
+ dsa;
9
+ encoding;
9
10
  kryptos;
10
11
  constructor(options) {
11
- this.format = options.format ?? "base64";
12
- if (!kryptos_1.Kryptos.isRsa(options.kryptos)) {
12
+ this.dsa = options.dsa ?? "der";
13
+ this.encoding = options.encoding ?? "base64";
14
+ if (!kryptos_1.KryptosKit.isRsa(options.kryptos)) {
13
15
  throw new errors_1.RsaError("Invalid Kryptos instance");
14
16
  }
15
17
  this.kryptos = options.kryptos;
@@ -17,14 +19,15 @@ class RsaKit {
17
19
  sign(data) {
18
20
  return (0, private_1.createRsaSignature)({
19
21
  data,
20
- format: this.format,
22
+ dsaEncoding: this.dsa,
21
23
  kryptos: this.kryptos,
22
24
  });
23
25
  }
24
26
  verify(data, signature) {
25
27
  return (0, private_1.verifyRsaSignature)({
26
28
  data,
27
- format: this.format,
29
+ dsaEncoding: this.dsa,
30
+ encoding: this.encoding,
28
31
  kryptos: this.kryptos,
29
32
  signature,
30
33
  });
@@ -32,11 +35,15 @@ class RsaKit {
32
35
  assert(data, signature) {
33
36
  return (0, private_1.assertRsaSignature)({
34
37
  data,
35
- format: this.format,
38
+ dsaEncoding: this.dsa,
39
+ encoding: this.encoding,
36
40
  kryptos: this.kryptos,
37
41
  signature,
38
42
  });
39
43
  }
44
+ format(data) {
45
+ return data.toString(this.encoding);
46
+ }
40
47
  }
41
48
  exports.RsaKit = RsaKit;
42
49
  //# sourceMappingURL=RsaKit.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"RsaKit.js","sourceRoot":"","sources":["../../src/classes/RsaKit.ts"],"names":[],"mappings":";;;AAAA,8CAAwD;AAExD,sCAAqC;AAErC,8CAI0B;AAE1B,MAAa,MAAM;IACA,MAAM,CAAe;IACrB,OAAO,CAAc;IAEtC,YAAmB,OAAsB;QACvC,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,QAAQ,CAAC;QAEzC,IAAI,CAAC,iBAAO,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YACpC,MAAM,IAAI,iBAAQ,CAAC,0BAA0B,CAAC,CAAC;QACjD,CAAC;QAED,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IACjC,CAAC;IAEM,IAAI,CAAC,IAAY;QACtB,OAAO,IAAA,4BAAkB,EAAC;YACxB,IAAI;YACJ,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,OAAO,EAAE,IAAI,CAAC,OAAO;SACtB,CAAC,CAAC;IACL,CAAC;IAEM,MAAM,CAAC,IAAY,EAAE,SAAiB;QAC3C,OAAO,IAAA,4BAAkB,EAAC;YACxB,IAAI;YACJ,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,SAAS;SACV,CAAC,CAAC;IACL,CAAC;IAEM,MAAM,CAAC,IAAY,EAAE,SAAiB;QAC3C,OAAO,IAAA,4BAAkB,EAAC;YACxB,IAAI;YACJ,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,SAAS;SACV,CAAC,CAAC;IACL,CAAC;CACF;AAvCD,wBAuCC"}
1
+ {"version":3,"file":"RsaKit.js","sourceRoot":"","sources":["../../src/classes/RsaKit.ts"],"names":[],"mappings":";;;AAAA,8CAA2D;AAE3D,sCAAqC;AAErC,8CAI0B;AAE1B,MAAa,MAAM;IACA,GAAG,CAAc;IACjB,QAAQ,CAAiB;IACzB,OAAO,CAAc;IAEtC,YAAmB,OAAsB;QACvC,IAAI,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,KAAK,CAAC;QAChC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,QAAQ,CAAC;QAE7C,IAAI,CAAC,oBAAU,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YACvC,MAAM,IAAI,iBAAQ,CAAC,0BAA0B,CAAC,CAAC;QACjD,CAAC;QAED,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IACjC,CAAC;IAEM,IAAI,CAAC,IAAa;QACvB,OAAO,IAAA,4BAAkB,EAAC;YACxB,IAAI;YACJ,WAAW,EAAE,IAAI,CAAC,GAAG;YACrB,OAAO,EAAE,IAAI,CAAC,OAAO;SACtB,CAAC,CAAC;IACL,CAAC;IAEM,MAAM,CAAC,IAAa,EAAE,SAAkB;QAC7C,OAAO,IAAA,4BAAkB,EAAC;YACxB,IAAI;YACJ,WAAW,EAAE,IAAI,CAAC,GAAG;YACrB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,SAAS;SACV,CAAC,CAAC;IACL,CAAC;IAEM,MAAM,CAAC,IAAa,EAAE,SAAkB;QAC7C,OAAO,IAAA,4BAAkB,EAAC;YACxB,IAAI;YACJ,WAAW,EAAE,IAAI,CAAC,GAAG;YACrB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,SAAS;SACV,CAAC,CAAC;IACL,CAAC;IAEM,MAAM,CAAC,IAAY;QACxB,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACtC,CAAC;CACF;AA/CD,wBA+CC"}
@@ -1,18 +1,20 @@
1
1
  import { IKryptos, IKryptosRsa } from "@lindorm/kryptos";
2
- import { BufferFormat } from "@lindorm/types";
2
+ import { DsaEncoding, KeyData } from "@lindorm/types";
3
3
  export type CreateRsaSignatureOptions = {
4
- data: string;
5
- format: BufferFormat;
4
+ data: KeyData;
5
+ dsaEncoding: DsaEncoding;
6
6
  kryptos: IKryptosRsa;
7
7
  };
8
8
  export type VerifyRsaSignatureOptions = {
9
- data: string;
10
- format: BufferFormat;
9
+ data: KeyData;
10
+ dsaEncoding: DsaEncoding;
11
+ encoding: BufferEncoding;
11
12
  kryptos: IKryptosRsa;
12
- signature: string;
13
+ signature: KeyData;
13
14
  };
14
15
  export type RsaKitOptions = {
15
- format?: BufferFormat;
16
+ dsa?: DsaEncoding;
17
+ encoding?: BufferEncoding;
16
18
  kryptos: IKryptos;
17
19
  };
18
20
  //# sourceMappingURL=rsa-kit.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"rsa-kit.d.ts","sourceRoot":"","sources":["../../src/types/rsa-kit.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,MAAM,MAAM,yBAAyB,GAAG;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,YAAY,CAAC;IACrB,OAAO,EAAE,WAAW,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,YAAY,CAAC;IACrB,OAAO,EAAE,WAAW,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,OAAO,EAAE,QAAQ,CAAC;CACnB,CAAC"}
1
+ {"version":3,"file":"rsa-kit.d.ts","sourceRoot":"","sources":["../../src/types/rsa-kit.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAEtD,MAAM,MAAM,yBAAyB,GAAG;IACtC,IAAI,EAAE,OAAO,CAAC;IACd,WAAW,EAAE,WAAW,CAAC;IACzB,OAAO,EAAE,WAAW,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG;IACtC,IAAI,EAAE,OAAO,CAAC;IACd,WAAW,EAAE,WAAW,CAAC;IACzB,QAAQ,EAAE,cAAc,CAAC;IACzB,OAAO,EAAE,WAAW,CAAC;IACrB,SAAS,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,GAAG,CAAC,EAAE,WAAW,CAAC;IAClB,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,OAAO,EAAE,QAAQ,CAAC;CACnB,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { IKryptosRsa } from "@lindorm/kryptos";
2
+ import { DsaEncoding } from "@lindorm/types";
3
+ import { SignPrivateKeyInput, VerifyPublicKeyInput } from "crypto";
4
+ export declare const getSignKey: (kryptos: IKryptosRsa, dsaEncoding: DsaEncoding) => SignPrivateKeyInput | string;
5
+ export declare const getVerifyKey: (kryptos: IKryptosRsa, dsaEncoding: DsaEncoding) => VerifyPublicKeyInput | string;
6
+ //# sourceMappingURL=get-key.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-key.d.ts","sourceRoot":"","sources":["../../../src/utils/private/get-key.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,OAAO,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,QAAQ,CAAC;AAKnE,eAAO,MAAM,UAAU,GACrB,SAAS,WAAW,EACpB,aAAa,WAAW,KACvB,mBAAmB,GAAG,MAqBxB,CAAC;AAEF,eAAO,MAAM,YAAY,GACvB,SAAS,WAAW,EACpB,aAAa,WAAW,KACvB,oBAAoB,GAAG,MAqBzB,CAAC"}
@@ -4,7 +4,7 @@ exports.getVerifyKey = exports.getSignKey = void 0;
4
4
  const constants_1 = require("constants");
5
5
  const errors_1 = require("../../errors");
6
6
  const RSA_PKCS1_SALT_LENGTH = 32;
7
- const getSignKey = (kryptos) => {
7
+ const getSignKey = (kryptos, dsaEncoding) => {
8
8
  const { privateKey } = kryptos.export("pem");
9
9
  if (!privateKey) {
10
10
  throw new errors_1.RsaError("Private key not found in key set", { debug: { kryptos } });
@@ -14,15 +14,16 @@ const getSignKey = (kryptos) => {
14
14
  key: privateKey,
15
15
  padding: constants_1.RSA_PKCS1_PSS_PADDING,
16
16
  saltLength: RSA_PKCS1_SALT_LENGTH,
17
+ dsaEncoding,
17
18
  };
18
19
  }
19
20
  if (kryptos.algorithm.startsWith("RS")) {
20
- return privateKey;
21
+ return { key: privateKey, dsaEncoding };
21
22
  }
22
23
  throw new errors_1.RsaError("Unsupported RSA algorithm", { debug: { kryptos } });
23
24
  };
24
25
  exports.getSignKey = getSignKey;
25
- const getVerifyKey = (kryptos) => {
26
+ const getVerifyKey = (kryptos, dsaEncoding) => {
26
27
  const { publicKey } = kryptos.export("pem");
27
28
  if (!publicKey) {
28
29
  throw new errors_1.RsaError("Public key not found in key set", { debug: { kryptos } });
@@ -32,12 +33,13 @@ const getVerifyKey = (kryptos) => {
32
33
  key: publicKey,
33
34
  padding: constants_1.RSA_PKCS1_PSS_PADDING,
34
35
  saltLength: RSA_PKCS1_SALT_LENGTH,
36
+ dsaEncoding,
35
37
  };
36
38
  }
37
39
  if (kryptos.algorithm.startsWith("RS")) {
38
- return publicKey;
40
+ return { key: publicKey, dsaEncoding };
39
41
  }
40
42
  throw new errors_1.RsaError("Unsupported RSA algorithm", { debug: { kryptos } });
41
43
  };
42
44
  exports.getVerifyKey = getVerifyKey;
43
- //# sourceMappingURL=get-options.js.map
45
+ //# sourceMappingURL=get-key.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-key.js","sourceRoot":"","sources":["../../../src/utils/private/get-key.ts"],"names":[],"mappings":";;;AAEA,yCAAkD;AAElD,yCAAwC;AAExC,MAAM,qBAAqB,GAAG,EAAW,CAAC;AAEnC,MAAM,UAAU,GAAG,CACxB,OAAoB,EACpB,WAAwB,EACM,EAAE;IAChC,MAAM,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAE7C,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,MAAM,IAAI,iBAAQ,CAAC,kCAAkC,EAAE,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;IACjF,CAAC;IAED,IAAI,OAAO,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;QACvC,OAAO;YACL,GAAG,EAAE,UAAU;YACf,OAAO,EAAE,iCAAqB;YAC9B,UAAU,EAAE,qBAAqB;YACjC,WAAW;SACZ,CAAC;IACJ,CAAC;IAED,IAAI,OAAO,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;QACvC,OAAO,EAAE,GAAG,EAAE,UAAU,EAAE,WAAW,EAAE,CAAC;IAC1C,CAAC;IAED,MAAM,IAAI,iBAAQ,CAAC,2BAA2B,EAAE,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;AAC1E,CAAC,CAAC;AAxBW,QAAA,UAAU,cAwBrB;AAEK,MAAM,YAAY,GAAG,CAC1B,OAAoB,EACpB,WAAwB,EACO,EAAE;IACjC,MAAM,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAE5C,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,MAAM,IAAI,iBAAQ,CAAC,iCAAiC,EAAE,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;IAChF,CAAC;IAED,IAAI,OAAO,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;QACvC,OAAO;YACL,GAAG,EAAE,SAAS;YACd,OAAO,EAAE,iCAAqB;YAC9B,UAAU,EAAE,qBAAqB;YACjC,WAAW;SACZ,CAAC;IACJ,CAAC;IAED,IAAI,OAAO,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;QACvC,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,WAAW,EAAE,CAAC;IACzC,CAAC;IAED,MAAM,IAAI,iBAAQ,CAAC,2BAA2B,EAAE,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;AAC1E,CAAC,CAAC;AAxBW,QAAA,YAAY,gBAwBvB"}
@@ -1,4 +1,4 @@
1
- export * from "./get-options";
1
+ export * from "./get-key";
2
2
  export * from "./map-algorithm";
3
3
  export * from "./rsa-signature";
4
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utils/private/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utils/private/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC"}
@@ -14,7 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./get-options"), exports);
17
+ __exportStar(require("./get-key"), exports);
18
18
  __exportStar(require("./map-algorithm"), exports);
19
19
  __exportStar(require("./rsa-signature"), exports);
20
20
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utils/private/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,gDAA8B;AAC9B,kDAAgC;AAChC,kDAAgC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utils/private/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,4CAA0B;AAC1B,kDAAgC;AAChC,kDAAgC"}
@@ -1 +1 @@
1
- {"version":3,"file":"map-algorithm.d.ts","sourceRoot":"","sources":["../../../src/utils/private/map-algorithm.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAG9C,eAAO,MAAM,eAAe,YAAa,WAAW,KAAG,YAMtD,CAAC"}
1
+ {"version":3,"file":"map-algorithm.d.ts","sourceRoot":"","sources":["../../../src/utils/private/map-algorithm.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAG9C,eAAO,MAAM,eAAe,GAAI,SAAS,WAAW,KAAG,YAMtD,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { CreateRsaSignatureOptions, VerifyRsaSignatureOptions } from "../../types";
2
- export declare const createRsaSignature: ({ data, format, kryptos, }: CreateRsaSignatureOptions) => string;
3
- export declare const verifyRsaSignature: ({ data, format, kryptos, signature, }: VerifyRsaSignatureOptions) => boolean;
2
+ export declare const createRsaSignature: ({ data, dsaEncoding, kryptos, }: CreateRsaSignatureOptions) => Buffer;
3
+ export declare const verifyRsaSignature: ({ data, dsaEncoding, encoding, kryptos, signature, }: VerifyRsaSignatureOptions) => boolean;
4
4
  export declare const assertRsaSignature: (options: VerifyRsaSignatureOptions) => void;
5
5
  //# sourceMappingURL=rsa-signature.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"rsa-signature.d.ts","sourceRoot":"","sources":["../../../src/utils/private/rsa-signature.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,yBAAyB,EAAE,yBAAyB,EAAE,MAAM,aAAa,CAAC;AAInF,eAAO,MAAM,kBAAkB,+BAI5B,yBAAyB,KAAG,MAIO,CAAC;AAEvC,eAAO,MAAM,kBAAkB,0CAK5B,yBAAyB,KAAG,OAIsB,CAAC;AAEtD,eAAO,MAAM,kBAAkB,YAAa,yBAAyB,KAAG,IAGvE,CAAC"}
1
+ {"version":3,"file":"rsa-signature.d.ts","sourceRoot":"","sources":["../../../src/utils/private/rsa-signature.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,yBAAyB,EAAE,yBAAyB,EAAE,MAAM,aAAa,CAAC;AAInF,eAAO,MAAM,kBAAkB,GAAI,iCAIhC,yBAAyB,KAAG,MAIY,CAAC;AAE5C,eAAO,MAAM,kBAAkB,GAAI,sDAMhC,yBAAyB,KAAG,OAO1B,CAAC;AAEN,eAAO,MAAM,kBAAkB,GAAI,SAAS,yBAAyB,KAAG,IAGvE,CAAC"}
@@ -1,19 +1,20 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.assertRsaSignature = exports.verifyRsaSignature = exports.createRsaSignature = void 0;
4
+ const is_1 = require("@lindorm/is");
4
5
  const crypto_1 = require("crypto");
5
6
  const errors_1 = require("../../errors");
6
- const get_options_1 = require("./get-options");
7
+ const get_key_1 = require("./get-key");
7
8
  const map_algorithm_1 = require("./map-algorithm");
8
- const createRsaSignature = ({ data, format, kryptos, }) => (0, crypto_1.createSign)((0, map_algorithm_1.mapRsaAlgorithm)(kryptos))
9
+ const createRsaSignature = ({ data, dsaEncoding, kryptos, }) => (0, crypto_1.createSign)((0, map_algorithm_1.mapRsaAlgorithm)(kryptos))
9
10
  .update(data)
10
11
  .end()
11
- .sign((0, get_options_1.getSignKey)(kryptos), format);
12
+ .sign((0, get_key_1.getSignKey)(kryptos, dsaEncoding));
12
13
  exports.createRsaSignature = createRsaSignature;
13
- const verifyRsaSignature = ({ data, format, kryptos, signature, }) => (0, crypto_1.createVerify)((0, map_algorithm_1.mapRsaAlgorithm)(kryptos))
14
+ const verifyRsaSignature = ({ data, dsaEncoding, encoding, kryptos, signature, }) => (0, crypto_1.createVerify)((0, map_algorithm_1.mapRsaAlgorithm)(kryptos))
14
15
  .update(data)
15
16
  .end()
16
- .verify((0, get_options_1.getVerifyKey)(kryptos), signature, format);
17
+ .verify((0, get_key_1.getVerifyKey)(kryptos, dsaEncoding), (0, is_1.isString)(signature) ? Buffer.from(signature, encoding) : signature);
17
18
  exports.verifyRsaSignature = verifyRsaSignature;
18
19
  const assertRsaSignature = (options) => {
19
20
  if ((0, exports.verifyRsaSignature)(options))
@@ -1 +1 @@
1
- {"version":3,"file":"rsa-signature.js","sourceRoot":"","sources":["../../../src/utils/private/rsa-signature.ts"],"names":[],"mappings":";;;AAAA,mCAAkD;AAClD,yCAAwC;AAExC,+CAAyD;AACzD,mDAAkD;AAE3C,MAAM,kBAAkB,GAAG,CAAC,EACjC,IAAI,EACJ,MAAM,EACN,OAAO,GACmB,EAAU,EAAE,CACtC,IAAA,mBAAU,EAAC,IAAA,+BAAe,EAAC,OAAO,CAAC,CAAC;KACjC,MAAM,CAAC,IAAI,CAAC;KACZ,GAAG,EAAE;KACL,IAAI,CAAC,IAAA,wBAAU,EAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;AAR1B,QAAA,kBAAkB,sBAQQ;AAEhC,MAAM,kBAAkB,GAAG,CAAC,EACjC,IAAI,EACJ,MAAM,EACN,OAAO,EACP,SAAS,GACiB,EAAW,EAAE,CACvC,IAAA,qBAAY,EAAC,IAAA,+BAAe,EAAC,OAAO,CAAC,CAAC;KACnC,MAAM,CAAC,IAAI,CAAC;KACZ,GAAG,EAAE;KACL,MAAM,CAAC,IAAA,0BAAY,EAAC,OAAO,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;AATzC,QAAA,kBAAkB,sBASuB;AAE/C,MAAM,kBAAkB,GAAG,CAAC,OAAkC,EAAQ,EAAE;IAC7E,IAAI,IAAA,0BAAkB,EAAC,OAAO,CAAC;QAAE,OAAO;IACxC,MAAM,IAAI,iBAAQ,CAAC,mBAAmB,CAAC,CAAC;AAC1C,CAAC,CAAC;AAHW,QAAA,kBAAkB,sBAG7B"}
1
+ {"version":3,"file":"rsa-signature.js","sourceRoot":"","sources":["../../../src/utils/private/rsa-signature.ts"],"names":[],"mappings":";;;AAAA,oCAAuC;AACvC,mCAAkD;AAClD,yCAAwC;AAExC,uCAAqD;AACrD,mDAAkD;AAE3C,MAAM,kBAAkB,GAAG,CAAC,EACjC,IAAI,EACJ,WAAW,EACX,OAAO,GACmB,EAAU,EAAE,CACtC,IAAA,mBAAU,EAAC,IAAA,+BAAe,EAAC,OAAO,CAAC,CAAC;KACjC,MAAM,CAAC,IAAI,CAAC;KACZ,GAAG,EAAE;KACL,IAAI,CAAC,IAAA,oBAAU,EAAC,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC;AAR/B,QAAA,kBAAkB,sBAQa;AAErC,MAAM,kBAAkB,GAAG,CAAC,EACjC,IAAI,EACJ,WAAW,EACX,QAAQ,EACR,OAAO,EACP,SAAS,GACiB,EAAW,EAAE,CACvC,IAAA,qBAAY,EAAC,IAAA,+BAAe,EAAC,OAAO,CAAC,CAAC;KACnC,MAAM,CAAC,IAAI,CAAC;KACZ,GAAG,EAAE;KACL,MAAM,CACL,IAAA,sBAAY,EAAC,OAAO,EAAE,WAAW,CAAC,EAClC,IAAA,aAAQ,EAAC,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CACnE,CAAC;AAbO,QAAA,kBAAkB,sBAazB;AAEC,MAAM,kBAAkB,GAAG,CAAC,OAAkC,EAAQ,EAAE;IAC7E,IAAI,IAAA,0BAAkB,EAAC,OAAO,CAAC;QAAE,OAAO;IACxC,MAAM,IAAI,iBAAQ,CAAC,mBAAmB,CAAC,CAAC;AAC1C,CAAC,CAAC;AAHW,QAAA,kBAAkB,sBAG7B"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lindorm/rsa",
3
- "version": "0.1.9",
3
+ "version": "0.2.0",
4
4
  "license": "AGPL-3.0-or-later",
5
5
  "author": "Jonn Nilsson",
6
6
  "repository": {
@@ -18,20 +18,23 @@
18
18
  "example": "ts-node example",
19
19
  "integration": "compd --file docker-compose.yml jest --config jest.config.integration.js --watch",
20
20
  "integration:focus": "compd --file docker-compose.yml jest --config jest.config.integration.js --watch $1",
21
+ "prettier": "prettier --write ./src/*",
21
22
  "test": "jest --watch --",
22
23
  "test:ci": "npm run test:unit",
23
24
  "test:integration": "jest --config jest.config.integration.js --",
24
25
  "test:unit": "jest --config jest.config.js --",
25
26
  "typecheck": "tsc --watch",
26
27
  "typecheck:ci": "tsc",
27
- "update": "ncu -u"
28
+ "update": "ncu -i",
29
+ "update:auto": "ncu -u"
28
30
  },
29
31
  "dependencies": {
30
- "@lindorm/errors": "^0.1.7",
31
- "@lindorm/kryptos": "^0.3.7"
32
+ "@lindorm/errors": "^0.1.8",
33
+ "@lindorm/is": "^0.1.8",
34
+ "@lindorm/kryptos": "^0.4.0"
32
35
  },
33
36
  "devDependencies": {
34
- "@lindorm/types": "^0.2.1"
37
+ "@lindorm/types": "^0.3.0"
35
38
  },
36
- "gitHead": "c3a0944569f1344aea5fa3431de8b36e4468a115"
39
+ "gitHead": "c1800f039a816f7ebce30379f8dce9c53ea9f5d1"
37
40
  }
@@ -1,5 +0,0 @@
1
- import { IKryptosRsa } from "@lindorm/kryptos";
2
- import { SignPrivateKeyInput, VerifyPublicKeyInput } from "crypto";
3
- export declare const getSignKey: (kryptos: IKryptosRsa) => SignPrivateKeyInput | string;
4
- export declare const getVerifyKey: (kryptos: IKryptosRsa) => VerifyPublicKeyInput | string;
5
- //# sourceMappingURL=get-options.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"get-options.d.ts","sourceRoot":"","sources":["../../../src/utils/private/get-options.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C,OAAO,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,QAAQ,CAAC;AAKnE,eAAO,MAAM,UAAU,YAAa,WAAW,KAAG,mBAAmB,GAAG,MAoBvE,CAAC;AAEF,eAAO,MAAM,YAAY,YAAa,WAAW,KAAG,oBAAoB,GAAG,MAoB1E,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"get-options.js","sourceRoot":"","sources":["../../../src/utils/private/get-options.ts"],"names":[],"mappings":";;;AACA,yCAAkD;AAElD,yCAAwC;AAExC,MAAM,qBAAqB,GAAG,EAAW,CAAC;AAEnC,MAAM,UAAU,GAAG,CAAC,OAAoB,EAAgC,EAAE;IAC/E,MAAM,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAE7C,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,MAAM,IAAI,iBAAQ,CAAC,kCAAkC,EAAE,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;IACjF,CAAC;IAED,IAAI,OAAO,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;QACvC,OAAO;YACL,GAAG,EAAE,UAAU;YACf,OAAO,EAAE,iCAAqB;YAC9B,UAAU,EAAE,qBAAqB;SAClC,CAAC;IACJ,CAAC;IAED,IAAI,OAAO,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;QACvC,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,MAAM,IAAI,iBAAQ,CAAC,2BAA2B,EAAE,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;AAC1E,CAAC,CAAC;AApBW,QAAA,UAAU,cAoBrB;AAEK,MAAM,YAAY,GAAG,CAAC,OAAoB,EAAiC,EAAE;IAClF,MAAM,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAE5C,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,MAAM,IAAI,iBAAQ,CAAC,iCAAiC,EAAE,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;IAChF,CAAC;IAED,IAAI,OAAO,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;QACvC,OAAO;YACL,GAAG,EAAE,SAAS;YACd,OAAO,EAAE,iCAAqB;YAC9B,UAAU,EAAE,qBAAqB;SAClC,CAAC;IACJ,CAAC;IAED,IAAI,OAAO,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;QACvC,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,IAAI,iBAAQ,CAAC,2BAA2B,EAAE,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;AAC1E,CAAC,CAAC;AApBW,QAAA,YAAY,gBAoBvB"}