@nmshd/crypto 1.0.8 → 2.0.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 (113) hide show
  1. package/dist/CoreBuffer.d.ts +0 -1
  2. package/dist/CoreBuffer.js +1 -4
  3. package/dist/CoreBuffer.js.map +1 -1
  4. package/dist/CryptoDerivation.js +2 -2
  5. package/dist/CryptoDerivation.js.map +1 -1
  6. package/dist/CryptoPrivateKey.d.ts +14 -17
  7. package/dist/CryptoPrivateKey.js +24 -39
  8. package/dist/CryptoPrivateKey.js.map +1 -1
  9. package/dist/CryptoPublicKey.d.ts +13 -16
  10. package/dist/CryptoPublicKey.js +22 -37
  11. package/dist/CryptoPublicKey.js.map +1 -1
  12. package/dist/CryptoSerializable.d.ts +5 -0
  13. package/dist/CryptoSerializable.js +15 -0
  14. package/dist/CryptoSerializable.js.map +1 -0
  15. package/dist/CryptoValidation.d.ts +4 -6
  16. package/dist/CryptoValidation.js +16 -29
  17. package/dist/CryptoValidation.js.map +1 -1
  18. package/dist/SodiumWrapper.js +5 -1
  19. package/dist/SodiumWrapper.js.map +1 -1
  20. package/dist/buildInformation.js +5 -5
  21. package/dist/encryption/CryptoCipher.d.ts +10 -11
  22. package/dist/encryption/CryptoCipher.js +62 -59
  23. package/dist/encryption/CryptoCipher.js.map +1 -1
  24. package/dist/encryption/CryptoEncryption.js +10 -12
  25. package/dist/encryption/CryptoEncryption.js.map +1 -1
  26. package/dist/encryption/CryptoSecretKey.d.ts +8 -9
  27. package/dist/encryption/CryptoSecretKey.js +36 -32
  28. package/dist/encryption/CryptoSecretKey.js.map +1 -1
  29. package/dist/exchange/CryptoExchange.d.ts +0 -2
  30. package/dist/exchange/CryptoExchange.js +5 -22
  31. package/dist/exchange/CryptoExchange.js.map +1 -1
  32. package/dist/exchange/CryptoExchangeKeypair.d.ts +10 -11
  33. package/dist/exchange/CryptoExchangeKeypair.js +33 -30
  34. package/dist/exchange/CryptoExchangeKeypair.js.map +1 -1
  35. package/dist/exchange/CryptoExchangePrivateKey.d.ts +8 -10
  36. package/dist/exchange/CryptoExchangePrivateKey.js +50 -31
  37. package/dist/exchange/CryptoExchangePrivateKey.js.map +1 -1
  38. package/dist/exchange/CryptoExchangePublicKey.d.ts +6 -7
  39. package/dist/exchange/CryptoExchangePublicKey.js +31 -32
  40. package/dist/exchange/CryptoExchangePublicKey.js.map +1 -1
  41. package/dist/exchange/CryptoExchangeSecrets.d.ts +10 -11
  42. package/dist/exchange/CryptoExchangeSecrets.js +33 -35
  43. package/dist/exchange/CryptoExchangeSecrets.js.map +1 -1
  44. package/dist/exchange/CryptoExchangeValidation.d.ts +7 -10
  45. package/dist/exchange/CryptoExchangeValidation.js +9 -36
  46. package/dist/exchange/CryptoExchangeValidation.js.map +1 -1
  47. package/dist/index.d.ts +1 -0
  48. package/dist/index.js +6 -1
  49. package/dist/index.js.map +1 -1
  50. package/dist/relationship/CryptoRelationshipPublicRequest.d.ts +8 -9
  51. package/dist/relationship/CryptoRelationshipPublicRequest.js +23 -42
  52. package/dist/relationship/CryptoRelationshipPublicRequest.js.map +1 -1
  53. package/dist/relationship/CryptoRelationshipPublicResponse.d.ts +8 -9
  54. package/dist/relationship/CryptoRelationshipPublicResponse.js +24 -38
  55. package/dist/relationship/CryptoRelationshipPublicResponse.js.map +1 -1
  56. package/dist/relationship/CryptoRelationshipRequestSecrets.d.ts +6 -7
  57. package/dist/relationship/CryptoRelationshipRequestSecrets.js +7 -10
  58. package/dist/relationship/CryptoRelationshipRequestSecrets.js.map +1 -1
  59. package/dist/relationship/CryptoRelationshipSecrets.d.ts +6 -7
  60. package/dist/relationship/CryptoRelationshipSecrets.js +8 -11
  61. package/dist/relationship/CryptoRelationshipSecrets.js.map +1 -1
  62. package/dist/signature/CryptoSignature.d.ts +12 -13
  63. package/dist/signature/CryptoSignature.js +39 -35
  64. package/dist/signature/CryptoSignature.js.map +1 -1
  65. package/dist/signature/CryptoSignatureAlgorithm.d.ts +5 -0
  66. package/dist/signature/CryptoSignatureAlgorithm.js +3 -0
  67. package/dist/signature/CryptoSignatureAlgorithm.js.map +1 -0
  68. package/dist/signature/CryptoSignatureKeypair.d.ts +10 -11
  69. package/dist/signature/CryptoSignatureKeypair.js +36 -38
  70. package/dist/signature/CryptoSignatureKeypair.js.map +1 -1
  71. package/dist/signature/CryptoSignaturePrivateKey.d.ts +10 -13
  72. package/dist/signature/CryptoSignaturePrivateKey.js +28 -37
  73. package/dist/signature/CryptoSignaturePrivateKey.js.map +1 -1
  74. package/dist/signature/CryptoSignaturePublicKey.d.ts +9 -12
  75. package/dist/signature/CryptoSignaturePublicKey.js +22 -44
  76. package/dist/signature/CryptoSignaturePublicKey.js.map +1 -1
  77. package/dist/signature/CryptoSignatureValidation.d.ts +10 -12
  78. package/dist/signature/CryptoSignatureValidation.js +13 -35
  79. package/dist/signature/CryptoSignatureValidation.js.map +1 -1
  80. package/dist/signature/CryptoSignatures.d.ts +1 -5
  81. package/dist/signature/CryptoSignatures.js +5 -5
  82. package/dist/signature/CryptoSignatures.js.map +1 -1
  83. package/dist/state/CryptoPrivateState.d.ts +12 -20
  84. package/dist/state/CryptoPrivateState.js +73 -77
  85. package/dist/state/CryptoPrivateState.js.map +1 -1
  86. package/dist/state/CryptoPrivateStateReceive.d.ts +4 -6
  87. package/dist/state/CryptoPrivateStateReceive.js +27 -39
  88. package/dist/state/CryptoPrivateStateReceive.js.map +1 -1
  89. package/dist/state/CryptoPrivateStateTransmit.d.ts +3 -4
  90. package/dist/state/CryptoPrivateStateTransmit.js +14 -40
  91. package/dist/state/CryptoPrivateStateTransmit.js.map +1 -1
  92. package/dist/state/CryptoPublicState.d.ts +11 -16
  93. package/dist/state/CryptoPublicState.js +44 -53
  94. package/dist/state/CryptoPublicState.js.map +1 -1
  95. package/dist/stream/CryptoStream.js +5 -2
  96. package/dist/stream/CryptoStream.js.map +1 -1
  97. package/dist/stream/CryptoStreamAddress.d.ts +7 -10
  98. package/dist/stream/CryptoStreamAddress.js +13 -29
  99. package/dist/stream/CryptoStreamAddress.js.map +1 -1
  100. package/dist/stream/CryptoStreamHeader.d.ts +9 -12
  101. package/dist/stream/CryptoStreamHeader.js +15 -18
  102. package/dist/stream/CryptoStreamHeader.js.map +1 -1
  103. package/dist/stream/CryptoStreamState.d.ts +6 -10
  104. package/dist/stream/CryptoStreamState.js +15 -33
  105. package/dist/stream/CryptoStreamState.js.map +1 -1
  106. package/lib-web/nmshd.crypto.js +795 -1023
  107. package/lib-web/nmshd.crypto.js.map +1 -1
  108. package/lib-web/nmshd.crypto.min.js +1 -1
  109. package/lib-web/nmshd.crypto.min.js.map +1 -1
  110. package/package.json +18 -18
  111. package/dist/CryptoSerializableAsync.d.ts +0 -5
  112. package/dist/CryptoSerializableAsync.js +0 -24
  113. package/dist/CryptoSerializableAsync.js.map +0 -1
