@nmshd/crypto 1.0.7 → 2.0.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/dist/CoreBuffer.d.ts +0 -1
- package/dist/CoreBuffer.js +1 -4
- package/dist/CoreBuffer.js.map +1 -1
- package/dist/CryptoDerivation.js +2 -2
- package/dist/CryptoDerivation.js.map +1 -1
- package/dist/CryptoPrivateKey.d.ts +14 -17
- package/dist/CryptoPrivateKey.js +24 -39
- package/dist/CryptoPrivateKey.js.map +1 -1
- package/dist/CryptoPublicKey.d.ts +13 -16
- package/dist/CryptoPublicKey.js +22 -37
- package/dist/CryptoPublicKey.js.map +1 -1
- package/dist/CryptoSerializable.d.ts +5 -0
- package/dist/CryptoSerializable.js +15 -0
- package/dist/CryptoSerializable.js.map +1 -0
- package/dist/CryptoValidation.d.ts +4 -6
- package/dist/CryptoValidation.js +16 -29
- package/dist/CryptoValidation.js.map +1 -1
- package/dist/SodiumWrapper.js +5 -1
- package/dist/SodiumWrapper.js.map +1 -1
- package/dist/buildInformation.js +5 -5
- package/dist/encryption/CryptoCipher.d.ts +10 -11
- package/dist/encryption/CryptoCipher.js +62 -59
- package/dist/encryption/CryptoCipher.js.map +1 -1
- package/dist/encryption/CryptoEncryption.js +10 -12
- package/dist/encryption/CryptoEncryption.js.map +1 -1
- package/dist/encryption/CryptoSecretKey.d.ts +8 -9
- package/dist/encryption/CryptoSecretKey.js +36 -32
- package/dist/encryption/CryptoSecretKey.js.map +1 -1
- package/dist/exchange/CryptoExchange.d.ts +0 -2
- package/dist/exchange/CryptoExchange.js +5 -22
- package/dist/exchange/CryptoExchange.js.map +1 -1
- package/dist/exchange/CryptoExchangeKeypair.d.ts +10 -11
- package/dist/exchange/CryptoExchangeKeypair.js +33 -30
- package/dist/exchange/CryptoExchangeKeypair.js.map +1 -1
- package/dist/exchange/CryptoExchangePrivateKey.d.ts +8 -10
- package/dist/exchange/CryptoExchangePrivateKey.js +50 -31
- package/dist/exchange/CryptoExchangePrivateKey.js.map +1 -1
- package/dist/exchange/CryptoExchangePublicKey.d.ts +6 -7
- package/dist/exchange/CryptoExchangePublicKey.js +31 -32
- package/dist/exchange/CryptoExchangePublicKey.js.map +1 -1
- package/dist/exchange/CryptoExchangeSecrets.d.ts +10 -11
- package/dist/exchange/CryptoExchangeSecrets.js +33 -35
- package/dist/exchange/CryptoExchangeSecrets.js.map +1 -1
- package/dist/exchange/CryptoExchangeValidation.d.ts +7 -10
- package/dist/exchange/CryptoExchangeValidation.js +9 -36
- package/dist/exchange/CryptoExchangeValidation.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.js +6 -1
- package/dist/index.js.map +1 -1
- package/dist/relationship/CryptoRelationshipPublicRequest.d.ts +8 -9
- package/dist/relationship/CryptoRelationshipPublicRequest.js +23 -42
- package/dist/relationship/CryptoRelationshipPublicRequest.js.map +1 -1
- package/dist/relationship/CryptoRelationshipPublicResponse.d.ts +8 -9
- package/dist/relationship/CryptoRelationshipPublicResponse.js +24 -38
- package/dist/relationship/CryptoRelationshipPublicResponse.js.map +1 -1
- package/dist/relationship/CryptoRelationshipRequestSecrets.d.ts +6 -7
- package/dist/relationship/CryptoRelationshipRequestSecrets.js +7 -10
- package/dist/relationship/CryptoRelationshipRequestSecrets.js.map +1 -1
- package/dist/relationship/CryptoRelationshipSecrets.d.ts +6 -7
- package/dist/relationship/CryptoRelationshipSecrets.js +8 -11
- package/dist/relationship/CryptoRelationshipSecrets.js.map +1 -1
- package/dist/signature/CryptoSignature.d.ts +12 -13
- package/dist/signature/CryptoSignature.js +39 -35
- package/dist/signature/CryptoSignature.js.map +1 -1
- package/dist/signature/CryptoSignatureAlgorithm.d.ts +5 -0
- package/dist/signature/CryptoSignatureAlgorithm.js +3 -0
- package/dist/signature/CryptoSignatureAlgorithm.js.map +1 -0
- package/dist/signature/CryptoSignatureKeypair.d.ts +10 -11
- package/dist/signature/CryptoSignatureKeypair.js +36 -38
- package/dist/signature/CryptoSignatureKeypair.js.map +1 -1
- package/dist/signature/CryptoSignaturePrivateKey.d.ts +10 -13
- package/dist/signature/CryptoSignaturePrivateKey.js +26 -37
- package/dist/signature/CryptoSignaturePrivateKey.js.map +1 -1
- package/dist/signature/CryptoSignaturePublicKey.d.ts +9 -12
- package/dist/signature/CryptoSignaturePublicKey.js +22 -44
- package/dist/signature/CryptoSignaturePublicKey.js.map +1 -1
- package/dist/signature/CryptoSignatureValidation.d.ts +10 -12
- package/dist/signature/CryptoSignatureValidation.js +13 -35
- package/dist/signature/CryptoSignatureValidation.js.map +1 -1
- package/dist/signature/CryptoSignatures.d.ts +1 -5
- package/dist/signature/CryptoSignatures.js +5 -5
- package/dist/signature/CryptoSignatures.js.map +1 -1
- package/dist/state/CryptoPrivateState.d.ts +12 -20
- package/dist/state/CryptoPrivateState.js +73 -77
- package/dist/state/CryptoPrivateState.js.map +1 -1
- package/dist/state/CryptoPrivateStateReceive.d.ts +4 -6
- package/dist/state/CryptoPrivateStateReceive.js +27 -39
- package/dist/state/CryptoPrivateStateReceive.js.map +1 -1
- package/dist/state/CryptoPrivateStateTransmit.d.ts +3 -4
- package/dist/state/CryptoPrivateStateTransmit.js +14 -40
- package/dist/state/CryptoPrivateStateTransmit.js.map +1 -1
- package/dist/state/CryptoPublicState.d.ts +11 -16
- package/dist/state/CryptoPublicState.js +44 -53
- package/dist/state/CryptoPublicState.js.map +1 -1
- package/dist/stream/CryptoStream.js +5 -2
- package/dist/stream/CryptoStream.js.map +1 -1
- package/dist/stream/CryptoStreamAddress.d.ts +7 -10
- package/dist/stream/CryptoStreamAddress.js +13 -29
- package/dist/stream/CryptoStreamAddress.js.map +1 -1
- package/dist/stream/CryptoStreamHeader.d.ts +9 -12
- package/dist/stream/CryptoStreamHeader.js +15 -18
- package/dist/stream/CryptoStreamHeader.js.map +1 -1
- package/dist/stream/CryptoStreamState.d.ts +6 -10
- package/dist/stream/CryptoStreamState.js +15 -33
- package/dist/stream/CryptoStreamState.js.map +1 -1
- package/lib-web/nmshd.crypto.js +793 -1023
- package/lib-web/nmshd.crypto.js.map +1 -1
- package/lib-web/nmshd.crypto.min.js +1 -1
- package/lib-web/nmshd.crypto.min.js.map +1 -1
- package/package.json +19 -19
- package/dist/CryptoSerializableAsync.d.ts +0 -5
- package/dist/CryptoSerializableAsync.js +0 -24
- 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
|
|
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
|
|
33
|
-
static
|
|
34
|
-
return
|
|
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
|
-
|
|
67
|
-
return
|
|
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
|
|
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
|
|
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":";;;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"CryptoRelationshipSecrets.js","sourceRoot":"","sources":["../../src/relationship/CryptoRelationshipSecrets.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,kDAA8E;AAE9E,0DAAuD;AACvD,gDAA6C;AAC7C,wDAAqD;AACrD,8DAA2D;AAE3D,qEAA6F;AAC7F,mEAAkF;AAClF,+DAA4D;AAC5D,6EAAkG;AAClG,iFAAwG;AAGxG,gFAAsG;AACtG,oFAA4G;AAC5G,oEAAiE;AAEjE,kFAA+E;AAC/E,oFAAiF;AACjF,8DAA2D;AAE3D,yFAAsF;AAEtF,qEAAkE;AAiBlE,IAAa,yBAAyB,iCAAtC,MAAa,yBAA0B,SAAQ,uCAAkB;IA6CtD,MAAM,CAAC,IAAI,CAAC,KAAiC;QAChD,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;IAEM,KAAK,CAAC,IAAI,CACb,OAAmB,EACnB,0BAA2D;QAE3D,OAAO,MAAM,mCAAgB,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,gBAAgB,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;IAC7F,CAAC;IAEM,KAAK,CAAC,SAAS,CAAC,OAAmB,EAAE,SAA0B;QAClE,OAAO,MAAM,mCAAgB,CAAC,MAAM,CAAC,OAAO,EAAE,SAAS,EAAE,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;IAC9F,CAAC;IAEM,KAAK,CAAC,UAAU,CAAC,OAAmB,EAAE,SAA0B;QACnE,OAAO,MAAM,mCAAgB,CAAC,MAAM,CAAC,OAAO,EAAE,SAAS,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC;IACpF,CAAC;IAEM,KAAK,CAAC,kBAAkB,CAAC,OAAmB,EAAE,SAA0B;QAC3E,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE;YACvB,MAAM,IAAI,yBAAW,CACjB,iCAAe,CAAC,kBAAkB,EAClC,uGAAuG,CAC1G,CAAC;SACL;QACD,OAAO,MAAM,mCAAgB,CAAC,MAAM,CAAC,OAAO,EAAE,SAAS,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;IACnF,CAAC;IAEM,KAAK,CAAC,OAAO,CAAC,OAAmB;QACpC,OAAO,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACrD,CAAC;IAEM,KAAK,CAAC,UAAU,CAAC,MAAoB;QACxC,OAAO,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACpD,CAAC;IAEM,KAAK,CAAC,WAAW,CAAC,MAAoB,EAAE,gBAAgB,GAAG,KAAK;QACnE,OAAO,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;IACrE,CAAC;IAEM,KAAK,CAAC,cAAc,CAAC,MAAoB;QAC5C,OAAO,MAAM,mCAAgB,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC;IACzE,CAAC;IAEM,gBAAgB;QACnB,OAAO,mEAAgC,CAAC,IAAI,CAAC;YACzC,WAAW,EAAE,IAAI,CAAC,eAAe,CAAC,SAAS;YAC3C,YAAY,EAAE,IAAI,CAAC,gBAAgB,CAAC,SAAS;YAC7C,KAAK,EAAE,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE;SAC5C,CAAC,CAAC;IACP,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,wBAAwB,CACxC,QAA0C,EAC1C,OAAyC;QAEzC,MAAM,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAC;QAClD,MAAM,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC;QAChD,MAAM,gBAAgB,GAAG,OAAO,CAAC,SAAS,CAAC;QAC3C,MAAM,eAAe,GAAG,QAAQ,CAAC,WAAW,CAAC;QAC7C,MAAM,uBAAuB,GAAG,QAAQ,CAAC,KAAK,CAAC;QAC/C,MAAM,gBAAgB,GAAG,QAAQ,CAAC,YAAY,CAAC;QAC/C,MAAM,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC;QAChD,MAAM,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC;QAEhD,MAAM,UAAU,GAAG,MAAM,+BAAc,CAAC,eAAe,CAAC,eAAe,EAAE,eAAe,CAAC,CAAC;QAC1F,MAAM,OAAO,GAAG,+CAAsB,CAAC,SAAS,CAAC;QAEjD,MAAM,CAAC,SAAS,EAAE,SAAS,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YAC7C,mCAAgB,CAAC,iBAAiB,CAAC,UAAU,CAAC,eAAe,EAAE,CAAC,EAAE,UAAU,CAAC;YAC7E,mCAAgB,CAAC,iBAAiB,CAAC,UAAU,CAAC,YAAY,EAAE,CAAC,EAAE,UAAU,CAAC;SAC7E,CAAC,CAAC;QAEH,MAAM,CAAC,YAAY,EAAE,aAAa,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YACpD,qDAAyB,CAAC,eAAe,CAAC,uBAAuB,EAAE,SAAS,CAAC,SAAS,EAAE,CAAC,CAAC;YAC1F,uDAA0B,CAAC,IAAI,CAAC;gBAC5B,SAAS,4BAA8C;gBACvD,OAAO,EAAE,CAAC;gBACV,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,SAAS,EAAE,SAAS,CAAC,SAAS;gBAC9B,SAAS,EAAE,iCAAe,CAAC,QAAQ;aACtC,CAAC;SACL,CAAC,CAAC;QAEH,OAAO,2BAAyB,CAAC,IAAI,CAAC;YAClC,eAAe,EAAE,eAAe;YAChC,gBAAgB,EAAE,gBAAgB;YAClC,YAAY,EAAE,YAAY;YAC1B,aAAa,EAAE,aAAa;YAC5B,IAAI,EAAE,OAAO;YACb,eAAe,EAAE,eAAe;YAChC,gBAAgB,EAAE,gBAAgB;YAClC,eAAe,EAAE,eAAe;YAChC,eAAe,EAAE,eAAe;YAChC,gBAAgB,EAAE,gBAAgB;SACrC,CAAC,CAAC;IACP,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,uBAAuB,CACvC,OAAwC,EACxC,uBAA8C;QAE9C,OAAO,MAAM,2BAAyB,CAAC,aAAa,CAChD,OAAO,CAAC,WAAW,EACnB,OAAO,CAAC,YAAY,EACpB,OAAO,CAAC,YAAY,EACpB,OAAO,CAAC,KAAK,EACb,uBAAuB,EACvB,SAAS,EACT,+CAAsB,CAAC,SAAS,CACnC,CAAC;IACN,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,aAAa,CAC7B,eAAwC,EACxC,eAAwC,EACxC,gBAA0C,EAC1C,kBAA8B,EAC9B,uBAA8C,EAC9C,eAA0C,EAC1C,WAAmC,+CAAsB,CAAC,SAAS;QAEnE,MAAM,CAAC,gBAAgB,EAAE,eAAe,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YAC1D,mCAAgB,CAAC,eAAe,EAAE;YAClC,+BAAc,CAAC,eAAe,EAAE;SACnC,CAAC,CAAC;QAEH,IAAI,UAAU,CAAC;QACf,IAAI,OAAO,CAAC;QACZ,QAAQ,QAAQ,EAAE;YACd,KAAK,+CAAsB,CAAC,SAAS;gBACjC,UAAU,GAAG,MAAM,+BAAc,CAAC,eAAe,CAAC,eAAe,EAAE,eAAe,CAAC,CAAC;gBACpF,OAAO,GAAG,+CAAsB,CAAC,SAAS,CAAC;gBAC3C,MAAM;YACV,KAAK,+CAAsB,CAAC,SAAS;gBACjC,UAAU,GAAG,MAAM,+BAAc,CAAC,eAAe,CAAC,eAAe,EAAE,eAAe,CAAC,CAAC;gBACpF,OAAO,GAAG,+CAAsB,CAAC,SAAS,CAAC;gBAC3C,MAAM;YACV;gBACI,MAAM,IAAI,yBAAW,CAAC,iCAAe,CAAC,mCAAmC,CAAC,CAAC;SAClF;QACD,MAAM,CAAC,SAAS,EAAE,SAAS,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YAC7C,mCAAgB,CAAC,iBAAiB,CAAC,UAAU,CAAC,eAAe,EAAE,CAAC,EAAE,UAAU,CAAC;YAC7E,mCAAgB,CAAC,iBAAiB,CAAC,UAAU,CAAC,YAAY,EAAE,CAAC,EAAE,UAAU,CAAC;SAC7E,CAAC,CAAC;QAEH,MAAM,CAAC,YAAY,EAAE,aAAa,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YACpD,qDAAyB,CAAC,SAAS,CAAC,kBAAkB,EAAE,SAAS,CAAC,SAAS,CAAC;YAC5E,uDAA0B,CAAC,QAAQ,CAAC,SAAS,CAAC,SAAS,CAAC;SAC3D,CAAC,CAAC;QAEH,MAAM,SAAS,GAAG,MAAM,+BAAc,CAAC,eAAe,CAAC,uBAAuB,EAAE,eAAe,CAAC,CAAC;QACjG,MAAM,SAAS,GAAG,MAAM,mCAAgB,CAAC,iBAAiB,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC,EAAE,UAAU,CAAC,CAAC;QAElG,OAAO,2BAAyB,CAAC,IAAI,CAAC;YAClC,eAAe,EAAE,eAAe;YAChC,gBAAgB,EAAE,gBAAgB;YAClC,YAAY,EAAE,YAAY;YAC1B,aAAa,EAAE,aAAa;YAC5B,IAAI,EAAE,OAAO;YACb,eAAe,EAAE,eAAe;YAChC,gBAAgB,EAAE,gBAAgB;YAClC,eAAe,EAAE,eAAe;YAChC,eAAe,EAAE,eAAe;YAChC,gBAAgB,EAAE,SAAS;SAC9B,CAAC,CAAC;IACP,CAAC;CACJ,CAAA;AAlNG;IAFC,IAAA,oBAAQ,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IAC5B,IAAA,qBAAS,GAAE;;qDACO;AAInB;IAFC,IAAA,oBAAQ,GAAE;IACV,IAAA,qBAAS,EAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;;uDACQ;AAIpC;IAFC,IAAA,oBAAQ,GAAE;IACV,IAAA,qBAAS,EAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;8BACJ,6CAAqB;kEAAC;AAI9C;IAFC,IAAA,oBAAQ,GAAE;IACV,IAAA,qBAAS,EAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;8BACH,+CAAsB;mEAAC;AAIhD;IAFC,IAAA,oBAAQ,GAAE;IACV,IAAA,qBAAS,EAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;8BACL,uDAA0B;gEAAC;AAIjD;IAFC,IAAA,oBAAQ,GAAE;IACV,IAAA,qBAAS,EAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;8BACN,qDAAyB;+DAAC;AAI/C;IAFC,IAAA,oBAAQ,GAAE;IACV,IAAA,qBAAS,EAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;8BACJ,iDAAuB;kEAAC;AAIhD;IAFC,IAAA,oBAAQ,GAAE;IACV,IAAA,qBAAS,EAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;8BACH,mDAAwB;mEAAC;AAIlD;IAFC,IAAA,oBAAQ,GAAE;IACV,IAAA,qBAAS,EAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;8BACJ,iDAAuB;kEAAC;AAIhD;IAFC,IAAA,oBAAQ,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IAC5B,IAAA,qBAAS,EAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;8BACH,mDAAwB;kEAAC;AAIlD;IAFC,IAAA,oBAAQ,GAAE;IACV,IAAA,qBAAS,EAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;8BACH,iCAAe;mEAAC;AA3ChC,yBAAyB;IADrC,IAAA,gBAAI,EAAC,2BAA2B,CAAC;GACrB,yBAAyB,CAqNrC;AArNY,8DAAyB"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ISerializable, ISerialized } from "@js-soft/ts-serval";
|
|
2
2
|
import { CoreBuffer, IClearable } from "../CoreBuffer";
|
|
3
|
-
import {
|
|
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
|
|
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
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
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):
|
|
26
|
-
static
|
|
27
|
-
static
|
|
28
|
-
static
|
|
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
|
|
15
|
+
const CryptoSerializable_1 = require("../CryptoSerializable");
|
|
17
16
|
const CryptoSignatureValidation_1 = require("./CryptoSignatureValidation");
|
|
18
|
-
let CryptoSignature =
|
|
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
|
|
32
|
+
return this.fromAny(value);
|
|
48
33
|
}
|
|
49
|
-
static
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
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
|
|
60
|
-
return
|
|
45
|
+
static fromJSON(value) {
|
|
46
|
+
return this.fromAny(value);
|
|
61
47
|
}
|
|
62
|
-
static
|
|
63
|
-
|
|
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
|
-
|
|
68
|
-
(0, ts_serval_1.
|
|
69
|
-
|
|
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":"
|
|
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 @@
|
|
|
1
|
+
{"version":3,"file":"CryptoSignatureAlgorithm.js","sourceRoot":"","sources":["../../src/signature/CryptoSignatureAlgorithm.ts"],"names":[],"mappings":""}
|
|
@@ -1,24 +1,23 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ISerializable, ISerialized } from "@js-soft/ts-serval";
|
|
2
2
|
import { IClearable } from "../CoreBuffer";
|
|
3
|
-
import {
|
|
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
|
|
10
|
+
export interface ICryptoSignatureKeypair extends ISerializable {
|
|
11
11
|
publicKey: ICryptoSignaturePublicKey;
|
|
12
12
|
privateKey: ICryptoSignaturePrivateKey;
|
|
13
13
|
}
|
|
14
|
-
export declare class CryptoSignatureKeypair extends
|
|
15
|
-
|
|
16
|
-
|
|
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):
|
|
21
|
-
static
|
|
22
|
-
static
|
|
23
|
-
static
|
|
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
|
|
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
|
-
|
|
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
|
-
|
|
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
|
|
44
|
-
|
|
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
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
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
|
|
58
|
-
return
|
|
47
|
+
static fromJSON(value) {
|
|
48
|
+
return this.fromAny(value);
|
|
59
49
|
}
|
|
60
|
-
static
|
|
61
|
-
|
|
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
|
-
|
|
66
|
-
(0, ts_serval_1.
|
|
67
|
-
|
|
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":"
|
|
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 {
|
|
2
|
-
import {
|
|
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
|
|
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
|
-
|
|
18
|
-
|
|
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):
|
|
27
|
-
static
|
|
28
|
-
static
|
|
29
|
-
static
|
|
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,17 @@ 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 =
|
|
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
|
-
|
|
20
|
+
return {
|
|
30
21
|
prv: this.privateKey.toBase64URL(),
|
|
31
|
-
alg: this.algorithm
|
|
22
|
+
alg: this.algorithm,
|
|
23
|
+
"@type": verbose ? "CryptoSignaturePrivateKey" : undefined
|
|
32
24
|
};
|
|
33
|
-
if (verbose) {
|
|
34
|
-
obj["@type"] = "CryptoSignaturePrivateKey";
|
|
35
|
-
}
|
|
36
|
-
return obj;
|
|
37
25
|
}
|
|
38
26
|
clear() {
|
|
39
27
|
this.privateKey.clear();
|
|
40
28
|
}
|
|
41
|
-
serialize(verbose = true) {
|
|
42
|
-
return JSON.stringify(this.toJSON(verbose));
|
|
43
|
-
}
|
|
44
29
|
toBase64(verbose = true) {
|
|
45
30
|
return CoreBuffer_1.CoreBuffer.utf8_base64(this.serialize(verbose));
|
|
46
31
|
}
|
|
@@ -48,29 +33,33 @@ let CryptoSignaturePrivateKey = CryptoSignaturePrivateKey_1 = class CryptoSignat
|
|
|
48
33
|
return await CryptoSignatures_1.CryptoSignatures.privateKeyToPublicKey(this);
|
|
49
34
|
}
|
|
50
35
|
static from(value) {
|
|
51
|
-
return
|
|
36
|
+
return this.fromAny(value);
|
|
52
37
|
}
|
|
53
|
-
static
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
return
|
|
38
|
+
static preFrom(value) {
|
|
39
|
+
if (value.prv) {
|
|
40
|
+
value = {
|
|
41
|
+
algorithm: value.alg,
|
|
42
|
+
privateKey: value.prv
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
CryptoSignatureValidation_1.CryptoSignatureValidation.checkSignatureAlgorithm(value.algorithm);
|
|
46
|
+
CryptoSignatureValidation_1.CryptoSignatureValidation.checkSignaturePrivateKey(value.privateKey, "privateKey");
|
|
47
|
+
return value;
|
|
63
48
|
}
|
|
64
|
-
static
|
|
65
|
-
return
|
|
49
|
+
static fromJSON(value) {
|
|
50
|
+
return this.fromAny(value);
|
|
66
51
|
}
|
|
67
|
-
static
|
|
68
|
-
return
|
|
52
|
+
static fromBase64(value) {
|
|
53
|
+
return this.deserialize(CoreBuffer_1.CoreBuffer.base64_utf8(value));
|
|
69
54
|
}
|
|
70
55
|
};
|
|
71
|
-
|
|
72
|
-
(0, ts_serval_1.
|
|
73
|
-
|
|
56
|
+
__decorate([
|
|
57
|
+
(0, ts_serval_1.validate)({ nullable: true }),
|
|
58
|
+
(0, ts_serval_1.serialize)(),
|
|
59
|
+
__metadata("design:type", String)
|
|
60
|
+
], CryptoSignaturePrivateKey.prototype, "id", void 0);
|
|
61
|
+
CryptoSignaturePrivateKey = __decorate([
|
|
62
|
+
(0, ts_serval_1.type)("CryptoSignaturePrivateKey")
|
|
74
63
|
], CryptoSignaturePrivateKey);
|
|
75
64
|
exports.CryptoSignaturePrivateKey = CryptoSignaturePrivateKey;
|
|
76
65
|
//# sourceMappingURL=CryptoSignaturePrivateKey.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CryptoSignaturePrivateKey.js","sourceRoot":"","sources":["../../src/signature/CryptoSignaturePrivateKey.ts"],"names":[],"mappings":"
|
|
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,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;aACxB,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;AAjDG;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,CAsDrC;AAtDY,8DAAyB"}
|
|
@@ -1,25 +1,22 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
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 "./
|
|
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
|
|
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
|
-
|
|
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):
|
|
22
|
-
static
|
|
23
|
-
static
|
|
24
|
-
static
|
|
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
|
}
|