@nmshd/crypto 2.2.0-alpha.8 → 3.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/LICENSE +660 -4
- package/README.md +4 -4
- package/dist/CryptoErrorCode.d.ts +1 -13
- package/dist/CryptoErrorCode.js +0 -12
- package/dist/CryptoErrorCode.js.map +1 -1
- package/dist/CryptoSerializable.d.ts +1 -5
- package/dist/CryptoSerializable.js +1 -10
- package/dist/CryptoSerializable.js.map +1 -1
- package/dist/CryptoValidation.js +0 -2
- package/dist/CryptoValidation.js.map +1 -1
- package/dist/buildInformation.js +5 -5
- package/dist/index.d.ts +0 -1
- package/dist/index.js +0 -1
- package/dist/index.js.map +1 -1
- package/dist/random/CryptoRandom.d.ts +0 -1
- package/dist/random/CryptoRandom.js +0 -4
- package/dist/random/CryptoRandom.js.map +1 -1
- package/dist/relationship/CryptoRelationshipSecrets.js +10 -14
- package/dist/relationship/CryptoRelationshipSecrets.js.map +1 -1
- package/dist/signature/CryptoSignatureAlgorithm.d.ts +1 -2
- package/dist/signature/CryptoSignatures.js +0 -2
- package/dist/signature/CryptoSignatures.js.map +1 -1
- package/package.json +16 -24
- package/dist/crypto-layer/CryptoDerivationHandle.d.ts +0 -40
- package/dist/crypto-layer/CryptoDerivationHandle.js +0 -76
- package/dist/crypto-layer/CryptoDerivationHandle.js.map +0 -1
- package/dist/crypto-layer/CryptoLayerConfig.d.ts +0 -82
- package/dist/crypto-layer/CryptoLayerConfig.js +0 -93
- package/dist/crypto-layer/CryptoLayerConfig.js.map +0 -1
- package/dist/crypto-layer/CryptoLayerProviders.d.ts +0 -17
- package/dist/crypto-layer/CryptoLayerProviders.js +0 -261
- package/dist/crypto-layer/CryptoLayerProviders.js.map +0 -1
- package/dist/crypto-layer/CryptoLayerUtils.d.ts +0 -15
- package/dist/crypto-layer/CryptoLayerUtils.js +0 -116
- package/dist/crypto-layer/CryptoLayerUtils.js.map +0 -1
- package/dist/crypto-layer/encryption/BaseDerivedKeyHandle.d.ts +0 -15
- package/dist/crypto-layer/encryption/BaseDerivedKeyHandle.js +0 -26
- package/dist/crypto-layer/encryption/BaseDerivedKeyHandle.js.map +0 -1
- package/dist/crypto-layer/encryption/BaseKeyHandle.d.ts +0 -29
- package/dist/crypto-layer/encryption/BaseKeyHandle.js +0 -82
- package/dist/crypto-layer/encryption/BaseKeyHandle.js.map +0 -1
- package/dist/crypto-layer/encryption/CryptoEncryptionHandle.d.ts +0 -32
- package/dist/crypto-layer/encryption/CryptoEncryptionHandle.js +0 -191
- package/dist/crypto-layer/encryption/CryptoEncryptionHandle.js.map +0 -1
- package/dist/crypto-layer/encryption/DeviceBoundDerivedKeyHandle.d.ts +0 -5
- package/dist/crypto-layer/encryption/DeviceBoundDerivedKeyHandle.js +0 -24
- package/dist/crypto-layer/encryption/DeviceBoundDerivedKeyHandle.js.map +0 -1
- package/dist/crypto-layer/encryption/DeviceBoundKeyHandle.d.ts +0 -18
- package/dist/crypto-layer/encryption/DeviceBoundKeyHandle.js +0 -51
- package/dist/crypto-layer/encryption/DeviceBoundKeyHandle.js.map +0 -1
- package/dist/crypto-layer/encryption/PortableDerivedKeyHandle.d.ts +0 -4
- package/dist/crypto-layer/encryption/PortableDerivedKeyHandle.js +0 -23
- package/dist/crypto-layer/encryption/PortableDerivedKeyHandle.js.map +0 -1
- package/dist/crypto-layer/encryption/PortableKeyHandle.d.ts +0 -18
- package/dist/crypto-layer/encryption/PortableKeyHandle.js +0 -51
- package/dist/crypto-layer/encryption/PortableKeyHandle.js.map +0 -1
- package/dist/crypto-layer/index.d.ts +0 -13
- package/dist/crypto-layer/index.js +0 -30
- package/dist/crypto-layer/index.js.map +0 -1
- package/dist/crypto-layer/signature/CryptoSignaturesHandle.d.ts +0 -8
- package/dist/crypto-layer/signature/CryptoSignaturesHandle.js +0 -31
- package/dist/crypto-layer/signature/CryptoSignaturesHandle.js.map +0 -1
- package/dist/crypto-layer/signature/DeviceBoundKeyPairHandle.d.ts +0 -19
- package/dist/crypto-layer/signature/DeviceBoundKeyPairHandle.js +0 -61
- package/dist/crypto-layer/signature/DeviceBoundKeyPairHandle.js.map +0 -1
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
-
};
|
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
__exportStar(require("./CryptoDerivationHandle"), exports);
|
|
18
|
-
__exportStar(require("./CryptoLayerConfig"), exports);
|
|
19
|
-
__exportStar(require("./CryptoLayerProviders"), exports);
|
|
20
|
-
__exportStar(require("./CryptoLayerUtils"), exports);
|
|
21
|
-
__exportStar(require("./encryption/BaseDerivedKeyHandle"), exports);
|
|
22
|
-
__exportStar(require("./encryption/BaseKeyHandle"), exports);
|
|
23
|
-
__exportStar(require("./encryption/CryptoEncryptionHandle"), exports);
|
|
24
|
-
__exportStar(require("./encryption/DeviceBoundDerivedKeyHandle"), exports);
|
|
25
|
-
__exportStar(require("./encryption/DeviceBoundKeyHandle"), exports);
|
|
26
|
-
__exportStar(require("./encryption/PortableDerivedKeyHandle"), exports);
|
|
27
|
-
__exportStar(require("./encryption/PortableKeyHandle"), exports);
|
|
28
|
-
__exportStar(require("./signature/CryptoSignaturesHandle"), exports);
|
|
29
|
-
__exportStar(require("./signature/DeviceBoundKeyPairHandle"), exports);
|
|
30
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/crypto-layer/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2DAAyC;AACzC,sDAAoC;AACpC,yDAAuC;AACvC,qDAAmC;AACnC,oEAAkD;AAClD,6DAA2C;AAC3C,sEAAoD;AACpD,2EAAyD;AACzD,oEAAkD;AAClD,wEAAsD;AACtD,iEAA+C;AAC/C,qEAAmD;AACnD,uEAAqD"}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import { CryptoEncryptionAlgorithm } from "../../encryption/CryptoEncryption";
|
|
2
|
-
import { CryptoHashAlgorithm } from "../../hash/CryptoHash";
|
|
3
|
-
import { CryptoSignatureAlgorithm } from "../../signature/CryptoSignatureAlgorithm";
|
|
4
|
-
import { CryptoLayerProviderIdentifier } from "../CryptoLayerConfig";
|
|
5
|
-
import { DeviceBoundKeyPairHandle } from "./DeviceBoundKeyPairHandle";
|
|
6
|
-
export declare class CryptoSignaturesHandle {
|
|
7
|
-
static generateDeviceBoundKeyPairHandle(providerIdent: CryptoLayerProviderIdentifier, asymmetricKeyAlgorithm: CryptoSignatureAlgorithm, encryptionAlgorithm: CryptoEncryptionAlgorithm | undefined, hashAlgorithm: CryptoHashAlgorithm): Promise<DeviceBoundKeyPairHandle>;
|
|
8
|
-
}
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.CryptoSignaturesHandle = void 0;
|
|
4
|
-
const CryptoLayerProviders_1 = require("../CryptoLayerProviders");
|
|
5
|
-
const CryptoLayerUtils_1 = require("../CryptoLayerUtils");
|
|
6
|
-
const DeviceBoundKeyPairHandle_1 = require("./DeviceBoundKeyPairHandle");
|
|
7
|
-
class CryptoSignaturesHandle {
|
|
8
|
-
static async generateDeviceBoundKeyPairHandle(providerIdent, asymmetricKeyAlgorithm, encryptionAlgorithm, hashAlgorithm) {
|
|
9
|
-
const deviceBoundSpec = {
|
|
10
|
-
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
11
|
-
asym_spec: CryptoLayerUtils_1.CryptoLayerUtils.asymSpecFromCryptoExchangeOrSignatureAlgorithm(asymmetricKeyAlgorithm),
|
|
12
|
-
cipher: encryptionAlgorithm
|
|
13
|
-
? CryptoLayerUtils_1.CryptoLayerUtils.cipherFromCryptoEncryptionAlgorithm(encryptionAlgorithm)
|
|
14
|
-
: null,
|
|
15
|
-
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
16
|
-
signing_hash: CryptoLayerUtils_1.CryptoLayerUtils.cryptoHashFromCryptoHashAlgorithm(hashAlgorithm),
|
|
17
|
-
ephemeral: false,
|
|
18
|
-
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
19
|
-
non_exportable: true
|
|
20
|
-
};
|
|
21
|
-
const provider = (0, CryptoLayerProviders_1.getProvider)(providerIdent);
|
|
22
|
-
const keyPairHandle = await provider.createKeyPair(deviceBoundSpec);
|
|
23
|
-
const result = new DeviceBoundKeyPairHandle_1.DeviceBoundKeyPairHandle();
|
|
24
|
-
[result.providerName, result.id] = await Promise.all([provider.providerName(), keyPairHandle.id()]);
|
|
25
|
-
result.provider = provider;
|
|
26
|
-
result.keyPairHandle = keyPairHandle;
|
|
27
|
-
return result;
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
exports.CryptoSignaturesHandle = CryptoSignaturesHandle;
|
|
31
|
-
//# sourceMappingURL=CryptoSignaturesHandle.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"CryptoSignaturesHandle.js","sourceRoot":"","sources":["../../../src/crypto-layer/signature/CryptoSignaturesHandle.ts"],"names":[],"mappings":";;;AAKA,kEAAsD;AACtD,0DAAuD;AACvD,yEAAsE;AAEtE,MAAa,sBAAsB;IACxB,MAAM,CAAC,KAAK,CAAC,gCAAgC,CAChD,aAA4C,EAC5C,sBAAgD,EAChD,mBAA0D,EAC1D,aAAkC;QAElC,MAAM,eAAe,GAAgB;YACjC,gEAAgE;YAChE,SAAS,EAAE,mCAAgB,CAAC,8CAA8C,CAAC,sBAAsB,CAAC;YAClG,MAAM,EAAE,mBAAmB;gBACvB,CAAC,CAAC,mCAAgB,CAAC,mCAAmC,CAAC,mBAAmB,CAAC;gBAC3E,CAAC,CAAC,IAAI;YACV,gEAAgE;YAChE,YAAY,EAAE,mCAAgB,CAAC,iCAAiC,CAAC,aAAa,CAAC;YAC/E,SAAS,EAAE,KAAK;YAChB,gEAAgE;YAChE,cAAc,EAAE,IAAI;SACvB,CAAC;QAEF,MAAM,QAAQ,GAAG,IAAA,kCAAW,EAAC,aAAa,CAAC,CAAC;QAC5C,MAAM,aAAa,GAAG,MAAM,QAAQ,CAAC,aAAa,CAAC,eAAe,CAAC,CAAC;QAEpE,MAAM,MAAM,GAAG,IAAI,mDAAwB,EAAE,CAAC;QAE9C,CAAC,MAAM,CAAC,YAAY,EAAE,MAAM,CAAC,EAAE,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,YAAY,EAAE,EAAE,aAAa,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QAEpG,MAAM,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAC3B,MAAM,CAAC,aAAa,GAAG,aAAa,CAAC;QAErC,OAAO,MAAM,CAAC;IAClB,CAAC;CACJ;AAhCD,wDAgCC"}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { ISerializable, ISerialized, SerializableAsync } from "@js-soft/ts-serval";
|
|
2
|
-
import { KeyPairHandle, Provider } from "@nmshd/rs-crypto-types";
|
|
3
|
-
import { CryptoSerializableAsync } from "../../CryptoSerializable";
|
|
4
|
-
export interface IDeviceBoundKeyPairHandleSerialized extends ISerialized {
|
|
5
|
-
kid: string;
|
|
6
|
-
pnm: string;
|
|
7
|
-
}
|
|
8
|
-
export interface IDeviceBoundKeyPairHandle extends ISerializable {
|
|
9
|
-
id: string;
|
|
10
|
-
providerName: string;
|
|
11
|
-
}
|
|
12
|
-
export declare class DeviceBoundKeyPairHandle extends CryptoSerializableAsync implements IDeviceBoundKeyPairHandle {
|
|
13
|
-
id: string;
|
|
14
|
-
providerName: string;
|
|
15
|
-
provider: Provider;
|
|
16
|
-
keyPairHandle: KeyPairHandle;
|
|
17
|
-
protected static preFrom(value: any): any;
|
|
18
|
-
static postFrom<T extends SerializableAsync>(value: T): Promise<T>;
|
|
19
|
-
}
|
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
-
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
-
};
|
|
8
|
-
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
-
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
-
};
|
|
11
|
-
var DeviceBoundKeyPairHandle_1;
|
|
12
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
|
-
exports.DeviceBoundKeyPairHandle = void 0;
|
|
14
|
-
const ts_serval_1 = require("@js-soft/ts-serval");
|
|
15
|
-
const CryptoError_1 = require("../../CryptoError");
|
|
16
|
-
const CryptoErrorCode_1 = require("../../CryptoErrorCode");
|
|
17
|
-
const CryptoSerializable_1 = require("../../CryptoSerializable");
|
|
18
|
-
const CryptoLayerProviders_1 = require("../CryptoLayerProviders");
|
|
19
|
-
let DeviceBoundKeyPairHandle = DeviceBoundKeyPairHandle_1 = class DeviceBoundKeyPairHandle extends CryptoSerializable_1.CryptoSerializableAsync {
|
|
20
|
-
static preFrom(value) {
|
|
21
|
-
if (value.kid) {
|
|
22
|
-
value = {
|
|
23
|
-
id: value.kid,
|
|
24
|
-
providerName: value.pnm,
|
|
25
|
-
spec: value.spc
|
|
26
|
-
};
|
|
27
|
-
}
|
|
28
|
-
return value;
|
|
29
|
-
}
|
|
30
|
-
static async postFrom(value) {
|
|
31
|
-
if (!(value instanceof this)) {
|
|
32
|
-
throw new CryptoError_1.CryptoError(CryptoErrorCode_1.CryptoErrorCode.DeserializeValidation, "Expected 'DeviceBoundKeyPairHandle' in postFrom.");
|
|
33
|
-
}
|
|
34
|
-
const provider = (0, CryptoLayerProviders_1.getProvider)({ providerName: value.providerName });
|
|
35
|
-
let keyPairHandle;
|
|
36
|
-
try {
|
|
37
|
-
keyPairHandle = await provider.loadKeyPair(value.id);
|
|
38
|
-
}
|
|
39
|
-
catch (e) {
|
|
40
|
-
throw new CryptoError_1.CryptoError(CryptoErrorCode_1.CryptoErrorCode.CalLoadKey, "Failed to load key during deserialization.", undefined, e, DeviceBoundKeyPairHandle_1.postFrom);
|
|
41
|
-
}
|
|
42
|
-
value.keyPairHandle = keyPairHandle;
|
|
43
|
-
value.provider = provider;
|
|
44
|
-
return value;
|
|
45
|
-
}
|
|
46
|
-
};
|
|
47
|
-
exports.DeviceBoundKeyPairHandle = DeviceBoundKeyPairHandle;
|
|
48
|
-
__decorate([
|
|
49
|
-
(0, ts_serval_1.validate)(),
|
|
50
|
-
(0, ts_serval_1.serialize)(),
|
|
51
|
-
__metadata("design:type", String)
|
|
52
|
-
], DeviceBoundKeyPairHandle.prototype, "id", void 0);
|
|
53
|
-
__decorate([
|
|
54
|
-
(0, ts_serval_1.validate)(),
|
|
55
|
-
(0, ts_serval_1.serialize)(),
|
|
56
|
-
__metadata("design:type", String)
|
|
57
|
-
], DeviceBoundKeyPairHandle.prototype, "providerName", void 0);
|
|
58
|
-
exports.DeviceBoundKeyPairHandle = DeviceBoundKeyPairHandle = DeviceBoundKeyPairHandle_1 = __decorate([
|
|
59
|
-
(0, ts_serval_1.type)("DeviceBoundKeyPairHandle")
|
|
60
|
-
], DeviceBoundKeyPairHandle);
|
|
61
|
-
//# sourceMappingURL=DeviceBoundKeyPairHandle.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"DeviceBoundKeyPairHandle.js","sourceRoot":"","sources":["../../../src/crypto-layer/signature/DeviceBoundKeyPairHandle.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,kDAA8G;AAE9G,mDAAgD;AAChD,2DAAwD;AACxD,iEAAmE;AACnE,kEAAsD;AAa/C,IAAM,wBAAwB,gCAA9B,MAAM,wBAAyB,SAAQ,4CAAuB;IAYvD,MAAM,CAAU,OAAO,CAAC,KAAU;QACxC,IAAI,KAAK,CAAC,GAAG,EAAE,CAAC;YACZ,KAAK,GAAG;gBACJ,EAAE,EAAE,KAAK,CAAC,GAAG;gBACb,YAAY,EAAE,KAAK,CAAC,GAAG;gBACvB,IAAI,EAAE,KAAK,CAAC,GAAG;aAClB,CAAC;QACN,CAAC;QAED,OAAO,KAAK,CAAC;IACjB,CAAC;IAEM,MAAM,CAAU,KAAK,CAAC,QAAQ,CAA8B,KAAQ;QACvE,IAAI,CAAC,CAAC,KAAK,YAAY,IAAI,CAAC,EAAE,CAAC;YAC3B,MAAM,IAAI,yBAAW,CACjB,iCAAe,CAAC,qBAAqB,EACrC,kDAAkD,CACrD,CAAC;QACN,CAAC;QAED,MAAM,QAAQ,GAAG,IAAA,kCAAW,EAAC,EAAE,YAAY,EAAE,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC;QACnE,IAAI,aAA4B,CAAC;QACjC,IAAI,CAAC;YACD,aAAa,GAAG,MAAM,QAAQ,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACzD,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACT,MAAM,IAAI,yBAAW,CACjB,iCAAe,CAAC,UAAU,EAC1B,4CAA4C,EAC5C,SAAS,EACT,CAAU,EACV,0BAAwB,CAAC,QAAQ,CACpC,CAAC;QACN,CAAC;QAED,KAAK,CAAC,aAAa,GAAG,aAAa,CAAC;QACpC,KAAK,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAC1B,OAAO,KAAK,CAAC;IACjB,CAAC;CACJ,CAAA;AAlDY,4DAAwB;AAG1B;IAFN,IAAA,oBAAQ,GAAE;IACV,IAAA,qBAAS,GAAE;;oDACM;AAIX;IAFN,IAAA,oBAAQ,GAAE;IACV,IAAA,qBAAS,GAAE;;8DACgB;mCAPnB,wBAAwB;IADpC,IAAA,gBAAI,EAAC,0BAA0B,CAAC;GACpB,wBAAwB,CAkDpC"}
|