@nmshd/crypto 1.0.6 → 1.0.9
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/CryptoPrivateKey.d.ts +8 -8
- package/dist/CryptoPrivateKey.js +13 -13
- package/dist/CryptoPrivateKey.js.map +1 -1
- package/dist/CryptoPublicKey.d.ts +8 -8
- package/dist/CryptoPublicKey.js +13 -13
- 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/SodiumWrapper.js +5 -1
- package/dist/SodiumWrapper.js.map +1 -1
- package/dist/buildInformation.js +5 -5
- package/dist/encryption/CryptoCipher.d.ts +6 -6
- package/dist/encryption/CryptoCipher.js +8 -8
- package/dist/encryption/CryptoCipher.js.map +1 -1
- package/dist/encryption/CryptoSecretKey.d.ts +6 -6
- package/dist/encryption/CryptoSecretKey.js +7 -7
- package/dist/encryption/CryptoSecretKey.js.map +1 -1
- package/dist/exchange/CryptoExchange.js +3 -3
- package/dist/exchange/CryptoExchange.js.map +1 -1
- package/dist/exchange/CryptoExchangeKeypair.d.ts +8 -8
- package/dist/exchange/CryptoExchangeKeypair.js +12 -16
- package/dist/exchange/CryptoExchangeKeypair.js.map +1 -1
- package/dist/exchange/CryptoExchangePrivateKey.d.ts +6 -6
- package/dist/exchange/CryptoExchangePrivateKey.js +4 -4
- package/dist/exchange/CryptoExchangePrivateKey.js.map +1 -1
- package/dist/exchange/CryptoExchangePublicKey.d.ts +4 -4
- package/dist/exchange/CryptoExchangePublicKey.js +7 -7
- package/dist/exchange/CryptoExchangePublicKey.js.map +1 -1
- package/dist/exchange/CryptoExchangeSecrets.d.ts +7 -7
- package/dist/exchange/CryptoExchangeSecrets.js +6 -6
- package/dist/exchange/CryptoExchangeSecrets.js.map +1 -1
- package/dist/index.js +5 -1
- package/dist/index.js.map +1 -1
- package/dist/relationship/CryptoRelationshipPublicRequest.d.ts +8 -8
- package/dist/relationship/CryptoRelationshipPublicRequest.js +16 -20
- package/dist/relationship/CryptoRelationshipPublicRequest.js.map +1 -1
- package/dist/relationship/CryptoRelationshipPublicResponse.d.ts +8 -8
- package/dist/relationship/CryptoRelationshipPublicResponse.js +14 -18
- package/dist/relationship/CryptoRelationshipPublicResponse.js.map +1 -1
- package/dist/relationship/CryptoRelationshipRequestSecrets.d.ts +7 -7
- package/dist/relationship/CryptoRelationshipRequestSecrets.js +9 -9
- package/dist/relationship/CryptoRelationshipRequestSecrets.js.map +1 -1
- package/dist/relationship/CryptoRelationshipSecrets.d.ts +7 -7
- package/dist/relationship/CryptoRelationshipSecrets.js +10 -10
- package/dist/relationship/CryptoRelationshipSecrets.js.map +1 -1
- package/dist/signature/CryptoSignature.d.ts +8 -8
- package/dist/signature/CryptoSignature.js +8 -8
- package/dist/signature/CryptoSignature.js.map +1 -1
- package/dist/signature/CryptoSignatureKeypair.d.ts +8 -8
- package/dist/signature/CryptoSignatureKeypair.js +12 -16
- package/dist/signature/CryptoSignatureKeypair.js.map +1 -1
- package/dist/signature/CryptoSignaturePrivateKey.d.ts +6 -6
- package/dist/signature/CryptoSignaturePrivateKey.js +6 -6
- package/dist/signature/CryptoSignaturePrivateKey.js.map +1 -1
- package/dist/signature/CryptoSignaturePublicKey.d.ts +6 -6
- package/dist/signature/CryptoSignaturePublicKey.js +7 -7
- package/dist/signature/CryptoSignaturePublicKey.js.map +1 -1
- package/dist/signature/CryptoSignatures.js +1 -1
- package/dist/signature/CryptoSignatures.js.map +1 -1
- package/dist/state/CryptoPrivateState.d.ts +6 -6
- package/dist/state/CryptoPrivateState.js +5 -5
- package/dist/state/CryptoPrivateState.js.map +1 -1
- package/dist/state/CryptoPrivateStateReceive.d.ts +3 -3
- package/dist/state/CryptoPrivateStateReceive.js +4 -4
- package/dist/state/CryptoPrivateStateReceive.js.map +1 -1
- package/dist/state/CryptoPrivateStateTransmit.d.ts +3 -3
- package/dist/state/CryptoPrivateStateTransmit.js +4 -4
- package/dist/state/CryptoPrivateStateTransmit.js.map +1 -1
- package/dist/state/CryptoPublicState.d.ts +7 -7
- package/dist/state/CryptoPublicState.js +7 -7
- package/dist/state/CryptoPublicState.js.map +1 -1
- package/dist/stream/CryptoStreamAddress.d.ts +5 -5
- package/dist/stream/CryptoStreamAddress.js +5 -5
- package/dist/stream/CryptoStreamAddress.js.map +1 -1
- package/dist/stream/CryptoStreamHeader.d.ts +6 -6
- package/dist/stream/CryptoStreamHeader.js +4 -4
- package/dist/stream/CryptoStreamHeader.js.map +1 -1
- package/dist/stream/CryptoStreamState.d.ts +5 -5
- package/dist/stream/CryptoStreamState.js +6 -6
- package/dist/stream/CryptoStreamState.js.map +1 -1
- package/lib-web/nmshd.crypto.js +221 -238
- 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
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ISerializable } from "@js-soft/ts-serval";
|
|
2
2
|
import { CoreBuffer } from "../CoreBuffer";
|
|
3
|
-
import {
|
|
3
|
+
import { CryptoSerializable } from "../CryptoSerializable";
|
|
4
4
|
import { CryptoCipher } from "../encryption/CryptoCipher";
|
|
5
5
|
import { CryptoSecretKey, ICryptoSecretKey } from "../encryption/CryptoSecretKey";
|
|
6
6
|
import { CryptoExchangeKeypair, ICryptoExchangeKeypair } from "../exchange/CryptoExchangeKeypair";
|
|
@@ -16,7 +16,7 @@ import { CryptoRelationshipPublicRequest } from "./CryptoRelationshipPublicReque
|
|
|
16
16
|
import { CryptoRelationshipPublicResponse } from "./CryptoRelationshipPublicResponse";
|
|
17
17
|
import { CryptoRelationshipRequestSecrets } from "./CryptoRelationshipRequestSecrets";
|
|
18
18
|
import { CryptoRelationshipType } from "./CryptoRelationshipType";
|
|
19
|
-
export interface ICryptoRelationshipSecrets extends
|
|
19
|
+
export interface ICryptoRelationshipSecrets extends ISerializable {
|
|
20
20
|
id?: string;
|
|
21
21
|
type: CryptoRelationshipType;
|
|
22
22
|
exchangeKeypair: ICryptoExchangeKeypair;
|
|
@@ -29,7 +29,7 @@ export interface ICryptoRelationshipSecrets extends ISerializableAsync {
|
|
|
29
29
|
peerIdentityKey?: ICryptoSignaturePublicKey;
|
|
30
30
|
requestSecretKey: ICryptoSecretKey;
|
|
31
31
|
}
|
|
32
|
-
export declare class CryptoRelationshipSecrets extends
|
|
32
|
+
export declare class CryptoRelationshipSecrets extends CryptoSerializable implements ICryptoRelationshipSecrets {
|
|
33
33
|
id?: string;
|
|
34
34
|
type: CryptoRelationshipType;
|
|
35
35
|
exchangeKeypair: CryptoExchangeKeypair;
|
|
@@ -41,8 +41,8 @@ export declare class CryptoRelationshipSecrets extends CryptoSerializableAsync i
|
|
|
41
41
|
peerTemplateKey: CryptoExchangePublicKey;
|
|
42
42
|
peerIdentityKey?: CryptoSignaturePublicKey;
|
|
43
43
|
requestSecretKey: CryptoSecretKey;
|
|
44
|
-
static from(value: ICryptoRelationshipSecrets):
|
|
45
|
-
static deserialize(value: string):
|
|
44
|
+
static from(value: ICryptoRelationshipSecrets): CryptoRelationshipSecrets;
|
|
45
|
+
static deserialize(value: string): CryptoRelationshipSecrets;
|
|
46
46
|
sign(content: CoreBuffer, algorithm?: CryptoHashAlgorithm): Promise<CryptoSignature>;
|
|
47
47
|
verifyOwn(content: CoreBuffer, signature: CryptoSignature): Promise<boolean>;
|
|
48
48
|
verifyPeer(content: CoreBuffer, signature: CryptoSignature): Promise<boolean>;
|
|
@@ -51,7 +51,7 @@ export declare class CryptoRelationshipSecrets extends CryptoSerializableAsync i
|
|
|
51
51
|
decryptOwn(cipher: CryptoCipher): Promise<CoreBuffer>;
|
|
52
52
|
decryptPeer(cipher: CryptoCipher, omitCounterCheck?: boolean): Promise<CoreBuffer>;
|
|
53
53
|
decryptRequest(cipher: CryptoCipher): Promise<CoreBuffer>;
|
|
54
|
-
toPublicResponse():
|
|
54
|
+
toPublicResponse(): CryptoRelationshipPublicResponse;
|
|
55
55
|
static fromRelationshipResponse(response: CryptoRelationshipPublicResponse, request: CryptoRelationshipRequestSecrets): Promise<CryptoRelationshipSecrets>;
|
|
56
56
|
static fromRelationshipRequest(request: CryptoRelationshipPublicRequest, templateExchangeKeypair: CryptoExchangeKeypair): Promise<CryptoRelationshipSecrets>;
|
|
57
57
|
static fromPeerNonce(peerExchangeKey: CryptoExchangePublicKey, peerTemplateKey: CryptoExchangePublicKey, peerSignatureKey: CryptoSignaturePublicKey, peerGeneratedNonce: CoreBuffer, templateExchangeKeypair: CryptoExchangeKeypair, peerIdentityKey?: CryptoSignaturePublicKey, peerType?: CryptoRelationshipType): Promise<CryptoRelationshipSecrets>;
|
|
@@ -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,12 @@ 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
|
|
32
|
+
let CryptoRelationshipSecrets = CryptoRelationshipSecrets_1 = class CryptoRelationshipSecrets extends CryptoSerializable_1.CryptoSerializable {
|
|
33
|
+
static from(value) {
|
|
34
|
+
return super.from(value, CryptoRelationshipSecrets_1);
|
|
35
35
|
}
|
|
36
|
-
static
|
|
37
|
-
return
|
|
36
|
+
static deserialize(value) {
|
|
37
|
+
return super.deserialize(value, CryptoRelationshipSecrets_1);
|
|
38
38
|
}
|
|
39
39
|
async sign(content, algorithm = 1 /* SHA256 */) {
|
|
40
40
|
return await CryptoSignatures_1.CryptoSignatures.sign(content, this.signatureKeypair.privateKey, algorithm);
|
|
@@ -63,8 +63,8 @@ let CryptoRelationshipSecrets = CryptoRelationshipSecrets_1 = class CryptoRelati
|
|
|
63
63
|
async decryptRequest(cipher) {
|
|
64
64
|
return await CryptoEncryption_1.CryptoEncryption.decrypt(cipher, this.requestSecretKey);
|
|
65
65
|
}
|
|
66
|
-
|
|
67
|
-
return
|
|
66
|
+
toPublicResponse() {
|
|
67
|
+
return CryptoRelationshipPublicResponse_1.CryptoRelationshipPublicResponse.from({
|
|
68
68
|
exchangeKey: this.exchangeKeypair.publicKey,
|
|
69
69
|
signatureKey: this.signatureKeypair.publicKey,
|
|
70
70
|
state: this.transmitState.toPublicState()
|
|
@@ -95,7 +95,7 @@ let CryptoRelationshipSecrets = CryptoRelationshipSecrets_1 = class CryptoRelati
|
|
|
95
95
|
stateType: CryptoStateType_1.CryptoStateType.Transmit
|
|
96
96
|
})
|
|
97
97
|
]);
|
|
98
|
-
return
|
|
98
|
+
return CryptoRelationshipSecrets_1.from({
|
|
99
99
|
exchangeKeypair: exchangeKeypair,
|
|
100
100
|
signatureKeypair: signatureKeypair,
|
|
101
101
|
receiveState: receiveState,
|
|
@@ -140,7 +140,7 @@ let CryptoRelationshipSecrets = CryptoRelationshipSecrets_1 = class CryptoRelati
|
|
|
140
140
|
]);
|
|
141
141
|
const masterKey = await CryptoExchange_1.CryptoExchange.deriveTemplator(templateExchangeKeypair, peerTemplateKey);
|
|
142
142
|
const secretKey = await CryptoDerivation_1.CryptoDerivation.deriveKeyFromBase(masterKey.receivingKey, 1, "REQTMP01");
|
|
143
|
-
return
|
|
143
|
+
return CryptoRelationshipSecrets_1.from({
|
|
144
144
|
exchangeKeypair: exchangeKeypair,
|
|
145
145
|
signatureKeypair: signatureKeypair,
|
|
146
146
|
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":"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"}
|
|
@@ -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,13 +8,13 @@ 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
|
|
17
|
+
export declare class CryptoSignature extends CryptoSerializable implements ICryptoSignature, IClearable {
|
|
18
18
|
readonly signature: CoreBuffer;
|
|
19
19
|
readonly algorithm: CryptoHashAlgorithm;
|
|
20
20
|
readonly keyId?: string;
|
|
@@ -22,8 +22,8 @@ export declare class CryptoSignature extends CryptoSerializableAsync implements
|
|
|
22
22
|
constructor(signature: CoreBuffer, algorithm: CryptoHashAlgorithm, keyId?: string, id?: string);
|
|
23
23
|
toJSON(verbose?: boolean): ICryptoSignatureSerialized;
|
|
24
24
|
clear(): void;
|
|
25
|
-
static from(value: CryptoSignature | ICryptoSignature):
|
|
26
|
-
static fromJSON(value: ICryptoSignatureSerialized):
|
|
27
|
-
static fromBase64(value: string):
|
|
28
|
-
static deserialize(value: string):
|
|
25
|
+
static from(value: CryptoSignature | ICryptoSignature): CryptoSignature;
|
|
26
|
+
static fromJSON(value: ICryptoSignatureSerialized): CryptoSignature;
|
|
27
|
+
static fromBase64(value: string): CryptoSignature;
|
|
28
|
+
static deserialize(value: string): CryptoSignature;
|
|
29
29
|
}
|
|
@@ -13,9 +13,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
13
13
|
exports.CryptoSignature = void 0;
|
|
14
14
|
const ts_serval_1 = require("@js-soft/ts-serval");
|
|
15
15
|
const CoreBuffer_1 = require("../CoreBuffer");
|
|
16
|
-
const
|
|
16
|
+
const CryptoSerializable_1 = require("../CryptoSerializable");
|
|
17
17
|
const CryptoSignatureValidation_1 = require("./CryptoSignatureValidation");
|
|
18
|
-
let CryptoSignature = CryptoSignature_1 = class CryptoSignature extends
|
|
18
|
+
let CryptoSignature = CryptoSignature_1 = class CryptoSignature extends CryptoSerializable_1.CryptoSerializable {
|
|
19
19
|
constructor(signature, algorithm, keyId, id) {
|
|
20
20
|
let error;
|
|
21
21
|
error = CryptoSignatureValidation_1.CryptoSignatureValidation.checkHashAlgorithm(algorithm);
|
|
@@ -44,7 +44,7 @@ let CryptoSignature = CryptoSignature_1 = class CryptoSignature extends CryptoSe
|
|
|
44
44
|
this.signature.clear();
|
|
45
45
|
}
|
|
46
46
|
static from(value) {
|
|
47
|
-
return
|
|
47
|
+
return new CryptoSignature_1(value.signature, value.algorithm);
|
|
48
48
|
}
|
|
49
49
|
static fromJSON(value) {
|
|
50
50
|
let error = CryptoSignatureValidation_1.CryptoSignatureValidation.checkHashAlgorithm(value.alg);
|
|
@@ -54,14 +54,14 @@ let CryptoSignature = CryptoSignature_1 = class CryptoSignature extends CryptoSe
|
|
|
54
54
|
if (error)
|
|
55
55
|
throw error;
|
|
56
56
|
const buffer = CoreBuffer_1.CoreBuffer.fromBase64URL(value.sig);
|
|
57
|
-
return
|
|
57
|
+
return new CryptoSignature_1(buffer, value.alg);
|
|
58
58
|
}
|
|
59
|
-
static
|
|
60
|
-
return
|
|
59
|
+
static fromBase64(value) {
|
|
60
|
+
return this.deserialize(CoreBuffer_1.CoreBuffer.base64_utf8(value));
|
|
61
61
|
}
|
|
62
|
-
static
|
|
62
|
+
static deserialize(value) {
|
|
63
63
|
const obj = JSON.parse(value);
|
|
64
|
-
return
|
|
64
|
+
return this.fromJSON(obj);
|
|
65
65
|
}
|
|
66
66
|
};
|
|
67
67
|
CryptoSignature = CryptoSignature_1 = __decorate([
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CryptoSignature.js","sourceRoot":"","sources":["../../src/signature/CryptoSignature.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"CryptoSignature.js","sourceRoot":"","sources":["../../src/signature/CryptoSignature.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,kDAAsE;AACtE,8CAAuD;AACvD,8DAA2D;AAE3D,2EAAwE;AAiBxE,IAAa,eAAe,uBAA5B,MAAa,eAAgB,SAAQ,uCAAkB;IAMnD,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,IAAI,iBAAe,CAAC,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;IACjE,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,IAAI,iBAAe,CAAC,MAAM,EAAE,KAAK,CAAC,GAA0B,CAAC,CAAC;IACzE,CAAC;IAEM,MAAM,CAAC,UAAU,CAAC,KAAa;QAClC,OAAO,IAAI,CAAC,WAAW,CAAC,uBAAU,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;IAC3D,CAAC;IAEM,MAAM,CAAC,WAAW,CAAC,KAAa;QACnC,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC9B,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;IAC9B,CAAC;CACJ,CAAA;AA5DY,eAAe;IAD3B,IAAA,gBAAI,EAAC,iBAAiB,CAAC;qCAOU,uBAAU;GAN/B,eAAe,CA4D3B;AA5DY,0CAAe"}
|
|
@@ -1,24 +1,24 @@
|
|
|
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
|
|
14
|
+
export declare class CryptoSignatureKeypair extends CryptoSerializable implements ICryptoSignatureKeypair, IClearable {
|
|
15
15
|
readonly publicKey: CryptoSignaturePublicKey;
|
|
16
16
|
readonly privateKey: CryptoSignaturePrivateKey;
|
|
17
17
|
constructor(publicKey: CryptoSignaturePublicKey, privateKey: CryptoSignaturePrivateKey);
|
|
18
18
|
toJSON(verbose?: boolean): ICryptoSignatureKeypairSerialized;
|
|
19
19
|
clear(): void;
|
|
20
|
-
static from(value: CryptoSignatureKeypair | ICryptoSignatureKeypair):
|
|
21
|
-
static fromJSON(value: ICryptoSignatureKeypairSerialized):
|
|
22
|
-
static fromBase64(value: string):
|
|
23
|
-
static deserialize(value: string):
|
|
20
|
+
static from(value: CryptoSignatureKeypair | ICryptoSignatureKeypair): CryptoSignatureKeypair;
|
|
21
|
+
static fromJSON(value: ICryptoSignatureKeypairSerialized): CryptoSignatureKeypair;
|
|
22
|
+
static fromBase64(value: string): CryptoSignatureKeypair;
|
|
23
|
+
static deserialize(value: string): CryptoSignatureKeypair;
|
|
24
24
|
}
|
|
@@ -13,11 +13,11 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
13
13
|
exports.CryptoSignatureKeypair = void 0;
|
|
14
14
|
const ts_serval_1 = require("@js-soft/ts-serval");
|
|
15
15
|
const CoreBuffer_1 = require("../CoreBuffer");
|
|
16
|
-
const
|
|
16
|
+
const CryptoSerializable_1 = require("../CryptoSerializable");
|
|
17
17
|
const CryptoSignaturePrivateKey_1 = require("./CryptoSignaturePrivateKey");
|
|
18
18
|
const CryptoSignaturePublicKey_1 = require("./CryptoSignaturePublicKey");
|
|
19
19
|
const CryptoSignatureValidation_1 = require("./CryptoSignatureValidation");
|
|
20
|
-
let CryptoSignatureKeypair = CryptoSignatureKeypair_1 = class CryptoSignatureKeypair extends
|
|
20
|
+
let CryptoSignatureKeypair = CryptoSignatureKeypair_1 = class CryptoSignatureKeypair extends CryptoSerializable_1.CryptoSerializable {
|
|
21
21
|
constructor(publicKey, privateKey) {
|
|
22
22
|
const error = CryptoSignatureValidation_1.CryptoSignatureValidation.checkSignatureKeypair(privateKey, publicKey);
|
|
23
23
|
if (error)
|
|
@@ -40,26 +40,22 @@ let CryptoSignatureKeypair = CryptoSignatureKeypair_1 = class CryptoSignatureKey
|
|
|
40
40
|
this.publicKey.clear();
|
|
41
41
|
this.privateKey.clear();
|
|
42
42
|
}
|
|
43
|
-
static
|
|
44
|
-
const
|
|
45
|
-
|
|
46
|
-
CryptoSignaturePublicKey_1.CryptoSignaturePublicKey.from(value.publicKey)
|
|
47
|
-
]);
|
|
43
|
+
static from(value) {
|
|
44
|
+
const privateKey = CryptoSignaturePrivateKey_1.CryptoSignaturePrivateKey.from(value.privateKey);
|
|
45
|
+
const publicKey = CryptoSignaturePublicKey_1.CryptoSignaturePublicKey.from(value.publicKey);
|
|
48
46
|
return new CryptoSignatureKeypair_1(publicKey, privateKey);
|
|
49
47
|
}
|
|
50
|
-
static
|
|
51
|
-
const
|
|
52
|
-
|
|
53
|
-
CryptoSignaturePublicKey_1.CryptoSignaturePublicKey.fromJSON(value.pub)
|
|
54
|
-
]);
|
|
48
|
+
static fromJSON(value) {
|
|
49
|
+
const privateKey = CryptoSignaturePrivateKey_1.CryptoSignaturePrivateKey.fromJSON(value.prv);
|
|
50
|
+
const publicKey = CryptoSignaturePublicKey_1.CryptoSignaturePublicKey.fromJSON(value.pub);
|
|
55
51
|
return new CryptoSignatureKeypair_1(publicKey, privateKey);
|
|
56
52
|
}
|
|
57
|
-
static
|
|
58
|
-
return
|
|
53
|
+
static fromBase64(value) {
|
|
54
|
+
return this.deserialize(CoreBuffer_1.CoreBuffer.base64_utf8(value));
|
|
59
55
|
}
|
|
60
|
-
static
|
|
56
|
+
static deserialize(value) {
|
|
61
57
|
const obj = JSON.parse(value);
|
|
62
|
-
return
|
|
58
|
+
return this.fromJSON(obj);
|
|
63
59
|
}
|
|
64
60
|
};
|
|
65
61
|
CryptoSignatureKeypair = CryptoSignatureKeypair_1 = __decorate([
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CryptoSignatureKeypair.js","sourceRoot":"","sources":["../../src/signature/CryptoSignatureKeypair.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"CryptoSignatureKeypair.js","sourceRoot":"","sources":["../../src/signature/CryptoSignatureKeypair.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,kDAAsE;AACtE,8CAAuD;AACvD,8DAA2D;AAC3D,2EAIqC;AACrC,yEAIoC;AACpC,2EAAwE;AAaxE,IAAa,sBAAsB,8BAAnC,MAAa,sBAAuB,SAAQ,uCAAkB;IAI1D,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,IAAI,CAAC,KAAuD;QACtE,MAAM,UAAU,GAAG,qDAAyB,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QACpE,MAAM,SAAS,GAAG,mDAAwB,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QAEjE,OAAO,IAAI,wBAAsB,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;IAC7D,CAAC;IAEM,MAAM,CAAC,QAAQ,CAAC,KAAwC;QAC3D,MAAM,UAAU,GAAG,qDAAyB,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACjE,MAAM,SAAS,GAAG,mDAAwB,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAE/D,OAAO,IAAI,wBAAsB,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;IAC7D,CAAC;IAEM,MAAM,CAAC,UAAU,CAAC,KAAa;QAClC,OAAO,IAAI,CAAC,WAAW,CAAC,uBAAU,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;IAC3D,CAAC;IAEM,MAAM,CAAC,WAAW,CAAC,KAAa;QACnC,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC9B,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;IAC9B,CAAC;CACJ,CAAA;AApDY,sBAAsB;IADlC,IAAA,gBAAI,EAAC,wBAAwB,CAAC;qCAKG,mDAAwB,EAAc,qDAAyB;GAJpF,sBAAsB,CAoDlC;AApDY,wDAAsB"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ISerializable, ISerialized } from "@js-soft/ts-serval";
|
|
2
2
|
import { CoreBuffer, IClearable, ICoreBuffer } from "../CoreBuffer";
|
|
3
3
|
import { CryptoPrivateKey } from "../CryptoPrivateKey";
|
|
4
4
|
import { CryptoSignaturePublicKey } from "./CryptoSignaturePublicKey";
|
|
@@ -8,7 +8,7 @@ export interface ICryptoSignaturePrivateKeySerialized extends ISerialized {
|
|
|
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;
|
|
@@ -23,8 +23,8 @@ export declare class CryptoSignaturePrivateKey extends CryptoPrivateKey implemen
|
|
|
23
23
|
serialize(verbose?: boolean): string;
|
|
24
24
|
toBase64(verbose?: boolean): string;
|
|
25
25
|
toPublicKey(): Promise<CryptoSignaturePublicKey>;
|
|
26
|
-
static from(value: CryptoSignaturePrivateKey | ICryptoSignaturePrivateKey):
|
|
27
|
-
static fromJSON(value: ICryptoSignaturePrivateKeySerialized):
|
|
28
|
-
static fromBase64(value: string):
|
|
29
|
-
static deserialize(value: string):
|
|
26
|
+
static from(value: CryptoSignaturePrivateKey | ICryptoSignaturePrivateKey): CryptoSignaturePrivateKey;
|
|
27
|
+
static fromJSON(value: ICryptoSignaturePrivateKeySerialized): CryptoSignaturePrivateKey;
|
|
28
|
+
static fromBase64(value: string): CryptoSignaturePrivateKey;
|
|
29
|
+
static deserialize(value: string): CryptoSignaturePrivateKey;
|
|
30
30
|
}
|
|
@@ -48,7 +48,7 @@ let CryptoSignaturePrivateKey = CryptoSignaturePrivateKey_1 = class CryptoSignat
|
|
|
48
48
|
return await CryptoSignatures_1.CryptoSignatures.privateKeyToPublicKey(this);
|
|
49
49
|
}
|
|
50
50
|
static from(value) {
|
|
51
|
-
return
|
|
51
|
+
return new CryptoSignaturePrivateKey_1(value.algorithm, CoreBuffer_1.CoreBuffer.from(value.privateKey));
|
|
52
52
|
}
|
|
53
53
|
static fromJSON(value) {
|
|
54
54
|
let error;
|
|
@@ -59,13 +59,13 @@ let CryptoSignaturePrivateKey = CryptoSignaturePrivateKey_1 = class CryptoSignat
|
|
|
59
59
|
if (error)
|
|
60
60
|
throw error;
|
|
61
61
|
const buffer = CoreBuffer_1.CoreBuffer.fromBase64URL(value.prv);
|
|
62
|
-
return
|
|
62
|
+
return new CryptoSignaturePrivateKey_1(value.alg, buffer);
|
|
63
63
|
}
|
|
64
|
-
static
|
|
65
|
-
return
|
|
64
|
+
static fromBase64(value) {
|
|
65
|
+
return this.deserialize(CoreBuffer_1.CoreBuffer.base64_utf8(value));
|
|
66
66
|
}
|
|
67
|
-
static
|
|
68
|
-
return
|
|
67
|
+
static deserialize(value) {
|
|
68
|
+
return this.fromJSON(JSON.parse(value));
|
|
69
69
|
}
|
|
70
70
|
};
|
|
71
71
|
CryptoSignaturePrivateKey = CryptoSignaturePrivateKey_1 = __decorate([
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CryptoSignaturePrivateKey.js","sourceRoot":"","sources":["../../src/signature/CryptoSignaturePrivateKey.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"CryptoSignaturePrivateKey.js","sourceRoot":"","sources":["../../src/signature/CryptoSignaturePrivateKey.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,kDAAsE;AACtE,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,CAAC,KAA6D;QAC5E,OAAO,IAAI,2BAAyB,CAAC,KAAK,CAAC,SAAS,EAAE,uBAAU,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC;IAC7F,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,IAAI,2BAAyB,CAAC,KAAK,CAAC,GAA+B,EAAE,MAAM,CAAC,CAAC;IACxF,CAAC;IAEM,MAAM,CAAC,UAAU,CAAC,KAAa;QAClC,OAAO,IAAI,CAAC,WAAW,CAAC,uBAAU,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;IAC3D,CAAC;IAEM,MAAM,CAAC,WAAW,CAAC,KAAa;QACnC,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;IAC5C,CAAC;CACJ,CAAA;AAnEY,yBAAyB;IADrC,IAAA,gBAAI,EAAC,2BAA2B,CAAC;6CAMsC,uBAAU;GALrE,yBAAyB,CAmErC;AAnEY,8DAAyB"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ISerializable, ISerialized } from "@js-soft/ts-serval";
|
|
2
2
|
import { CoreBuffer, IClearable, ICoreBuffer } from "../CoreBuffer";
|
|
3
3
|
import { CryptoPublicKey } from "../CryptoPublicKey";
|
|
4
4
|
import { CryptoSignatureAlgorithm } from "./CryptoSignatures";
|
|
@@ -6,7 +6,7 @@ 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
|
}
|
|
@@ -18,8 +18,8 @@ export declare class CryptoSignaturePublicKey extends CryptoPublicKey implements
|
|
|
18
18
|
clear(): void;
|
|
19
19
|
serialize(verbose?: boolean): string;
|
|
20
20
|
toBase64(verbose?: boolean): string;
|
|
21
|
-
static from(value: CryptoSignaturePublicKey | ICryptoSignaturePublicKey):
|
|
22
|
-
static fromJSON(value: ICryptoSignaturePublicKeySerialized):
|
|
23
|
-
static fromBase64(value: string):
|
|
24
|
-
static deserialize(value: string):
|
|
21
|
+
static from(value: CryptoSignaturePublicKey | ICryptoSignaturePublicKey): CryptoSignaturePublicKey;
|
|
22
|
+
static fromJSON(value: ICryptoSignaturePublicKeySerialized): CryptoSignaturePublicKey;
|
|
23
|
+
static fromBase64(value: string): CryptoSignaturePublicKey;
|
|
24
|
+
static deserialize(value: string): CryptoSignaturePublicKey;
|
|
25
25
|
}
|
|
@@ -43,9 +43,9 @@ let CryptoSignaturePublicKey = CryptoSignaturePublicKey_1 = class CryptoSignatur
|
|
|
43
43
|
return CoreBuffer_1.CoreBuffer.utf8_base64(this.serialize(verbose));
|
|
44
44
|
}
|
|
45
45
|
static from(value) {
|
|
46
|
-
return
|
|
46
|
+
return new CryptoSignaturePublicKey_1(value.algorithm, CoreBuffer_1.CoreBuffer.from(value.publicKey));
|
|
47
47
|
}
|
|
48
|
-
static
|
|
48
|
+
static fromJSON(value) {
|
|
49
49
|
let error;
|
|
50
50
|
error = CryptoSignatureValidation_1.CryptoSignatureValidation.checkSignatureAlgorithm(value.alg);
|
|
51
51
|
if (error)
|
|
@@ -54,17 +54,17 @@ let CryptoSignaturePublicKey = CryptoSignaturePublicKey_1 = class CryptoSignatur
|
|
|
54
54
|
if (error)
|
|
55
55
|
throw error;
|
|
56
56
|
const buffer = CoreBuffer_1.CoreBuffer.fromBase64URL(value.pub);
|
|
57
|
-
return
|
|
57
|
+
return this.from({
|
|
58
58
|
algorithm: value.alg,
|
|
59
59
|
publicKey: buffer
|
|
60
60
|
});
|
|
61
61
|
}
|
|
62
|
-
static
|
|
63
|
-
return
|
|
62
|
+
static fromBase64(value) {
|
|
63
|
+
return this.deserialize(CoreBuffer_1.CoreBuffer.base64_utf8(value));
|
|
64
64
|
}
|
|
65
|
-
static
|
|
65
|
+
static deserialize(value) {
|
|
66
66
|
const obj = JSON.parse(value);
|
|
67
|
-
return
|
|
67
|
+
return this.fromJSON(obj);
|
|
68
68
|
}
|
|
69
69
|
};
|
|
70
70
|
CryptoSignaturePublicKey = CryptoSignaturePublicKey_1 = __decorate([
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CryptoSignaturePublicKey.js","sourceRoot":"","sources":["../../src/signature/CryptoSignaturePublicKey.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"CryptoSignaturePublicKey.js","sourceRoot":"","sources":["../../src/signature/CryptoSignaturePublicKey.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,kDAAsE;AACtE,8CAAoE;AACpE,wDAAqD;AAErD,2EAAwE;AAaxE,IAAa,wBAAwB,gCAArC,MAAa,wBAAyB,SAAQ,iCAAe;IAIzD,YAAmB,SAAmC,EAAE,SAAqB;QACzE,qDAAyB,CAAC,uBAAuB,CAAC,SAAS,CAAC,CAAC;QAC7D,qDAAyB,CAAC,+BAA+B,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QAEhF,KAAK,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QAE5B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC/B,CAAC;IAEM,MAAM,CAAC,OAAO,GAAG,IAAI;QACxB,MAAM,GAAG,GAAwC;YAC7C,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,0BAA0B,CAAC;SAC7C;QACD,OAAO,GAAG,CAAC;IACf,CAAC;IAEM,KAAK;QACR,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;IAC3B,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,MAAM,CAAC,IAAI,CAAC,KAA2D;QAC1E,OAAO,IAAI,0BAAwB,CAAC,KAAK,CAAC,SAAS,EAAE,uBAAU,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;IAC3F,CAAC;IAEM,MAAM,CAAC,QAAQ,CAAC,KAA0C;QAC7D,IAAI,KAAK,CAAC;QACV,KAAK,GAAG,qDAAyB,CAAC,uBAAuB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACrE,IAAI,KAAK;YAAE,MAAM,KAAK,CAAC;QAEvB,KAAK,GAAG,qDAAyB,CAAC,+BAA+B,CAC7D,KAAK,CAAC,GAAG,EACT,KAAK,CAAC,GAA+B,EACrC,WAAW,CACd,CAAC;QACF,IAAI,KAAK;YAAE,MAAM,KAAK,CAAC;QAEvB,MAAM,MAAM,GAAG,uBAAU,CAAC,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACnD,OAAO,IAAI,CAAC,IAAI,CAAC;YACb,SAAS,EAAE,KAAK,CAAC,GAA+B;YAChD,SAAS,EAAE,MAAM;SACpB,CAAC,CAAC;IACP,CAAC;IAEM,MAAM,CAAC,UAAU,CAAC,KAAa;QAClC,OAAO,IAAI,CAAC,WAAW,CAAC,uBAAU,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;IAC3D,CAAC;IAEM,MAAM,CAAC,WAAW,CAAC,KAAa;QACnC,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC9B,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;IAC9B,CAAC;CACJ,CAAA;AApEY,wBAAwB;IADpC,IAAA,gBAAI,EAAC,0BAA0B,CAAC;6CAKsC,uBAAU;GAJpE,wBAAwB,CAoEpC;AApEY,4DAAwB"}
|
|
@@ -16,7 +16,7 @@ class CryptoSignatures {
|
|
|
16
16
|
case 3 /* ECDSA_ED25519 */:
|
|
17
17
|
try {
|
|
18
18
|
const publicKey = (await SodiumWrapper_1.SodiumWrapper.ready()).crypto_sign_ed25519_sk_to_pk(privateKey.privateKey.buffer);
|
|
19
|
-
return
|
|
19
|
+
return CryptoSignaturePublicKey_1.CryptoSignaturePublicKey.from({
|
|
20
20
|
algorithm: privateKey.algorithm,
|
|
21
21
|
publicKey: CoreBuffer_1.CoreBuffer.from(publicKey)
|
|
22
22
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CryptoSignatures.js","sourceRoot":"","sources":["../../src/signature/CryptoSignatures.ts"],"names":[],"mappings":";;;AAAA,8CAA2C;AAC3C,gDAA6C;AAC7C,wDAAqD;AAErD,oDAAiD;AACjD,uDAAoD;AACpD,qEAAkE;AAClE,2EAAwE;AACxE,yEAAsE;AACtE,2EAAwE;AAWxE,MAAa,gBAAgB;IAClB,MAAM,CAAC,KAAK,CAAC,qBAAqB,CACrC,UAAqC;QAErC,QAAQ,UAAU,CAAC,SAAS,EAAE;YAC1B;gBACI,IAAI;oBACA,MAAM,SAAS,GAAG,CAAC,MAAM,6BAAa,CAAC,KAAK,EAAE,CAAC,CAAC,4BAA4B,CACxE,UAAU,CAAC,UAAU,CAAC,MAAM,CAC/B,CAAC;oBACF,OAAO,
|
|
1
|
+
{"version":3,"file":"CryptoSignatures.js","sourceRoot":"","sources":["../../src/signature/CryptoSignatures.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ISerializable, ISerialized, Serializable } from "@js-soft/ts-serval";
|
|
2
2
|
import { CoreBuffer, IClearable, ICoreBuffer } from "../CoreBuffer";
|
|
3
3
|
import { CryptoEncryptionAlgorithm } from "../encryption/CryptoEncryption";
|
|
4
4
|
import { CryptoPublicState } from "./CryptoPublicState";
|
|
@@ -11,7 +11,7 @@ export interface ICryptoPrivateStateSerialized extends ISerialized {
|
|
|
11
11
|
id?: string;
|
|
12
12
|
typ: number;
|
|
13
13
|
}
|
|
14
|
-
export interface ICryptoPrivateState extends
|
|
14
|
+
export interface ICryptoPrivateState extends ISerializable {
|
|
15
15
|
secretKey: ICoreBuffer;
|
|
16
16
|
nonce: ICoreBuffer;
|
|
17
17
|
counter: number;
|
|
@@ -19,7 +19,7 @@ export interface ICryptoPrivateState extends ISerializableAsync {
|
|
|
19
19
|
id?: string;
|
|
20
20
|
stateType: CryptoStateType;
|
|
21
21
|
}
|
|
22
|
-
export declare class CryptoPrivateState extends
|
|
22
|
+
export declare class CryptoPrivateState extends Serializable implements ICryptoPrivateState, IClearable {
|
|
23
23
|
private readonly _id?;
|
|
24
24
|
get id(): string | undefined;
|
|
25
25
|
private readonly _nonce;
|
|
@@ -39,7 +39,7 @@ export declare class CryptoPrivateState extends SerializableAsync implements ICr
|
|
|
39
39
|
serialize(): string;
|
|
40
40
|
toPublicState(): CryptoPublicState;
|
|
41
41
|
toJSON(verbose?: boolean): ICryptoPrivateStateSerialized;
|
|
42
|
-
static from(obj: CryptoPrivateState | ICryptoPrivateState):
|
|
43
|
-
static fromJSON(value: ICryptoPrivateStateSerialized):
|
|
44
|
-
static deserialize(value: string):
|
|
42
|
+
static from(obj: CryptoPrivateState | ICryptoPrivateState): CryptoPrivateState;
|
|
43
|
+
static fromJSON(value: ICryptoPrivateStateSerialized): CryptoPrivateState;
|
|
44
|
+
static deserialize(value: string): CryptoPrivateState;
|
|
45
45
|
}
|
|
@@ -7,7 +7,7 @@ const CryptoError_1 = require("../CryptoError");
|
|
|
7
7
|
const CryptoErrorCode_1 = require("../CryptoErrorCode");
|
|
8
8
|
const CryptoValidation_1 = require("../CryptoValidation");
|
|
9
9
|
const CryptoPublicState_1 = require("./CryptoPublicState");
|
|
10
|
-
class CryptoPrivateState extends ts_serval_1.
|
|
10
|
+
class CryptoPrivateState extends ts_serval_1.Serializable {
|
|
11
11
|
constructor(nonce, counter, secretKey, algorithm, stateType, id) {
|
|
12
12
|
CryptoValidation_1.CryptoValidation.checkEncryptionAlgorithm(algorithm);
|
|
13
13
|
CryptoValidation_1.CryptoValidation.checkCounter(counter);
|
|
@@ -88,7 +88,7 @@ class CryptoPrivateState extends ts_serval_1.SerializableAsync {
|
|
|
88
88
|
if (typeof obj.counter === "undefined") {
|
|
89
89
|
throw new CryptoError_1.CryptoError(CryptoErrorCode_1.CryptoErrorCode.StateWrongCounter, "Wrong counter.");
|
|
90
90
|
}
|
|
91
|
-
return
|
|
91
|
+
return new CryptoPrivateState(CoreBuffer_1.CoreBuffer.from(obj.nonce), obj.counter, CoreBuffer_1.CoreBuffer.from(obj.secretKey), obj.algorithm, obj.stateType, obj.id);
|
|
92
92
|
}
|
|
93
93
|
static fromJSON(value) {
|
|
94
94
|
CryptoValidation_1.CryptoValidation.checkEncryptionAlgorithm(value.alg);
|
|
@@ -100,11 +100,11 @@ class CryptoPrivateState extends ts_serval_1.SerializableAsync {
|
|
|
100
100
|
}
|
|
101
101
|
const nonceBuffer = CoreBuffer_1.CoreBuffer.fromBase64URL(value.nnc);
|
|
102
102
|
const secretKeyBuffer = CoreBuffer_1.CoreBuffer.fromBase64URL(value.key);
|
|
103
|
-
return
|
|
103
|
+
return new CryptoPrivateState(nonceBuffer, value.cnt, secretKeyBuffer, value.alg, value.typ, value.id);
|
|
104
104
|
}
|
|
105
|
-
static
|
|
105
|
+
static deserialize(value) {
|
|
106
106
|
const obj = JSON.parse(value);
|
|
107
|
-
return
|
|
107
|
+
return this.from(obj);
|
|
108
108
|
}
|
|
109
109
|
}
|
|
110
110
|
exports.CryptoPrivateState = CryptoPrivateState;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CryptoPrivateState.js","sourceRoot":"","sources":["../../src/state/CryptoPrivateState.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"CryptoPrivateState.js","sourceRoot":"","sources":["../../src/state/CryptoPrivateState.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,7 +9,7 @@ export declare class CryptoPrivateStateReceive extends CryptoPrivateState {
|
|
|
9
9
|
decrypt(cipher: CryptoCipher, omitCounterCheck?: boolean): Promise<CoreBuffer>;
|
|
10
10
|
static fromNonce(nonce: CoreBuffer, secretKey: CoreBuffer, counter?: number): CryptoPrivateStateReceive;
|
|
11
11
|
static fromPublicState(publicState: CryptoPublicState, secretKey: CoreBuffer, counter?: number): Promise<CryptoPrivateStateReceive>;
|
|
12
|
-
static from(obj: CryptoPrivateState | ICryptoPrivateState):
|
|
13
|
-
static fromJSON(value: ICryptoPrivateStateSerialized):
|
|
14
|
-
static deserialize(value: string):
|
|
12
|
+
static from(obj: CryptoPrivateState | ICryptoPrivateState): CryptoPrivateStateReceive;
|
|
13
|
+
static fromJSON(value: ICryptoPrivateStateSerialized): CryptoPrivateStateReceive;
|
|
14
|
+
static deserialize(value: string): CryptoPrivateStateReceive;
|
|
15
15
|
}
|