@@ -15,7 +15,7 @@ const ts_serval_1 = require("@js-soft/ts-serval");
15
15
  const CryptoDerivation_1 = require("../CryptoDerivation");
16
16
  const CryptoError_1 = require("../CryptoError");
17
17
  const CryptoErrorCode_1 = require("../CryptoErrorCode");
18
- const CryptoSerializableAsync_1 = require("../CryptoSerializableAsync");
18
+ const CryptoSerializable_1 = require("../CryptoSerializable");
19
19
  const CryptoEncryption_1 = require("../encryption/CryptoEncryption");
20
20
  const CryptoSecretKey_1 = require("../encryption/CryptoSecretKey");
21
21
  const CryptoExchange_1 = require("../exchange/CryptoExchange");
@@ -29,12 +29,9 @@ const CryptoPrivateStateTransmit_1 = require("../state/CryptoPrivateStateTransmi
29
29
  const CryptoStateType_1 = require("../state/CryptoStateType");
30
30
  const CryptoRelationshipPublicResponse_1 = require("./CryptoRelationshipPublicResponse");
31
31
  const CryptoRelationshipType_1 = require("./CryptoRelationshipType");
32
- let CryptoRelationshipSecrets = CryptoRelationshipSecrets_1 = class CryptoRelationshipSecrets extends CryptoSerializableAsync_1.CryptoSerializableAsync {
33
- static async from(value) {
34
- return (await super.from(value, CryptoRelationshipSecrets_1));
35
- }
36
- static async deserialize(value) {
37
- return (await super.deserialize(value, CryptoRelationshipSecrets_1));
32
+ let CryptoRelationshipSecrets = CryptoRelationshipSecrets_1 = class CryptoRelationshipSecrets extends CryptoSerializable_1.CryptoSerializable {
33
+ static from(value) {
34
+ return this.fromAny(value);
38
35
  }
39
36
  async sign(content, algorithm = 1 /* SHA256 */) {
40
37
  return await CryptoSignatures_1.CryptoSignatures.sign(content, this.signatureKeypair.privateKey, algorithm);
@@ -63,8 +60,8 @@ let CryptoRelationshipSecrets = CryptoRelationshipSecrets_1 = class CryptoRelati
63
60
  async decryptRequest(cipher) {
64
61
  return await CryptoEncryption_1.CryptoEncryption.decrypt(cipher, this.requestSecretKey);
65
62
  }
66
- async toPublicResponse() {
67
- return await CryptoRelationshipPublicResponse_1.CryptoRelationshipPublicResponse.from({
63
+ toPublicResponse() {
64
+ return CryptoRelationshipPublicResponse_1.CryptoRelationshipPublicResponse.from({
68
65
  exchangeKey: this.exchangeKeypair.publicKey,
69
66
  signatureKey: this.signatureKeypair.publicKey,
70
67
  state: this.transmitState.toPublicState()
@@ -95,7 +92,7 @@ let CryptoRelationshipSecrets = CryptoRelationshipSecrets_1 = class CryptoRelati
95
92
  stateType: CryptoStateType_1.CryptoStateType.Transmit
96
93
  })
97
94
  ]);
98
- return await CryptoRelationshipSecrets_1.from({
95
+ return CryptoRelationshipSecrets_1.from({
99
96
  exchangeKeypair: exchangeKeypair,
100
97
  signatureKeypair: signatureKeypair,
101
98
  receiveState: receiveState,
@@ -140,7 +137,7 @@ let CryptoRelationshipSecrets = CryptoRelationshipSecrets_1 = class CryptoRelati
140
137
  ]);
141
138
  const masterKey = await CryptoExchange_1.CryptoExchange.deriveTemplator(templateExchangeKeypair, peerTemplateKey);
142
139
  const secretKey = await CryptoDerivation_1.CryptoDerivation.deriveKeyFromBase(masterKey.receivingKey, 1, "REQTMP01");
143
- return await CryptoRelationshipSecrets_1.from({
140
+ return CryptoRelationshipSecrets_1.from({
144
141
  exchangeKeypair: exchangeKeypair,
145
142
  signatureKeypair: signatureKeypair,
146
143
  receiveState: receiveState,
@@ -1 +1 @@
1
- {"version":3,"file":"CryptoRelationshipSecrets.js","sourceRoot":"","sources":["../../src/relationship/CryptoRelationshipSecrets.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CryptoRelationshipSecrets.js","sourceRoot":"","sources":["../../src/relationship/CryptoRelationshipSecrets.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
- import { ISerializableAsync, ISerialized } from "@js-soft/ts-serval";
1
+ import { ISerializable, ISerialized } from "@js-soft/ts-serval";
2
2
  import { CoreBuffer, IClearable } from "../CoreBuffer";
3
- import { CryptoSerializableAsync } from "../CryptoSerializableAsync";
3
+ import { CryptoSerializable } from "../CryptoSerializable";
4
4
  import { CryptoHashAlgorithm } from "../hash/CryptoHash";
5
5
  export interface ICryptoSignatureSerialized extends ISerialized {
6
6
  sig: string;
@@ -8,22 +8,21 @@ export interface ICryptoSignatureSerialized extends ISerialized {
8
8
  kid?: string;
9
9
  id?: string;
10
10
  }
11
- export interface ICryptoSignature extends ISerializableAsync {
11
+ export interface ICryptoSignature extends ISerializable {
12
12
  signature: CoreBuffer;
13
13
  algorithm: CryptoHashAlgorithm;
14
14
  keyId?: string;
15
15
  id?: string;
16
16
  }
17
- export declare class CryptoSignature extends CryptoSerializableAsync implements ICryptoSignature, IClearable {
18
- readonly signature: CoreBuffer;
19
- readonly algorithm: CryptoHashAlgorithm;
20
- readonly keyId?: string;
21
- readonly id?: string;
22
- constructor(signature: CoreBuffer, algorithm: CryptoHashAlgorithm, keyId?: string, id?: string);
17
+ export declare class CryptoSignature extends CryptoSerializable implements ICryptoSignature, IClearable {
18
+ signature: CoreBuffer;
19
+ algorithm: CryptoHashAlgorithm;
20
+ keyId?: string;
21
+ id?: string;
23
22
  toJSON(verbose?: boolean): ICryptoSignatureSerialized;
24
23
  clear(): void;
25
- static from(value: CryptoSignature | ICryptoSignature): Promise<CryptoSignature>;
26
- static fromJSON(value: ICryptoSignatureSerialized): Promise<CryptoSignature>;
27
- static fromBase64(value: string): Promise<CryptoSignature>;
28
- static deserialize(value: string): Promise<CryptoSignature>;
24
+ static from(value: CryptoSignature | ICryptoSignature): CryptoSignature;
25
+ static preFrom(value: any): any;
26
+ static fromJSON(value: ICryptoSignatureSerialized): CryptoSignature;
27
+ static fromBase64(value: string): CryptoSignature;
29
28
  }
@@ -8,28 +8,13 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
8
8
  var __metadata = (this && this.__metadata) || function (k, v) {
9
9
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
10
  };
11
- var CryptoSignature_1;
12
11
  Object.defineProperty(exports, "__esModule", { value: true });
13
12
  exports.CryptoSignature = void 0;
14
13
  const ts_serval_1 = require("@js-soft/ts-serval");
15
14
  const CoreBuffer_1 = require("../CoreBuffer");
16
- const CryptoSerializableAsync_1 = require("../CryptoSerializableAsync");
15
+ const CryptoSerializable_1 = require("../CryptoSerializable");
17
16
  const CryptoSignatureValidation_1 = require("./CryptoSignatureValidation");
18
- let CryptoSignature = CryptoSignature_1 = class CryptoSignature extends CryptoSerializableAsync_1.CryptoSerializableAsync {
19
- constructor(signature, algorithm, keyId, id) {
20
- let error;
21
- error = CryptoSignatureValidation_1.CryptoSignatureValidation.checkHashAlgorithm(algorithm);
22
- if (error)
23
- throw error;
24
- error = CryptoSignatureValidation_1.CryptoSignatureValidation.checkSignatureAsBuffer(signature);
25
- if (error)
26
- throw error;
27
- super();
28
- this.signature = signature;
29
- this.algorithm = algorithm;
30
- this.keyId = keyId;
31
- this.id = id;
32
- }
17
+ let CryptoSignature = class CryptoSignature extends CryptoSerializable_1.CryptoSerializable {
33
18
  toJSON(verbose = true) {
34
19
  const obj = {
35
20
  sig: this.signature.toBase64URL(),
@@ -44,29 +29,48 @@ let CryptoSignature = CryptoSignature_1 = class CryptoSignature extends CryptoSe
44
29
  this.signature.clear();
45
30
  }
46
31
  static from(value) {
47
- return Promise.resolve(new CryptoSignature_1(value.signature, value.algorithm));
32
+ return this.fromAny(value);
48
33
  }
49
- static fromJSON(value) {
50
- let error = CryptoSignatureValidation_1.CryptoSignatureValidation.checkHashAlgorithm(value.alg);
51
- if (error)
52
- throw error;
53
- error = CryptoSignatureValidation_1.CryptoSignatureValidation.checkSignatureAsString(value.sig);
54
- if (error)
55
- throw error;
56
- const buffer = CoreBuffer_1.CoreBuffer.fromBase64URL(value.sig);
57
- return Promise.resolve(new CryptoSignature_1(buffer, value.alg));
34
+ static preFrom(value) {
35
+ if (value.sig) {
36
+ value = {
37
+ signature: value.sig,
38
+ algorithm: value.alg
39
+ };
40
+ }
41
+ CryptoSignatureValidation_1.CryptoSignatureValidation.checkSignature(value.signature);
42
+ CryptoSignatureValidation_1.CryptoSignatureValidation.checkHashAlgorithm(value.algorithm);
43
+ return value;
58
44
  }
59
- static async fromBase64(value) {
60
- return await this.deserialize(CoreBuffer_1.CoreBuffer.base64_utf8(value));
45
+ static fromJSON(value) {
46
+ return this.fromAny(value);
61
47
  }
62
- static async deserialize(value) {
63
- const obj = JSON.parse(value);
64
- return await this.fromJSON(obj);
48
+ static fromBase64(value) {
49
+ return this.deserialize(CoreBuffer_1.CoreBuffer.base64_utf8(value));
65
50
  }
66
51
  };
67
- CryptoSignature = CryptoSignature_1 = __decorate([
68
- (0, ts_serval_1.type)("CryptoSignature"),
69
- __metadata("design:paramtypes", [CoreBuffer_1.CoreBuffer, Number, String, String])
52
+ __decorate([
53
+ (0, ts_serval_1.validate)(),
54
+ (0, ts_serval_1.serialize)(),
55
+ __metadata("design:type", CoreBuffer_1.CoreBuffer)
56
+ ], CryptoSignature.prototype, "signature", void 0);
57
+ __decorate([
58
+ (0, ts_serval_1.validate)(),
59
+ (0, ts_serval_1.serialize)(),
60
+ __metadata("design:type", Number)
61
+ ], CryptoSignature.prototype, "algorithm", void 0);
62
+ __decorate([
63
+ (0, ts_serval_1.validate)({ nullable: true }),
64
+ (0, ts_serval_1.serialize)(),
65
+ __metadata("design:type", String)
66
+ ], CryptoSignature.prototype, "keyId", void 0);
67
+ __decorate([
68
+ (0, ts_serval_1.validate)({ nullable: true }),
69
+ (0, ts_serval_1.serialize)(),
70
+ __metadata("design:type", String)
71
+ ], CryptoSignature.prototype, "id", void 0);
72
+ CryptoSignature = __decorate([
73
+ (0, ts_serval_1.type)("CryptoSignature")
70
74
  ], CryptoSignature);
71
75
  exports.CryptoSignature = CryptoSignature;
72
76
  //# sourceMappingURL=CryptoSignature.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CryptoSignature.js","sourceRoot":"","sources":["../../src/signature/CryptoSignature.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,kDAA2E;AAC3E,8CAAuD;AACvD,wEAAqE;AAErE,2EAAwE;AAiBxE,IAAa,eAAe,uBAA5B,MAAa,eAAgB,SAAQ,iDAAuB;IAMxD,YAAmB,SAAqB,EAAE,SAA8B,EAAE,KAAc,EAAE,EAAW;QACjG,IAAI,KAAK,CAAC;QACV,KAAK,GAAG,qDAAyB,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC;QAChE,IAAI,KAAK;YAAE,MAAM,KAAK,CAAC;QAEvB,KAAK,GAAG,qDAAyB,CAAC,sBAAsB,CAAC,SAAS,CAAC,CAAC;QACpE,IAAI,KAAK;YAAE,MAAM,KAAK,CAAC;QAEvB,KAAK,EAAE,CAAC;QAER,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;IACjB,CAAC;IAEM,MAAM,CAAC,OAAO,GAAG,IAAI;QACxB,MAAM,GAAG,GAA+B;YACpC,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE;YACjC,GAAG,EAAE,IAAI,CAAC,SAAS;SACtB,CAAC;QACF,IAAI,OAAO,EAAE;YACT,GAAG,CAAC,OAAO,CAAC,GAAG,iBAAiB,CAAC;SACpC;QACD,OAAO,GAAG,CAAC;IACf,CAAC;IAEM,KAAK;QACR,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;IAC3B,CAAC;IAEM,MAAM,CAAC,IAAI,CAAC,KAAyC;QACxD,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,iBAAe,CAAC,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;IAClF,CAAC;IAEM,MAAM,CAAC,QAAQ,CAAC,KAAiC;QACpD,IAAI,KAAK,GAAG,qDAAyB,CAAC,kBAAkB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACpE,IAAI,KAAK;YAAE,MAAM,KAAK,CAAC;QAEvB,KAAK,GAAG,qDAAyB,CAAC,sBAAsB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACpE,IAAI,KAAK;YAAE,MAAM,KAAK,CAAC;QAEvB,MAAM,MAAM,GAAG,uBAAU,CAAC,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACnD,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,iBAAe,CAAC,MAAM,EAAE,KAAK,CAAC,GAA0B,CAAC,CAAC,CAAC;IAC1F,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,KAAa;QACxC,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,uBAAU,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;IACjE,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,KAAa;QACzC,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC9B,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;IACpC,CAAC;CACJ,CAAA;AA5DY,eAAe;IAD3B,IAAA,gBAAI,EAAC,iBAAiB,CAAC;qCAOU,uBAAU;GAN/B,eAAe,CA4D3B;AA5DY,0CAAe"}
1
+ {"version":3,"file":"CryptoSignature.js","sourceRoot":"","sources":["../../src/signature/CryptoSignature.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,kDAA2F;AAC3F,8CAAuD;AACvD,8DAA2D;AAE3D,2EAAwE;AAiBxE,IAAa,eAAe,GAA5B,MAAa,eAAgB,SAAQ,uCAAkB;IAiBnC,MAAM,CAAC,OAAO,GAAG,IAAI;QACjC,MAAM,GAAG,GAA+B;YACpC,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE;YACjC,GAAG,EAAE,IAAI,CAAC,SAAS;SACtB,CAAC;QACF,IAAI,OAAO,EAAE;YACT,GAAG,CAAC,OAAO,CAAC,GAAG,iBAAiB,CAAC;SACpC;QACD,OAAO,GAAG,CAAC;IACf,CAAC;IAEM,KAAK;QACR,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;IAC3B,CAAC;IAEM,MAAM,CAAC,IAAI,CAAC,KAAyC;QACxD,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;IAEM,MAAM,CAAU,OAAO,CAAC,KAAU;QACrC,IAAI,KAAK,CAAC,GAAG,EAAE;YACX,KAAK,GAAG;gBACJ,SAAS,EAAE,KAAK,CAAC,GAAG;gBACpB,SAAS,EAAE,KAAK,CAAC,GAAG;aACvB,CAAC;SACL;QAED,qDAAyB,CAAC,cAAc,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QAC1D,qDAAyB,CAAC,kBAAkB,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QAE9D,OAAO,KAAK,CAAC;IACjB,CAAC;IAEM,MAAM,CAAC,QAAQ,CAAC,KAAiC;QACpD,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;IAEM,MAAM,CAAC,UAAU,CAAC,KAAa;QAClC,OAAO,IAAI,CAAC,WAAW,CAAC,uBAAU,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;IAC3D,CAAC;CACJ,CAAA;AAtDG;IAFC,IAAA,oBAAQ,GAAE;IACV,IAAA,qBAAS,GAAE;8BACM,uBAAU;kDAAC;AAI7B;IAFC,IAAA,oBAAQ,GAAE;IACV,IAAA,qBAAS,GAAE;;kDAC0B;AAItC;IAFC,IAAA,oBAAQ,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IAC5B,IAAA,qBAAS,GAAE;;8CACU;AAItB;IAFC,IAAA,oBAAQ,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IAC5B,IAAA,qBAAS,GAAE;;2CACO;AAfV,eAAe;IAD3B,IAAA,gBAAI,EAAC,iBAAiB,CAAC;GACX,eAAe,CAyD3B;AAzDY,0CAAe"}
@@ -0,0 +1,5 @@
1
+ export declare const enum CryptoSignatureAlgorithm {
2
+ ECDSA_P256 = 1,
3
+ ECDSA_P521 = 2,
4
+ ECDSA_ED25519 = 3
5
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=CryptoSignatureAlgorithm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CryptoSignatureAlgorithm.js","sourceRoot":"","sources":["../../src/signature/CryptoSignatureAlgorithm.ts"],"names":[],"mappings":""}
@@ -1,24 +1,23 @@
1
- import { ISerializableAsync, ISerialized } from "@js-soft/ts-serval";
1
+ import { ISerializable, ISerialized } from "@js-soft/ts-serval";
2
2
  import { IClearable } from "../CoreBuffer";
3
- import { CryptoSerializableAsync } from "../CryptoSerializableAsync";
3
+ import { CryptoSerializable } from "../CryptoSerializable";
4
4
  import { CryptoSignaturePrivateKey, ICryptoSignaturePrivateKey, ICryptoSignaturePrivateKeySerialized } from "./CryptoSignaturePrivateKey";
5
5
  import { CryptoSignaturePublicKey, ICryptoSignaturePublicKey, ICryptoSignaturePublicKeySerialized } from "./CryptoSignaturePublicKey";
6
6
  export interface ICryptoSignatureKeypairSerialized extends ISerialized {
7
7
  pub: ICryptoSignaturePublicKeySerialized;
8
8
  prv: ICryptoSignaturePrivateKeySerialized;
9
9
  }
10
- export interface ICryptoSignatureKeypair extends ISerializableAsync {
10
+ export interface ICryptoSignatureKeypair extends ISerializable {
11
11
  publicKey: ICryptoSignaturePublicKey;
12
12
  privateKey: ICryptoSignaturePrivateKey;
13
13
  }
14
- export declare class CryptoSignatureKeypair extends CryptoSerializableAsync implements ICryptoSignatureKeypair, IClearable {
15
- readonly publicKey: CryptoSignaturePublicKey;
16
- readonly privateKey: CryptoSignaturePrivateKey;
17
- constructor(publicKey: CryptoSignaturePublicKey, privateKey: CryptoSignaturePrivateKey);
14
+ export declare class CryptoSignatureKeypair extends CryptoSerializable implements ICryptoSignatureKeypair, IClearable {
15
+ publicKey: CryptoSignaturePublicKey;
16
+ privateKey: CryptoSignaturePrivateKey;
18
17
  toJSON(verbose?: boolean): ICryptoSignatureKeypairSerialized;
19
18
  clear(): void;
20
- static from(value: CryptoSignatureKeypair | ICryptoSignatureKeypair): Promise<CryptoSignatureKeypair>;
21
- static fromJSON(value: ICryptoSignatureKeypairSerialized): Promise<CryptoSignatureKeypair>;
22
- static fromBase64(value: string): Promise<CryptoSignatureKeypair>;
23
- static deserialize(value: string): Promise<CryptoSignatureKeypair>;
19
+ static from(value: CryptoSignatureKeypair | ICryptoSignatureKeypair): CryptoSignatureKeypair;
20
+ protected static preFrom(value: any): any;
21
+ static fromJSON(value: ICryptoSignatureKeypairSerialized): CryptoSignatureKeypair;
22
+ static fromBase64(value: string): CryptoSignatureKeypair;
24
23
  }
@@ -8,63 +8,61 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
8
8
  var __metadata = (this && this.__metadata) || function (k, v) {
9
9
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
10
  };
11
- var CryptoSignatureKeypair_1;
12
11
  Object.defineProperty(exports, "__esModule", { value: true });
13
12
  exports.CryptoSignatureKeypair = void 0;
14
13
  const ts_serval_1 = require("@js-soft/ts-serval");
15
14
  const CoreBuffer_1 = require("../CoreBuffer");
16
- const CryptoSerializableAsync_1 = require("../CryptoSerializableAsync");
15
+ const CryptoError_1 = require("../CryptoError");
16
+ const CryptoErrorCode_1 = require("../CryptoErrorCode");
17
+ const CryptoSerializable_1 = require("../CryptoSerializable");
17
18
  const CryptoSignaturePrivateKey_1 = require("./CryptoSignaturePrivateKey");
18
19
  const CryptoSignaturePublicKey_1 = require("./CryptoSignaturePublicKey");
19
- const CryptoSignatureValidation_1 = require("./CryptoSignatureValidation");
20
- let CryptoSignatureKeypair = CryptoSignatureKeypair_1 = class CryptoSignatureKeypair extends CryptoSerializableAsync_1.CryptoSerializableAsync {
21
- constructor(publicKey, privateKey) {
22
- const error = CryptoSignatureValidation_1.CryptoSignatureValidation.checkSignatureKeypair(privateKey, publicKey);
23
- if (error)
24
- throw error;
25
- super();
26
- this.publicKey = publicKey;
27
- this.privateKey = privateKey;
28
- }
20
+ let CryptoSignatureKeypair = class CryptoSignatureKeypair extends CryptoSerializable_1.CryptoSerializable {
29
21
  toJSON(verbose = true) {
30
- const obj = {
22
+ return {
31
23
  pub: this.publicKey.toJSON(false),
32
- prv: this.privateKey.toJSON(false)
24
+ prv: this.privateKey.toJSON(false),
25
+ "@type": verbose ? "CryptoSignatureKeypair" : undefined
33
26
  };
34
- if (verbose) {
35
- obj["@type"] = "CryptoSignatureKeypair";
36
- }
37
- return obj;
38
27
  }
39
28
  clear() {
40
29
  this.publicKey.clear();
41
30
  this.privateKey.clear();
42
31
  }
43
- static async from(value) {
44
- const [privateKey, publicKey] = await Promise.all([
45
- CryptoSignaturePrivateKey_1.CryptoSignaturePrivateKey.from(value.privateKey),
46
- CryptoSignaturePublicKey_1.CryptoSignaturePublicKey.from(value.publicKey)
47
- ]);
48
- return new CryptoSignatureKeypair_1(publicKey, privateKey);
32
+ static from(value) {
33
+ return this.fromAny(value);
49
34
  }
50
- static async fromJSON(value) {
51
- const [privateKey, publicKey] = await Promise.all([
52
- CryptoSignaturePrivateKey_1.CryptoSignaturePrivateKey.fromJSON(value.prv),
53
- CryptoSignaturePublicKey_1.CryptoSignaturePublicKey.fromJSON(value.pub)
54
- ]);
55
- return new CryptoSignatureKeypair_1(publicKey, privateKey);
35
+ static preFrom(value) {
36
+ if (value.pub) {
37
+ value = {
38
+ publicKey: value.pub,
39
+ privateKey: value.prv
40
+ };
41
+ }
42
+ if (value.privateKey.algorithm !== value.publicKey.algorithm) {
43
+ throw new CryptoError_1.CryptoError(CryptoErrorCode_1.CryptoErrorCode.SignatureWrongAlgorithm, "Algorithms of private and public key do not match.");
44
+ }
45
+ return value;
56
46
  }
57
- static async fromBase64(value) {
58
- return await this.deserialize(CoreBuffer_1.CoreBuffer.base64_utf8(value));
47
+ static fromJSON(value) {
48
+ return this.fromAny(value);
59
49
  }
60
- static async deserialize(value) {
61
- const obj = JSON.parse(value);
62
- return await this.fromJSON(obj);
50
+ static fromBase64(value) {
51
+ return this.deserialize(CoreBuffer_1.CoreBuffer.base64_utf8(value));
63
52
  }
64
53
  };
65
- CryptoSignatureKeypair = CryptoSignatureKeypair_1 = __decorate([
66
- (0, ts_serval_1.type)("CryptoSignatureKeypair"),
67
- __metadata("design:paramtypes", [CryptoSignaturePublicKey_1.CryptoSignaturePublicKey, CryptoSignaturePrivateKey_1.CryptoSignaturePrivateKey])
54
+ __decorate([
55
+ (0, ts_serval_1.validate)(),
56
+ (0, ts_serval_1.serialize)(),
57
+ __metadata("design:type", CryptoSignaturePublicKey_1.CryptoSignaturePublicKey)
58
+ ], CryptoSignatureKeypair.prototype, "publicKey", void 0);
59
+ __decorate([
60
+ (0, ts_serval_1.validate)(),
61
+ (0, ts_serval_1.serialize)(),
62
+ __metadata("design:type", CryptoSignaturePrivateKey_1.CryptoSignaturePrivateKey)
63
+ ], CryptoSignatureKeypair.prototype, "privateKey", void 0);
64
+ CryptoSignatureKeypair = __decorate([
65
+ (0, ts_serval_1.type)("CryptoSignatureKeypair")
68
66
  ], CryptoSignatureKeypair);
69
67
  exports.CryptoSignatureKeypair = CryptoSignatureKeypair;
70
68
  //# sourceMappingURL=CryptoSignatureKeypair.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CryptoSignatureKeypair.js","sourceRoot":"","sources":["../../src/signature/CryptoSignatureKeypair.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,kDAA2E;AAC3E,8CAAuD;AACvD,wEAAqE;AACrE,2EAIqC;AACrC,yEAIoC;AACpC,2EAAwE;AAaxE,IAAa,sBAAsB,8BAAnC,MAAa,sBAAuB,SAAQ,iDAAuB;IAI/D,YAAmB,SAAmC,EAAE,UAAqC;QACzF,MAAM,KAAK,GAAG,qDAAyB,CAAC,qBAAqB,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;QACrF,IAAI,KAAK;YAAE,MAAM,KAAK,CAAC;QAEvB,KAAK,EAAE,CAAC;QAER,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IACjC,CAAC;IAEM,MAAM,CAAC,OAAO,GAAG,IAAI;QACxB,MAAM,GAAG,GAAsC;YAC3C,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC;YACjC,GAAG,EAAE,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC;SACrC,CAAC;QACF,IAAI,OAAO,EAAE;YACT,GAAG,CAAC,OAAO,CAAC,GAAG,wBAAwB,CAAC;SAC3C;QACD,OAAO,GAAG,CAAC;IACf,CAAC;IAEM,KAAK;QACR,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;QACvB,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;IAC5B,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,KAAuD;QAC5E,MAAM,CAAC,UAAU,EAAE,SAAS,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YAC9C,qDAAyB,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC;YAChD,mDAAwB,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;SACjD,CAAC,CAAC;QAEH,OAAO,IAAI,wBAAsB,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;IAC7D,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAwC;QACjE,MAAM,CAAC,UAAU,EAAE,SAAS,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YAC9C,qDAAyB,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC;YAC7C,mDAAwB,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC;SAC/C,CAAC,CAAC;QAEH,OAAO,IAAI,wBAAsB,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;IAC7D,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,KAAa;QACxC,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,uBAAU,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;IACjE,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,KAAa;QACzC,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC9B,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;IACpC,CAAC;CACJ,CAAA;AAxDY,sBAAsB;IADlC,IAAA,gBAAI,EAAC,wBAAwB,CAAC;qCAKG,mDAAwB,EAAc,qDAAyB;GAJpF,sBAAsB,CAwDlC;AAxDY,wDAAsB"}
1
+ {"version":3,"file":"CryptoSignatureKeypair.js","sourceRoot":"","sources":["../../src/signature/CryptoSignatureKeypair.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,kDAA2F;AAC3F,8CAAuD;AACvD,gDAA6C;AAC7C,wDAAqD;AACrD,8DAA2D;AAC3D,2EAIqC;AACrC,yEAIoC;AAapC,IAAa,sBAAsB,GAAnC,MAAa,sBAAuB,SAAQ,uCAAkB;IAS1C,MAAM,CAAC,OAAO,GAAG,IAAI;QACjC,OAAO;YACH,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC;YACjC,GAAG,EAAE,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC;YAClC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC,SAAS;SAC1D,CAAC;IACN,CAAC;IAEM,KAAK;QACR,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;QACvB,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;IAC5B,CAAC;IAEM,MAAM,CAAC,IAAI,CAAC,KAAuD;QACtE,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;IAES,MAAM,CAAU,OAAO,CAAC,KAAU;QACxC,IAAI,KAAK,CAAC,GAAG,EAAE;YACX,KAAK,GAAG;gBACJ,SAAS,EAAE,KAAK,CAAC,GAAG;gBACpB,UAAU,EAAE,KAAK,CAAC,GAAG;aACxB,CAAC;SACL;QAED,IAAI,KAAK,CAAC,UAAU,CAAC,SAAS,KAAK,KAAK,CAAC,SAAS,CAAC,SAAS,EAAE;YAC1D,MAAM,IAAI,yBAAW,CACjB,iCAAe,CAAC,uBAAuB,EACvC,oDAAoD,CACvD,CAAC;SACL;QAED,OAAO,KAAK,CAAC;IACjB,CAAC;IAEM,MAAM,CAAC,QAAQ,CAAC,KAAwC;QAC3D,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;IAEM,MAAM,CAAC,UAAU,CAAC,KAAa;QAClC,OAAO,IAAI,CAAC,WAAW,CAAC,uBAAU,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;IAC3D,CAAC;CACJ,CAAA;AAhDG;IAFC,IAAA,oBAAQ,GAAE;IACV,IAAA,qBAAS,GAAE;8BACM,mDAAwB;yDAAC;AAI3C;IAFC,IAAA,oBAAQ,GAAE;IACV,IAAA,qBAAS,GAAE;8BACO,qDAAyB;0DAAC;AAPpC,sBAAsB;IADlC,IAAA,gBAAI,EAAC,wBAAwB,CAAC;GAClB,sBAAsB,CAmDlC;AAnDY,wDAAsB"}
@@ -1,30 +1,27 @@
1
- import { ISerializableAsync, ISerialized } from "@js-soft/ts-serval";
2
- import { CoreBuffer, IClearable, ICoreBuffer } from "../CoreBuffer";
1
+ import { ISerializable, ISerialized } from "@js-soft/ts-serval";
2
+ import { IClearable, ICoreBuffer } from "../CoreBuffer";
3
3
  import { CryptoPrivateKey } from "../CryptoPrivateKey";
4
+ import { CryptoSignatureAlgorithm } from "./CryptoSignatureAlgorithm";
4
5
  import { CryptoSignaturePublicKey } from "./CryptoSignaturePublicKey";
5
- import { CryptoSignatureAlgorithm } from "./CryptoSignatures";
6
6
  export interface ICryptoSignaturePrivateKeySerialized extends ISerialized {
7
7
  alg: number;
8
8
  prv: string;
9
9
  id?: string;
10
10
  }
11
- export interface ICryptoSignaturePrivateKey extends ISerializableAsync {
11
+ export interface ICryptoSignaturePrivateKey extends ISerializable {
12
12
  algorithm: CryptoSignatureAlgorithm;
13
13
  privateKey: ICoreBuffer;
14
14
  id?: string;
15
15
  }
16
16
  export declare class CryptoSignaturePrivateKey extends CryptoPrivateKey implements ICryptoSignaturePrivateKey, IClearable {
17
- readonly algorithm: CryptoSignatureAlgorithm;
18
- readonly privateKey: CoreBuffer;
19
- readonly id?: string;
20
- constructor(algorithm: CryptoSignatureAlgorithm, privateKey: CoreBuffer, id?: string);
17
+ algorithm: CryptoSignatureAlgorithm;
18
+ id?: string;
21
19
  toJSON(verbose?: boolean): ICryptoSignaturePrivateKeySerialized;
22
20
  clear(): void;
23
- serialize(verbose?: boolean): string;
24
21
  toBase64(verbose?: boolean): string;
25
22
  toPublicKey(): Promise<CryptoSignaturePublicKey>;
26
- static from(value: CryptoSignaturePrivateKey | ICryptoSignaturePrivateKey): Promise<CryptoSignaturePrivateKey>;
27
- static fromJSON(value: ICryptoSignaturePrivateKeySerialized): Promise<CryptoSignaturePrivateKey>;
28
- static fromBase64(value: string): Promise<CryptoSignaturePrivateKey>;
29
- static deserialize(value: string): Promise<CryptoSignaturePrivateKey>;
23
+ static from(value: CryptoSignaturePrivateKey | ICryptoSignaturePrivateKey): CryptoSignaturePrivateKey;
24
+ static preFrom(value: any): any;
25
+ static fromJSON(value: ICryptoSignaturePrivateKeySerialized): CryptoSignaturePrivateKey;
26
+ static fromBase64(value: string): CryptoSignaturePrivateKey;
30
27
  }
@@ -8,7 +8,6 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
8
8
  var __metadata = (this && this.__metadata) || function (k, v) {
9
9
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
10
  };
11
- var CryptoSignaturePrivateKey_1;
12
11
  Object.defineProperty(exports, "__esModule", { value: true });
13
12
  exports.CryptoSignaturePrivateKey = void 0;
14
13
  const ts_serval_1 = require("@js-soft/ts-serval");
@@ -16,31 +15,18 @@ const CoreBuffer_1 = require("../CoreBuffer");
16
15
  const CryptoPrivateKey_1 = require("../CryptoPrivateKey");
17
16
  const CryptoSignatures_1 = require("./CryptoSignatures");
18
17
  const CryptoSignatureValidation_1 = require("./CryptoSignatureValidation");
19
- let CryptoSignaturePrivateKey = CryptoSignaturePrivateKey_1 = class CryptoSignaturePrivateKey extends CryptoPrivateKey_1.CryptoPrivateKey {
20
- constructor(algorithm, privateKey, id) {
21
- CryptoSignatureValidation_1.CryptoSignatureValidation.checkSignatureAlgorithm(algorithm);
22
- CryptoSignatureValidation_1.CryptoSignatureValidation.checkSignaturePrivateKeyAsBuffer(privateKey);
23
- super(algorithm, privateKey);
24
- this.algorithm = algorithm;
25
- this.privateKey = privateKey;
26
- this.id = id;
27
- }
18
+ let CryptoSignaturePrivateKey = class CryptoSignaturePrivateKey extends CryptoPrivateKey_1.CryptoPrivateKey {
28
19
  toJSON(verbose = true) {
29
- const obj = {
20
+ return {
30
21
  prv: this.privateKey.toBase64URL(),
31
- alg: this.algorithm
22
+ alg: this.algorithm,
23
+ id: this.id,
24
+ "@type": verbose ? "CryptoSignaturePrivateKey" : undefined
32
25
  };
33
- if (verbose) {
34
- obj["@type"] = "CryptoSignaturePrivateKey";
35
- }
36
- return obj;
37
26
  }
38
27
  clear() {
39
28
  this.privateKey.clear();
40
29
  }
41
- serialize(verbose = true) {
42
- return JSON.stringify(this.toJSON(verbose));
43
- }
44
30
  toBase64(verbose = true) {
45
31
  return CoreBuffer_1.CoreBuffer.utf8_base64(this.serialize(verbose));
46
32
  }
@@ -48,29 +34,34 @@ let CryptoSignaturePrivateKey = CryptoSignaturePrivateKey_1 = class CryptoSignat
48
34
  return await CryptoSignatures_1.CryptoSignatures.privateKeyToPublicKey(this);
49
35
  }
50
36
  static from(value) {
51
- return Promise.resolve(new CryptoSignaturePrivateKey_1(value.algorithm, CoreBuffer_1.CoreBuffer.from(value.privateKey)));
37
+ return this.fromAny(value);
52
38
  }
53
- static fromJSON(value) {
54
- let error;
55
- error = CryptoSignatureValidation_1.CryptoSignatureValidation.checkSignatureAlgorithm(value.alg);
56
- if (error)
57
- throw error;
58
- error = CryptoSignatureValidation_1.CryptoSignatureValidation.checkSignaturePrivateKeyAsString(value.prv, "privateKey");
59
- if (error)
60
- throw error;
61
- const buffer = CoreBuffer_1.CoreBuffer.fromBase64URL(value.prv);
62
- return Promise.resolve(new CryptoSignaturePrivateKey_1(value.alg, buffer));
39
+ static preFrom(value) {
40
+ if (value.prv) {
41
+ value = {
42
+ algorithm: value.alg,
43
+ privateKey: value.prv,
44
+ id: value.id
45
+ };
46
+ }
47
+ CryptoSignatureValidation_1.CryptoSignatureValidation.checkSignatureAlgorithm(value.algorithm);
48
+ CryptoSignatureValidation_1.CryptoSignatureValidation.checkSignaturePrivateKey(value.privateKey, "privateKey");
49
+ return value;
63
50
  }
64
- static async fromBase64(value) {
65
- return await this.deserialize(CoreBuffer_1.CoreBuffer.base64_utf8(value));
51
+ static fromJSON(value) {
52
+ return this.fromAny(value);
66
53
  }
67
- static async deserialize(value) {
68
- return await this.fromJSON(JSON.parse(value));
54
+ static fromBase64(value) {
55
+ return this.deserialize(CoreBuffer_1.CoreBuffer.base64_utf8(value));
69
56
  }
70
57
  };
71
- CryptoSignaturePrivateKey = CryptoSignaturePrivateKey_1 = __decorate([
72
- (0, ts_serval_1.type)("CryptoSignaturePrivateKey"),
73
- __metadata("design:paramtypes", [Number, CoreBuffer_1.CoreBuffer, String])
58
+ __decorate([
59
+ (0, ts_serval_1.validate)({ nullable: true }),
60
+ (0, ts_serval_1.serialize)(),
61
+ __metadata("design:type", String)
62
+ ], CryptoSignaturePrivateKey.prototype, "id", void 0);
63
+ CryptoSignaturePrivateKey = __decorate([
64
+ (0, ts_serval_1.type)("CryptoSignaturePrivateKey")
74
65
  ], CryptoSignaturePrivateKey);
75
66
  exports.CryptoSignaturePrivateKey = CryptoSignaturePrivateKey;
76
67
  //# sourceMappingURL=CryptoSignaturePrivateKey.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CryptoSignaturePrivateKey.js","sourceRoot":"","sources":["../../src/signature/CryptoSignaturePrivateKey.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,kDAA2E;AAC3E,8CAAoE;AACpE,0DAAuD;AAEvD,yDAAgF;AAChF,2EAAwE;AAcxE,IAAa,yBAAyB,iCAAtC,MAAa,yBAA0B,SAAQ,mCAAgB;IAK3D,YAAmB,SAAmC,EAAE,UAAsB,EAAE,EAAW;QACvF,qDAAyB,CAAC,uBAAuB,CAAC,SAAS,CAAC,CAAC;QAC7D,qDAAyB,CAAC,gCAAgC,CAAC,UAAU,CAAC,CAAC;QAEvE,KAAK,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;QAE7B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;IACjB,CAAC;IAEM,MAAM,CAAC,OAAO,GAAG,IAAI;QACxB,MAAM,GAAG,GAAyC;YAC9C,GAAG,EAAE,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE;YAClC,GAAG,EAAE,IAAI,CAAC,SAAS;SACtB,CAAC;QACF,IAAI,OAAO,EAAE;YACT,GAAG,CAAC,OAAO,CAAC,GAAG,2BAA2B,CAAC;SAC9C;QACD,OAAO,GAAG,CAAC;IACf,CAAC;IAEM,KAAK;QACR,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;IAC5B,CAAC;IAEM,SAAS,CAAC,OAAO,GAAG,IAAI;QAC3B,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;IAChD,CAAC;IAEM,QAAQ,CAAC,OAAO,GAAG,IAAI;QAC1B,OAAO,uBAAU,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;IAC3D,CAAC;IAEM,KAAK,CAAC,WAAW;QACpB,OAAO,MAAM,mCAAgB,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;IAC9D,CAAC;IAEM,MAAM,CAAC,IAAI,CACd,KAA6D;QAE7D,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,2BAAyB,CAAC,KAAK,CAAC,SAAS,EAAE,uBAAU,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IAC9G,CAAC;IAEM,MAAM,CAAC,QAAQ,CAAC,KAA2C;QAC9D,IAAI,KAAK,CAAC;QAEV,KAAK,GAAG,qDAAyB,CAAC,uBAAuB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACrE,IAAI,KAAK;YAAE,MAAM,KAAK,CAAC;QAEvB,KAAK,GAAG,qDAAyB,CAAC,gCAAgC,CAAC,KAAK,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;QAC5F,IAAI,KAAK;YAAE,MAAM,KAAK,CAAC;QAEvB,MAAM,MAAM,GAAG,uBAAU,CAAC,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACnD,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,2BAAyB,CAAC,KAAK,CAAC,GAA+B,EAAE,MAAM,CAAC,CAAC,CAAC;IACzG,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,KAAa;QACxC,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,uBAAU,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;IACjE,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,KAAa;QACzC,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;IAClD,CAAC;CACJ,CAAA;AArEY,yBAAyB;IADrC,IAAA,gBAAI,EAAC,2BAA2B,CAAC;6CAMsC,uBAAU;GALrE,yBAAyB,CAqErC;AArEY,8DAAyB"}
1
+ {"version":3,"file":"CryptoSignaturePrivateKey.js","sourceRoot":"","sources":["../../src/signature/CryptoSignaturePrivateKey.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,kDAA2F;AAC3F,8CAAoE;AACpE,0DAAuD;AAGvD,yDAAsD;AACtD,2EAAwE;AAcxE,IAAa,yBAAyB,GAAtC,MAAa,yBAA0B,SAAQ,mCAAgB;IAO3C,MAAM,CAAC,OAAO,GAAG,IAAI;QACjC,OAAO;YACH,GAAG,EAAE,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE;YAClC,GAAG,EAAE,IAAI,CAAC,SAAS;YACnB,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,2BAA2B,CAAC,CAAC,CAAC,SAAS;SAC7D,CAAC;IACN,CAAC;IAEM,KAAK;QACR,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;IAC5B,CAAC;IAEe,QAAQ,CAAC,OAAO,GAAG,IAAI;QACnC,OAAO,uBAAU,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;IAC3D,CAAC;IAEM,KAAK,CAAC,WAAW;QACpB,OAAO,MAAM,mCAAgB,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;IAC9D,CAAC;IAEM,MAAM,CAAU,IAAI,CACvB,KAA6D;QAE7D,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;IAEM,MAAM,CAAU,OAAO,CAAC,KAAU;QACrC,IAAI,KAAK,CAAC,GAAG,EAAE;YACX,KAAK,GAAG;gBACJ,SAAS,EAAE,KAAK,CAAC,GAAG;gBACpB,UAAU,EAAE,KAAK,CAAC,GAAG;gBACrB,EAAE,EAAE,KAAK,CAAC,EAAE;aACf,CAAC;SACL;QAED,qDAAyB,CAAC,uBAAuB,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QACnE,qDAAyB,CAAC,wBAAwB,CAAC,KAAK,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;QAEnF,OAAO,KAAK,CAAC;IACjB,CAAC;IAEM,MAAM,CAAC,QAAQ,CAAC,KAA2C;QAC9D,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;IAEM,MAAM,CAAU,UAAU,CAAC,KAAa;QAC3C,OAAO,IAAI,CAAC,WAAW,CAAC,uBAAU,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;IAC3D,CAAC;CACJ,CAAA;AAnDG;IAFC,IAAA,oBAAQ,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IAC5B,IAAA,qBAAS,GAAE;;qDACO;AALV,yBAAyB;IADrC,IAAA,gBAAI,EAAC,2BAA2B,CAAC;GACrB,yBAAyB,CAwDrC;AAxDY,8DAAyB"}
@@ -1,25 +1,22 @@
1
- import { ISerializableAsync, ISerialized } from "@js-soft/ts-serval";
2
- import { CoreBuffer, IClearable, ICoreBuffer } from "../CoreBuffer";
1
+ import { ISerializable, ISerialized } from "@js-soft/ts-serval";
2
+ import { IClearable, ICoreBuffer } from "../CoreBuffer";
3
3
  import { CryptoPublicKey } from "../CryptoPublicKey";
4
- import { CryptoSignatureAlgorithm } from "./CryptoSignatures";
4
+ import { CryptoSignatureAlgorithm } from "./CryptoSignatureAlgorithm";
5
5
  export interface ICryptoSignaturePublicKeySerialized extends ISerialized {
6
6
  alg: number;
7
7
  pub: string;
8
8
  }
9
- export interface ICryptoSignaturePublicKey extends ISerializableAsync {
9
+ export interface ICryptoSignaturePublicKey extends ISerializable {
10
10
  algorithm: CryptoSignatureAlgorithm;
11
11
  publicKey: ICoreBuffer;
12
12
  }
13
13
  export declare class CryptoSignaturePublicKey extends CryptoPublicKey implements ICryptoSignaturePublicKey, IClearable {
14
- readonly algorithm: CryptoSignatureAlgorithm;
15
- readonly publicKey: CoreBuffer;
16
- constructor(algorithm: CryptoSignatureAlgorithm, publicKey: CoreBuffer);
14
+ algorithm: CryptoSignatureAlgorithm;
17
15
  toJSON(verbose?: boolean): ICryptoSignaturePublicKeySerialized;
18
16
  clear(): void;
19
- serialize(verbose?: boolean): string;
20
17
  toBase64(verbose?: boolean): string;
21
- static from(value: CryptoSignaturePublicKey | ICryptoSignaturePublicKey): Promise<CryptoSignaturePublicKey>;
22
- static fromJSON(value: ICryptoSignaturePublicKeySerialized): Promise<CryptoSignaturePublicKey>;
23
- static fromBase64(value: string): Promise<CryptoSignaturePublicKey>;
24
- static deserialize(value: string): Promise<CryptoSignaturePublicKey>;
18
+ static from(value: CryptoSignaturePublicKey | ICryptoSignaturePublicKey): CryptoSignaturePublicKey;
19
+ static preFrom(value: any): any;
20
+ static fromJSON(value: ICryptoSignaturePublicKeySerialized): CryptoSignaturePublicKey;
21
+ static fromBase64(value: string): CryptoSignaturePublicKey;
25
22
  }