@super-protocol/pki-client 1.7.0 → 1.7.2

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.
@@ -1,14 +1,14 @@
1
+ /// <reference types="node" />
1
2
  import { ChallengeProvider } from './challengeProvider';
2
3
  import { Challenge } from '@super-protocol/pki-common';
3
4
  export declare class ChallengeProviderCertificate implements ChallengeProvider {
4
5
  private readonly orderCertsPath;
5
- private readonly publicKeyPem;
6
6
  private orderCert;
7
7
  private orderCaBundle;
8
8
  private orderPrivateKey;
9
9
  private initialized;
10
- constructor(orderCertsPath: string, publicKeyPem: string);
11
- generateChallenge(): Promise<Challenge>;
10
+ constructor(orderCertsPath: string);
11
+ generateChallenge(userData: Buffer): Promise<Challenge>;
12
12
  private readOrderCerts;
13
- private signPublicKey;
13
+ private signUserData;
14
14
  }
@@ -22,24 +22,25 @@ var __importStar = (this && this.__importStar) || function (mod) {
22
22
  __setModuleDefault(result, mod);
23
23
  return result;
24
24
  };
25
+ var __importDefault = (this && this.__importDefault) || function (mod) {
26
+ return (mod && mod.__esModule) ? mod : { "default": mod };
27
+ };
25
28
  Object.defineProperty(exports, "__esModule", { value: true });
26
29
  exports.ChallengeProviderCertificate = void 0;
27
30
  const pki_common_1 = require("@super-protocol/pki-common");
28
31
  const fs = __importStar(require("fs/promises"));
29
32
  const path = __importStar(require("path"));
30
- const forge = __importStar(require("node-forge"));
33
+ const crypto_1 = __importDefault(require("crypto"));
31
34
  class ChallengeProviderCertificate {
32
35
  orderCertsPath;
33
- publicKeyPem;
34
36
  orderCert;
35
37
  orderCaBundle;
36
38
  orderPrivateKey;
37
39
  initialized = false;
38
- constructor(orderCertsPath, publicKeyPem) {
40
+ constructor(orderCertsPath) {
39
41
  this.orderCertsPath = orderCertsPath;
40
- this.publicKeyPem = publicKeyPem;
41
42
  }
42
- async generateChallenge() {
43
+ async generateChallenge(userData) {
43
44
  if (!this.initialized) {
44
45
  try {
45
46
  await this.readOrderCerts();
@@ -51,7 +52,7 @@ class ChallengeProviderCertificate {
51
52
  }
52
53
  return {
53
54
  type: pki_common_1.ChallengeType.Certificate,
54
- userDataSignatureBase64: this.signPublicKey(this.publicKeyPem),
55
+ userDataSignatureBase64: this.signUserData(userData),
55
56
  orderCertificate: this.orderCert,
56
57
  orderCABundle: this.orderCaBundle,
57
58
  };
@@ -61,11 +62,18 @@ class ChallengeProviderCertificate {
61
62
  this.orderPrivateKey = await fs.readFile(path.join(this.orderCertsPath, 'order_cert.key'), 'utf8');
62
63
  this.orderCaBundle = await fs.readFile(path.join(this.orderCertsPath, 'order_cert_ca_bundle.crt'), 'utf8');
63
64
  }
64
- signPublicKey(publicKeyPem) {
65
- const privateKey = forge.pki.privateKeyFromPem(this.orderPrivateKey);
66
- const signature = privateKey.sign((0, pki_common_1.getPublicKeyDigestRaw)(publicKeyPem));
67
- return forge.util.encode64(signature);
65
+ signUserData(userData) {
66
+ const privateKeyObj = crypto_1.default.createPrivateKey({
67
+ key: this.orderPrivateKey,
68
+ format: 'pem',
69
+ type: 'pkcs8',
70
+ });
71
+ const signer = crypto_1.default.createSign('sha256');
72
+ signer.update(userData);
73
+ signer.end();
74
+ const signature = signer.sign(privateKeyObj);
75
+ return signature.toString('base64');
68
76
  }
69
77
  }
70
78
  exports.ChallengeProviderCertificate = ChallengeProviderCertificate;
71
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhbGxlbmdlUHJvdmlkZXJDZXJ0aWZpY2F0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jaGFsbGVuZ2VQcm92aWRlci9jaGFsbGVuZ2VQcm92aWRlckNlcnRpZmljYXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQ0EsMkRBSW9DO0FBQ3BDLGdEQUFrQztBQUNsQywyQ0FBNkI7QUFDN0Isa0RBQW9DO0FBRXBDLE1BQWEsNEJBQTRCO0lBT2hCO0lBQ0E7SUFQYixTQUFTLENBQVU7SUFDbkIsYUFBYSxDQUFVO0lBQ3ZCLGVBQWUsQ0FBVTtJQUN6QixXQUFXLEdBQUcsS0FBSyxDQUFDO0lBRTVCLFlBQ3FCLGNBQXNCLEVBQ3RCLFlBQW9CO1FBRHBCLG1CQUFjLEdBQWQsY0FBYyxDQUFRO1FBQ3RCLGlCQUFZLEdBQVosWUFBWSxDQUFRO0lBQ3RDLENBQUM7SUFDSixLQUFLLENBQUMsaUJBQWlCO1FBQ25CLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDcEIsSUFBSSxDQUFDO2dCQUNELE1BQU0sSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO2dCQUM1QixJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQztZQUM1QixDQUFDO1lBQUMsT0FBTyxLQUFVLEVBQUUsQ0FBQztnQkFDbEIsTUFBTSxJQUFJLEtBQUssQ0FDWCw2Q0FBNkMsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUMvRCxDQUFDO1lBQ04sQ0FBQztRQUNMLENBQUM7UUFDRCxPQUFPO1lBQ0gsSUFBSSxFQUFFLDBCQUFhLENBQUMsV0FBVztZQUMvQix1QkFBdUIsRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUM7WUFDOUQsZ0JBQWdCLEVBQUUsSUFBSSxDQUFDLFNBQVM7WUFDaEMsYUFBYSxFQUFFLElBQUksQ0FBQyxhQUFhO1NBQ3BDLENBQUM7SUFDTixDQUFDO0lBQ08sS0FBSyxDQUFDLGNBQWM7UUFDeEIsSUFBSSxDQUFDLFNBQVMsR0FBRyxNQUFNLEVBQUUsQ0FBQyxRQUFRLENBQzlCLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRSxnQkFBZ0IsQ0FBQyxFQUNoRCxNQUFNLENBQ1QsQ0FBQztRQUNGLElBQUksQ0FBQyxlQUFlLEdBQUcsTUFBTSxFQUFFLENBQUMsUUFBUSxDQUNwQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLEVBQUUsZ0JBQWdCLENBQUMsRUFDaEQsTUFBTSxDQUNULENBQUM7UUFDRixJQUFJLENBQUMsYUFBYSxHQUFHLE1BQU0sRUFBRSxDQUFDLFFBQVEsQ0FDbEMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFLDBCQUEwQixDQUFDLEVBQzFELE1BQU0sQ0FDVCxDQUFDO0lBQ04sQ0FBQztJQUVPLGFBQWEsQ0FBQyxZQUFvQjtRQUN0QyxNQUFNLFVBQVUsR0FBRyxLQUFLLENBQUMsR0FBRyxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUNyRSxNQUFNLFNBQVMsR0FBRyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUEsa0NBQXFCLEVBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQztRQUN2RSxPQUFPLEtBQUssQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQzFDLENBQUM7Q0FDSjtBQWhERCxvRUFnREMifQ==
79
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhbGxlbmdlUHJvdmlkZXJDZXJ0aWZpY2F0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jaGFsbGVuZ2VQcm92aWRlci9jaGFsbGVuZ2VQcm92aWRlckNlcnRpZmljYXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQ0EsMkRBQXNFO0FBQ3RFLGdEQUFrQztBQUNsQywyQ0FBNkI7QUFDN0Isb0RBQTRCO0FBRTVCLE1BQWEsNEJBQTRCO0lBTVI7SUFMckIsU0FBUyxDQUFVO0lBQ25CLGFBQWEsQ0FBVTtJQUN2QixlQUFlLENBQVU7SUFDekIsV0FBVyxHQUFHLEtBQUssQ0FBQztJQUU1QixZQUE2QixjQUFzQjtRQUF0QixtQkFBYyxHQUFkLGNBQWMsQ0FBUTtJQUFHLENBQUM7SUFDdkQsS0FBSyxDQUFDLGlCQUFpQixDQUFDLFFBQWdCO1FBQ3BDLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDcEIsSUFBSSxDQUFDO2dCQUNELE1BQU0sSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO2dCQUM1QixJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQztZQUM1QixDQUFDO1lBQUMsT0FBTyxLQUFVLEVBQUUsQ0FBQztnQkFDbEIsTUFBTSxJQUFJLEtBQUssQ0FDWCw2Q0FBNkMsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUMvRCxDQUFDO1lBQ04sQ0FBQztRQUNMLENBQUM7UUFDRCxPQUFPO1lBQ0gsSUFBSSxFQUFFLDBCQUFhLENBQUMsV0FBVztZQUMvQix1QkFBdUIsRUFBRSxJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQztZQUNwRCxnQkFBZ0IsRUFBRSxJQUFJLENBQUMsU0FBUztZQUNoQyxhQUFhLEVBQUUsSUFBSSxDQUFDLGFBQWE7U0FDcEMsQ0FBQztJQUNOLENBQUM7SUFDTyxLQUFLLENBQUMsY0FBYztRQUN4QixJQUFJLENBQUMsU0FBUyxHQUFHLE1BQU0sRUFBRSxDQUFDLFFBQVEsQ0FDOUIsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFLGdCQUFnQixDQUFDLEVBQ2hELE1BQU0sQ0FDVCxDQUFDO1FBQ0YsSUFBSSxDQUFDLGVBQWUsR0FBRyxNQUFNLEVBQUUsQ0FBQyxRQUFRLENBQ3BDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRSxnQkFBZ0IsQ0FBQyxFQUNoRCxNQUFNLENBQ1QsQ0FBQztRQUNGLElBQUksQ0FBQyxhQUFhLEdBQUcsTUFBTSxFQUFFLENBQUMsUUFBUSxDQUNsQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLEVBQUUsMEJBQTBCLENBQUMsRUFDMUQsTUFBTSxDQUNULENBQUM7SUFDTixDQUFDO0lBRU8sWUFBWSxDQUFDLFFBQWdCO1FBQ2pDLE1BQU0sYUFBYSxHQUFHLGdCQUFNLENBQUMsZ0JBQWdCLENBQUM7WUFDMUMsR0FBRyxFQUFFLElBQUksQ0FBQyxlQUFlO1lBQ3pCLE1BQU0sRUFBRSxLQUFLO1lBQ2IsSUFBSSxFQUFFLE9BQU87U0FDaEIsQ0FBQyxDQUFDO1FBQ0gsTUFBTSxNQUFNLEdBQUcsZ0JBQU0sQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDM0MsTUFBTSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUN4QixNQUFNLENBQUMsR0FBRyxFQUFFLENBQUM7UUFDYixNQUFNLFNBQVMsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQzdDLE9BQU8sU0FBUyxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUN4QyxDQUFDO0NBQ0o7QUFwREQsb0VBb0RDIn0=
@@ -1,11 +1,6 @@
1
1
  /// <reference types="node" />
2
- import { TdxAttestationProviderType } from '../pkiClientConfig';
3
2
  import { ChallengeProvider } from './challengeProvider';
4
3
  import { Challenge } from '@super-protocol/pki-common';
5
4
  export declare class ChallengeProviderTdx implements ChallengeProvider {
6
- private readonly attestationProvider;
7
- constructor(attestationProvider?: TdxAttestationProviderType);
8
5
  generateChallenge(userData: Buffer): Promise<Challenge>;
9
- private generateChallengeNative;
10
- private generateChallengeGoogle;
11
6
  }
@@ -27,65 +27,19 @@ exports.ChallengeProviderTdx = void 0;
27
27
  const challengeNvidiaCCHelper_1 = require("./challengeNvidiaCCHelper");
28
28
  const pki_common_1 = require("@super-protocol/pki-common");
29
29
  class ChallengeProviderTdx {
30
- attestationProvider;
31
- constructor(attestationProvider) {
32
- this.attestationProvider = attestationProvider ?? 'Google';
33
- }
34
30
  async generateChallenge(userData) {
31
+ // This module depends on native library that cannot be compiled for all architectures / operating systems.
32
+ // That is why we load it dynamically and use only when it's really needed.
33
+ const { SgxNative } = await Promise.resolve().then(() => __importStar(require('@super-protocol/addons-tee')));
35
34
  const { challengeData, nvidiaTokens } = await challengeNvidiaCCHelper_1.ChallengeNvidiaCCHelper.getTokenAndCombinedChallengeData(userData);
36
- let quote;
37
- switch (this.attestationProvider) {
38
- case 'Native':
39
- quote = await this.generateChallengeNative(challengeData);
40
- break;
41
- case 'Google':
42
- default:
43
- quote = await this.generateChallengeGoogle(challengeData);
44
- }
35
+ const dcapVerifyService = new SgxNative.DcapQuoteVerifyService();
36
+ const quoteData = await dcapVerifyService.generateTDXQuote(challengeData);
45
37
  return {
46
38
  type: pki_common_1.ChallengeType.TDX,
47
- quoteBase64: quote.toString('base64'),
39
+ quoteBase64: quoteData.toString('base64'),
48
40
  nvidiaTokens,
49
41
  };
50
42
  }
51
- async generateChallengeNative(challengeData) {
52
- // This module depends on native library that cannot be compiled for all architectures / operating systems.
53
- // That is why we load it dynamically and use only when it's really needed.
54
- const { SgxNative } = await Promise.resolve().then(() => __importStar(require('@super-protocol/addons-tee')));
55
- const dcapVerifyService = new SgxNative.DcapQuoteVerifyService();
56
- return await dcapVerifyService.generateTDXQuote(challengeData);
57
- }
58
- async generateChallengeGoogle(challengeData) {
59
- const { promisify } = await Promise.resolve().then(() => __importStar(require('util')));
60
- const { execFile } = await Promise.resolve().then(() => __importStar(require('child_process')));
61
- const { mkdtemp, readFile, rm } = await Promise.resolve().then(() => __importStar(require('fs/promises')));
62
- const { tmpdir } = await Promise.resolve().then(() => __importStar(require('os')));
63
- const path = await Promise.resolve().then(() => __importStar(require('path')));
64
- const execFileAsync = promisify(execFile);
65
- const tmpDir = await mkdtemp(path.join(tmpdir(), 'attest-'));
66
- const outFile = path.join(tmpDir, 'out.bin');
67
- const userDataHex = challengeData.toString('hex');
68
- const binPath = path.join(__dirname, '../../bin/attest');
69
- try {
70
- await execFileAsync(binPath, ['-in', userDataHex, '-out', outFile], { encoding: 'utf8' });
71
- return await readFile(outFile);
72
- }
73
- catch (err) {
74
- let errorMsg = '';
75
- if (err.stdout || err.stderr) {
76
- errorMsg = `stdout: ${err.stdout || ''}\nstderr: ${err.stderr || ''}`;
77
- }
78
- else {
79
- errorMsg = err.message;
80
- }
81
- const code = err.code !== undefined ? `\ncode: ${err.code}` : '';
82
- throw new Error(`Google attestation provider failed: ${errorMsg}${code}`);
83
- }
84
- finally {
85
- await rm(outFile, { force: true }).catch(() => { });
86
- await rm(tmpDir, { recursive: true, force: true }).catch(() => { });
87
- }
88
- }
89
43
  }
90
44
  exports.ChallengeProviderTdx = ChallengeProviderTdx;
91
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhbGxlbmdlUHJvdmlkZXJUZHguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY2hhbGxlbmdlUHJvdmlkZXIvY2hhbGxlbmdlUHJvdmlkZXJUZHgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFDQSx1RUFBb0U7QUFFcEUsMkRBQXNFO0FBRXRFLE1BQWEsb0JBQW9CO0lBQ1osbUJBQW1CLENBQTZCO0lBRWpFLFlBQVksbUJBQWdEO1FBQ3hELElBQUksQ0FBQyxtQkFBbUIsR0FBRyxtQkFBbUIsSUFBSSxRQUFRLENBQUM7SUFDL0QsQ0FBQztJQUVELEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxRQUFnQjtRQUNwQyxNQUFNLEVBQUUsYUFBYSxFQUFFLFlBQVksRUFBRSxHQUNqQyxNQUFNLGlEQUF1QixDQUFDLGdDQUFnQyxDQUMxRCxRQUFRLENBQ1gsQ0FBQztRQUNOLElBQUksS0FBYSxDQUFDO1FBQ2xCLFFBQVEsSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7WUFDL0IsS0FBSyxRQUFRO2dCQUNULEtBQUssR0FBRyxNQUFNLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxhQUFhLENBQUMsQ0FBQztnQkFDMUQsTUFBTTtZQUNWLEtBQUssUUFBUSxDQUFDO1lBQ2Q7Z0JBQ0ksS0FBSyxHQUFHLE1BQU0sSUFBSSxDQUFDLHVCQUF1QixDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ2xFLENBQUM7UUFDRCxPQUFPO1lBQ0gsSUFBSSxFQUFFLDBCQUFhLENBQUMsR0FBRztZQUN2QixXQUFXLEVBQUUsS0FBSyxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUM7WUFDckMsWUFBWTtTQUNmLENBQUM7SUFDTixDQUFDO0lBRU8sS0FBSyxDQUFDLHVCQUF1QixDQUNqQyxhQUFxQjtRQUVyQiwyR0FBMkc7UUFDM0csMkVBQTJFO1FBQzNFLE1BQU0sRUFBRSxTQUFTLEVBQUUsR0FBRyx3REFBYSw0QkFBNEIsR0FB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
45
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhbGxlbmdlUHJvdmlkZXJUZHguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY2hhbGxlbmdlUHJvdmlkZXIvY2hhbGxlbmdlUHJvdmlkZXJUZHgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSx1RUFBb0U7QUFFcEUsMkRBQXNFO0FBRXRFLE1BQWEsb0JBQW9CO0lBQzdCLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxRQUFnQjtRQUNwQywyR0FBMkc7UUFDM0csMkVBQTJFO1FBQzNFLE1BQU0sRUFBRSxTQUFTLEVBQUUsR0FBRyx3REFBYSw0QkFBNEIsR0FBQyxDQUFDO1FBRWpFLE1BQU0sRUFBRSxhQUFhLEVBQUUsWUFBWSxFQUFFLEdBQ2pDLE1BQU0saURBQXVCLENBQUMsZ0NBQWdDLENBQzFELFFBQVEsQ0FDWCxDQUFDO1FBRU4sTUFBTSxpQkFBaUIsR0FBRyxJQUFJLFNBQVMsQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO1FBRWpFLE1BQU0sU0FBUyxHQUNYLE1BQU0saUJBQWlCLENBQUMsZ0JBQWdCLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDNUQsT0FBTztZQUNILElBQUksRUFBRSwwQkFBYSxDQUFDLEdBQUc7WUFDdkIsV0FBVyxFQUFFLFNBQVMsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDO1lBQ3pDLFlBQVk7U0FDZixDQUFDO0lBQ04sQ0FBQztDQUNKO0FBckJELG9EQXFCQyJ9
@@ -5,17 +5,17 @@ import { GetSslCertificateParams } from './types';
5
5
  export interface SgxPkiClientOptions {
6
6
  privateKeyPem?: string;
7
7
  challengeProvider?: ChallengeProvider;
8
- attestationServiceClient?: AttestationServiceClient;
8
+ attestationServiceClient: AttestationServiceClient;
9
9
  }
10
10
  export interface GenerateCertificateOptions {
11
11
  certType: CertificateType;
12
12
  }
13
13
  export declare class PkiClient {
14
- private readonly keyPair;
14
+ private readonly keyPair?;
15
15
  private readonly challengeProvider;
16
16
  private readonly attestationServiceClient;
17
17
  private readonly defaultOptions;
18
- constructor(options?: SgxPkiClientOptions);
18
+ constructor(options: SgxPkiClientOptions);
19
19
  getCaCert(certType?: CertificateType): Promise<string>;
20
20
  generateSslCertificate(params: GetSslCertificateParams, options?: GenerateCertificateOptions): Promise<TeeSslCertificate>;
21
21
  generateSslCertificate(domains: string[], options?: GenerateCertificateOptions): Promise<TeeSslCertificate>;
package/dist/pkiClient.js CHANGED
@@ -3,47 +3,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.PkiClient = void 0;
4
4
  const pki_common_1 = require("@super-protocol/pki-common");
5
5
  const challengeProvider_1 = require("./challengeProvider");
6
- const pki_api_client_1 = require("@super-protocol/pki-api-client");
7
- const AS_BASE_URL = 'https://tee.superprotocol.com:30666/api/v1/pki';
8
- const AS_CA = `-----BEGIN RSA PRIVATE KEY-----
9
- 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
- fRqhOqzF2FkWRcEv16s4eLkuqlIeKSRUXYk3JkZ0SZhqIY+XVYiuPDhY4dY1Awg7
11
- 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
- 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
- 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
- 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
- DAFw8FtKyrpEGdjtTszsfXTvmeNjFPzA5Dha7WmE73J/cZ2fph4PbXZnH9XM70Yc
16
- xhHToOF2X2MV269M0bIstGCf+2m2XaNjOt1AvdcrdDkHMMqtrx+q5fy8B6BmSkGC
17
- PygSm5C7Ib7I4J0ZAgEDAoIBgCaSmR/hHSU8hF857MN0viRFIkicD105IivMdM3h
18
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
46
- -----END RSA PRIVATE KEY-----`;
47
6
  class PkiClient {
48
7
  keyPair;
49
8
  challengeProvider;
@@ -51,21 +10,16 @@ class PkiClient {
51
10
  defaultOptions = {
52
11
  certType: pki_common_1.CertificateType.Basic,
53
12
  };
54
- constructor(options = {}) {
13
+ constructor(options) {
55
14
  if (options.privateKeyPem) {
56
15
  this.keyPair = {
57
16
  privateKeyPem: options.privateKeyPem,
58
17
  publicKeyPem: (0, pki_common_1.getPublicKeyFromPrivate)(options.privateKeyPem),
59
18
  };
60
19
  }
61
- else {
62
- this.keyPair = (0, pki_common_1.generateKeyPair)();
63
- }
64
20
  this.challengeProvider =
65
21
  options.challengeProvider || new challengeProvider_1.ChallengeProviderSgx();
66
- this.attestationServiceClient =
67
- options.attestationServiceClient ||
68
- new pki_api_client_1.StaticAttestationServiceClient(AS_BASE_URL, AS_CA);
22
+ this.attestationServiceClient = options.attestationServiceClient;
69
23
  }
70
24
  async getCaCert(certType = pki_common_1.CertificateType.Basic) {
71
25
  return this.attestationServiceClient.getCaCert({ type: certType });
@@ -80,7 +34,10 @@ class PkiClient {
80
34
  commonName = params.commonName;
81
35
  domains = params.domains;
82
36
  }
83
- const keys = this.keyPair;
37
+ const keys = this.keyPair ||
38
+ (options.certType === pki_common_1.CertificateType.Basic
39
+ ? (0, pki_common_1.generateRsaKeyPair)()
40
+ : (0, pki_common_1.generateEcKeyPair)());
84
41
  const challenge = await this.generateChallenge(keys.publicKeyPem);
85
42
  const cert = await this.attestationServiceClient.generateCertificate({
86
43
  commonName,
@@ -118,4 +75,4 @@ class PkiClient {
118
75
  }
119
76
  }
120
77
  exports.PkiClient = PkiClient;
121
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGtpQ2xpZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3BraUNsaWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSwyREFVb0M7QUFDcEMsMkRBQThFO0FBQzlFLG1FQUd3QztBQUd4QyxNQUFNLFdBQVcsR0FBRyxnREFBZ0QsQ0FBQztBQUNyRSxNQUFNLEtBQUssR0FBRzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OEJBc0NnQixDQUFDO0FBWS9CLE1BQWEsU0FBUztJQUNELE9BQU8sQ0FBYTtJQUNwQixpQkFBaUIsQ0FBb0I7SUFDckMsd0JBQXdCLENBQTJCO0lBQ25ELGNBQWMsR0FBRztRQUM5QixRQUFRLEVBQUUsNEJBQWUsQ0FBQyxLQUFLO0tBQ2xDLENBQUM7SUFFRixZQUFZLFVBQStCLEVBQUU7UUFDekMsSUFBSSxPQUFPLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDeEIsSUFBSSxDQUFDLE9BQU8sR0FBRztnQkFDWCxhQUFhLEVBQUUsT0FBTyxDQUFDLGFBQWE7Z0JBQ3BDLFlBQVksRUFBRSxJQUFBLG9DQUF1QixFQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUM7YUFDL0QsQ0FBQztRQUNOLENBQUM7YUFBTSxDQUFDO1lBQ0osSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFBLDRCQUFlLEdBQUUsQ0FBQztRQUNyQyxDQUFDO1FBQ0QsSUFBSSxDQUFDLGlCQUFpQjtZQUNsQixPQUFPLENBQUMsaUJBQWlCLElBQUksSUFBSSx3Q0FBb0IsRUFBRSxDQUFDO1FBQzVELElBQUksQ0FBQyx3QkFBd0I7WUFDekIsT0FBTyxDQUFDLHdCQUF3QjtnQkFDaEMsSUFBSSwrQ0FBOEIsQ0FBQyxXQUFXLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDL0QsQ0FBQztJQUVELEtBQUssQ0FBQyxTQUFTLENBQUMsUUFBUSxHQUFHLDRCQUFlLENBQUMsS0FBSztRQUM1QyxPQUFPLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxTQUFTLENBQUMsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLENBQUMsQ0FBQztJQUN2RSxDQUFDO0lBVUQsS0FBSyxDQUFDLHNCQUFzQixDQUN4QixNQUEwQyxFQUMxQyxVQUFzQyxJQUFJLENBQUMsY0FBYztRQUV6RCxJQUFJLFVBQThCLENBQUM7UUFDbkMsSUFBSSxPQUFpQixDQUFDO1FBQ3RCLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO1lBQ3hCLE9BQU8sR0FBRyxNQUFNLENBQUM7UUFDckIsQ0FBQzthQUFNLENBQUM7WUFDSixVQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQztZQUMvQixPQUFPLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQztRQUM3QixDQUFDO1FBRUQsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQztRQUMxQixNQUFNLFNBQVMsR0FBRyxNQUFNLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDbEUsTUFBTSxJQUFJLEdBQUcsTUFBTSxJQUFJLENBQUMsd0JBQXdCLENBQUMsbUJBQW1CLENBQ2hFO1lBQ0ksVUFBVTtZQUNWLE9BQU87WUFDUCxZQUFZLEVBQUUsSUFBSSxDQUFDLFlBQVk7WUFDL0IsU0FBUztTQUNaLEVBQ0Q7WUFDSSxJQUFJLEVBQUUsT0FBTyxDQUFDLFFBQVE7U0FDekIsQ0FDSixDQUFDO1FBQ0YsT0FBTztZQUNILE9BQU8sRUFBRSxJQUFJLENBQUMsT0FBTztZQUNyQixRQUFRLEVBQUUsSUFBSSxDQUFDLFlBQVk7WUFDM0IsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPO1lBQ3JCLE9BQU8sRUFBRSxJQUFJO1NBQ2hCLENBQUM7SUFDTixDQUFDO0lBRUQsS0FBSyxDQUFDLDZCQUE2QixDQUMvQixNQUFjLEVBQ2QsVUFBc0MsSUFBSSxDQUFDLGNBQWM7UUFFekQsTUFBTSxTQUFTLEdBQUcsSUFBQSxnQ0FBbUIsRUFBQyxNQUFNLENBQUMsQ0FBQztRQUM5QyxNQUFNLFNBQVMsR0FBRyxNQUFNLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUMxRCxNQUFNLElBQUksR0FDTixNQUFNLElBQUksQ0FBQyx3QkFBd0IsQ0FBQywwQkFBMEIsQ0FDMUQ7WUFDSSxNQUFNO1lBQ04sU0FBUztTQUNaLEVBQ0Q7WUFDSSxJQUFJLEVBQUUsT0FBTyxDQUFDLFFBQVE7U0FDekIsQ0FDSixDQUFDO1FBRU4sT0FBTztZQUNILE9BQU8sRUFBRSxJQUFJLENBQUMsT0FBTztZQUNyQixRQUFRLEVBQUUsSUFBSSxDQUFDLFlBQVk7WUFDM0IsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPO1NBQ3hCLENBQUM7SUFDTixDQUFDO0lBRU8saUJBQWlCLENBQUMsWUFBb0I7UUFDMUMsTUFBTSxhQUFhLEdBQUcsSUFBQSxnQ0FBbUIsRUFBQyxZQUFZLENBQUMsQ0FBQztRQUN4RCxPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxpQkFBaUIsQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUNuRSxDQUFDO0NBQ0o7QUFsR0QsOEJBa0dDIn0=
78
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGtpQ2xpZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3BraUNsaWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSwyREFXb0M7QUFDcEMsMkRBQThFO0FBYzlFLE1BQWEsU0FBUztJQUNELE9BQU8sQ0FBYztJQUNyQixpQkFBaUIsQ0FBb0I7SUFDckMsd0JBQXdCLENBQTJCO0lBQ25ELGNBQWMsR0FBRztRQUM5QixRQUFRLEVBQUUsNEJBQWUsQ0FBQyxLQUFLO0tBQ2xDLENBQUM7SUFFRixZQUFZLE9BQTRCO1FBQ3BDLElBQUksT0FBTyxDQUFDLGFBQWEsRUFBRSxDQUFDO1lBQ3hCLElBQUksQ0FBQyxPQUFPLEdBQUc7Z0JBQ1gsYUFBYSxFQUFFLE9BQU8sQ0FBQyxhQUFhO2dCQUNwQyxZQUFZLEVBQUUsSUFBQSxvQ0FBdUIsRUFBQyxPQUFPLENBQUMsYUFBYSxDQUFDO2FBQy9ELENBQUM7UUFDTixDQUFDO1FBRUQsSUFBSSxDQUFDLGlCQUFpQjtZQUNsQixPQUFPLENBQUMsaUJBQWlCLElBQUksSUFBSSx3Q0FBb0IsRUFBRSxDQUFDO1FBQzVELElBQUksQ0FBQyx3QkFBd0IsR0FBRyxPQUFPLENBQUMsd0JBQXdCLENBQUM7SUFDckUsQ0FBQztJQUVELEtBQUssQ0FBQyxTQUFTLENBQUMsUUFBUSxHQUFHLDRCQUFlLENBQUMsS0FBSztRQUM1QyxPQUFPLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxTQUFTLENBQUMsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLENBQUMsQ0FBQztJQUN2RSxDQUFDO0lBVUQsS0FBSyxDQUFDLHNCQUFzQixDQUN4QixNQUEwQyxFQUMxQyxVQUFzQyxJQUFJLENBQUMsY0FBYztRQUV6RCxJQUFJLFVBQThCLENBQUM7UUFDbkMsSUFBSSxPQUFpQixDQUFDO1FBQ3RCLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO1lBQ3hCLE9BQU8sR0FBRyxNQUFNLENBQUM7UUFDckIsQ0FBQzthQUFNLENBQUM7WUFDSixVQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQztZQUMvQixPQUFPLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQztRQUM3QixDQUFDO1FBRUQsTUFBTSxJQUFJLEdBQ04sSUFBSSxDQUFDLE9BQU87WUFDWixDQUFDLE9BQU8sQ0FBQyxRQUFRLEtBQUssNEJBQWUsQ0FBQyxLQUFLO2dCQUN2QyxDQUFDLENBQUMsSUFBQSwrQkFBa0IsR0FBRTtnQkFDdEIsQ0FBQyxDQUFDLElBQUEsOEJBQWlCLEdBQUUsQ0FBQyxDQUFDO1FBQy9CLE1BQU0sU0FBUyxHQUFHLE1BQU0sSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUNsRSxNQUFNLElBQUksR0FBRyxNQUFNLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxtQkFBbUIsQ0FDaEU7WUFDSSxVQUFVO1lBQ1YsT0FBTztZQUNQLFlBQVksRUFBRSxJQUFJLENBQUMsWUFBWTtZQUMvQixTQUFTO1NBQ1osRUFDRDtZQUNJLElBQUksRUFBRSxPQUFPLENBQUMsUUFBUTtTQUN6QixDQUNKLENBQUM7UUFDRixPQUFPO1lBQ0gsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPO1lBQ3JCLFFBQVEsRUFBRSxJQUFJLENBQUMsWUFBWTtZQUMzQixPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU87WUFDckIsT0FBTyxFQUFFLElBQUk7U0FDaEIsQ0FBQztJQUNOLENBQUM7SUFFRCxLQUFLLENBQUMsNkJBQTZCLENBQy9CLE1BQWMsRUFDZCxVQUFzQyxJQUFJLENBQUMsY0FBYztRQUV6RCxNQUFNLFNBQVMsR0FBRyxJQUFBLGdDQUFtQixFQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzlDLE1BQU0sU0FBUyxHQUFHLE1BQU0sSUFBSSxDQUFDLGlCQUFpQixDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQzFELE1BQU0sSUFBSSxHQUNOLE1BQU0sSUFBSSxDQUFDLHdCQUF3QixDQUFDLDBCQUEwQixDQUMxRDtZQUNJLE1BQU07WUFDTixTQUFTO1NBQ1osRUFDRDtZQUNJLElBQUksRUFBRSxPQUFPLENBQUMsUUFBUTtTQUN6QixDQUNKLENBQUM7UUFFTixPQUFPO1lBQ0gsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPO1lBQ3JCLFFBQVEsRUFBRSxJQUFJLENBQUMsWUFBWTtZQUMzQixPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU87U0FDeEIsQ0FBQztJQUNOLENBQUM7SUFFTyxpQkFBaUIsQ0FBQyxZQUFvQjtRQUMxQyxNQUFNLGFBQWEsR0FBRyxJQUFBLGdDQUFtQixFQUFDLFlBQVksQ0FBQyxDQUFDO1FBQ3hELE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLGlCQUFpQixDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQ25FLENBQUM7Q0FDSjtBQW5HRCw4QkFtR0MifQ==
@@ -1,54 +1,50 @@
1
1
  import { ChallengeType } from '@super-protocol/pki-common';
2
2
  import { Static } from '@sinclair/typebox';
3
- declare const TdxAttestationProvider: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Native">, import("@sinclair/typebox").TLiteral<"Google">]>;
4
3
  declare const PkiClientConfigSchema: import("@sinclair/typebox").TObject<{
5
4
  clientCertProvider: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{
6
5
  type: import("@sinclair/typebox").TLiteral<"pki-ca">;
7
6
  challenge: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{
8
7
  type: import("@sinclair/typebox").TLiteral<ChallengeType.Untrusted>;
9
- idHex: import("@sinclair/typebox").TString<string>;
10
- commonIdHex: import("@sinclair/typebox").TString<string>;
8
+ idHex: import("@sinclair/typebox").TString;
9
+ commonIdHex: import("@sinclair/typebox").TString;
11
10
  }>, import("@sinclair/typebox").TObject<{
12
11
  type: import("@sinclair/typebox").TLiteral<ChallengeType.TDX>;
13
- attestationProvider: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Native">, import("@sinclair/typebox").TLiteral<"Google">]>>;
14
12
  }>, import("@sinclair/typebox").TObject<{
15
13
  type: import("@sinclair/typebox").TLiteral<ChallengeType.SEVSNP>;
16
14
  }>, import("@sinclair/typebox").TObject<{
17
15
  type: import("@sinclair/typebox").TLiteral<ChallengeType.SGXDCAP>;
18
16
  }>]>;
19
- baseUrl: import("@sinclair/typebox").TString<string>;
20
- caBundle: import("@sinclair/typebox").TString<string>;
17
+ baseUrl: import("@sinclair/typebox").TString;
18
+ caBundle: import("@sinclair/typebox").TString;
21
19
  }>, import("@sinclair/typebox").TObject<{
22
20
  type: import("@sinclair/typebox").TLiteral<"static">;
23
- certPem: import("@sinclair/typebox").TString<string>;
24
- publicKeyPem: import("@sinclair/typebox").TString<string>;
25
- privateKeyPem: import("@sinclair/typebox").TString<string>;
21
+ certPem: import("@sinclair/typebox").TString;
22
+ publicKeyPem: import("@sinclair/typebox").TString;
23
+ privateKeyPem: import("@sinclair/typebox").TString;
26
24
  }>]>;
27
25
  }>;
28
26
  export type PkiClientConfig = Static<typeof PkiClientConfigSchema>;
29
- export type TdxAttestationProviderType = Static<typeof TdxAttestationProvider>;
30
27
  export declare const PkiClientConfigSchemaCompiled: import("@sinclair/typebox/compiler").TypeCheck<import("@sinclair/typebox").TObject<{
31
28
  clientCertProvider: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{
32
29
  type: import("@sinclair/typebox").TLiteral<"pki-ca">;
33
30
  challenge: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{
34
31
  type: import("@sinclair/typebox").TLiteral<ChallengeType.Untrusted>;
35
- idHex: import("@sinclair/typebox").TString<string>;
36
- commonIdHex: import("@sinclair/typebox").TString<string>;
32
+ idHex: import("@sinclair/typebox").TString;
33
+ commonIdHex: import("@sinclair/typebox").TString;
37
34
  }>, import("@sinclair/typebox").TObject<{
38
35
  type: import("@sinclair/typebox").TLiteral<ChallengeType.TDX>;
39
- attestationProvider: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Native">, import("@sinclair/typebox").TLiteral<"Google">]>>;
40
36
  }>, import("@sinclair/typebox").TObject<{
41
37
  type: import("@sinclair/typebox").TLiteral<ChallengeType.SEVSNP>;
42
38
  }>, import("@sinclair/typebox").TObject<{
43
39
  type: import("@sinclair/typebox").TLiteral<ChallengeType.SGXDCAP>;
44
40
  }>]>;
45
- baseUrl: import("@sinclair/typebox").TString<string>;
46
- caBundle: import("@sinclair/typebox").TString<string>;
41
+ baseUrl: import("@sinclair/typebox").TString;
42
+ caBundle: import("@sinclair/typebox").TString;
47
43
  }>, import("@sinclair/typebox").TObject<{
48
44
  type: import("@sinclair/typebox").TLiteral<"static">;
49
- certPem: import("@sinclair/typebox").TString<string>;
50
- publicKeyPem: import("@sinclair/typebox").TString<string>;
51
- privateKeyPem: import("@sinclair/typebox").TString<string>;
45
+ certPem: import("@sinclair/typebox").TString;
46
+ publicKeyPem: import("@sinclair/typebox").TString;
47
+ privateKeyPem: import("@sinclair/typebox").TString;
52
48
  }>]>;
53
49
  }>>;
54
50
  export {};
@@ -9,13 +9,8 @@ const CaTeePkiCertProviderChallengeUntrusted = typebox_1.Type.Object({
9
9
  idHex: typebox_1.Type.String({ minLength: 1 }),
10
10
  commonIdHex: typebox_1.Type.String({ minLength: 1 }),
11
11
  });
12
- const TdxAttestationProvider = typebox_1.Type.Union([
13
- typebox_1.Type.Literal('Native'),
14
- typebox_1.Type.Literal('Google'),
15
- ]);
16
12
  const CaTeePkiCertProviderChallengeTDX = typebox_1.Type.Object({
17
13
  type: typebox_1.Type.Literal(pki_common_1.ChallengeType.TDX),
18
- attestationProvider: typebox_1.Type.Optional(TdxAttestationProvider),
19
14
  });
20
15
  const CaTeePkiCertProviderChallengeSEV = typebox_1.Type.Object({
21
16
  type: typebox_1.Type.Literal(pki_common_1.ChallengeType.SEVSNP),
@@ -49,4 +44,4 @@ const PkiClientConfigSchema = typebox_1.Type.Object({
49
44
  clientCertProvider: TeePkiCertProviderConfigSchema,
50
45
  });
51
46
  exports.PkiClientConfigSchemaCompiled = compiler_1.TypeCompiler.Compile(PkiClientConfigSchema);
52
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGtpQ2xpZW50Q29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3BraUNsaWVudENvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSwyREFBMkQ7QUFDM0QsK0NBQWlEO0FBQ2pELHlEQUEwRDtBQUUxRCxNQUFNLHNDQUFzQyxHQUFHLGNBQUksQ0FBQyxNQUFNLENBQUM7SUFDdkQsSUFBSSxFQUFFLGNBQUksQ0FBQyxPQUFPLENBQUMsMEJBQWEsQ0FBQyxTQUFTLENBQUM7SUFDM0MsS0FBSyxFQUFFLGNBQUksQ0FBQyxNQUFNLENBQUMsRUFBRSxTQUFTLEVBQUUsQ0FBQyxFQUFFLENBQUM7SUFDcEMsV0FBVyxFQUFFLGNBQUksQ0FBQyxNQUFNLENBQUMsRUFBRSxTQUFTLEVBQUUsQ0FBQyxFQUFFLENBQUM7Q0FDN0MsQ0FBQyxDQUFDO0FBRUgsTUFBTSxzQkFBc0IsR0FBRyxjQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3RDLGNBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDO0lBQ3RCLGNBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDO0NBQ3pCLENBQUMsQ0FBQztBQUVILE1BQU0sZ0NBQWdDLEdBQUcsY0FBSSxDQUFDLE1BQU0sQ0FBQztJQUNqRCxJQUFJLEVBQUUsY0FBSSxDQUFDLE9BQU8sQ0FBQywwQkFBYSxDQUFDLEdBQUcsQ0FBQztJQUNyQyxtQkFBbUIsRUFBRSxjQUFJLENBQUMsUUFBUSxDQUFDLHNCQUFzQixDQUFDO0NBQzdELENBQUMsQ0FBQztBQUVILE1BQU0sZ0NBQWdDLEdBQUcsY0FBSSxDQUFDLE1BQU0sQ0FBQztJQUNqRCxJQUFJLEVBQUUsY0FBSSxDQUFDLE9BQU8sQ0FBQywwQkFBYSxDQUFDLE1BQU0sQ0FBQztDQUMzQyxDQUFDLENBQUM7QUFFSCxNQUFNLGdDQUFnQyxHQUFHLGNBQUksQ0FBQyxNQUFNLENBQUM7SUFDakQsSUFBSSxFQUFFLGNBQUksQ0FBQyxPQUFPLENBQUMsMEJBQWEsQ0FBQyxPQUFPLENBQUM7Q0FDNUMsQ0FBQyxDQUFDO0FBRUgsTUFBTSw2QkFBNkIsR0FBRyxjQUFJLENBQUMsS0FBSyxDQUFDO0lBQzdDLHNDQUFzQztJQUN0QyxnQ0FBZ0M7SUFDaEMsZ0NBQWdDO0lBQ2hDLGdDQUFnQztDQUNuQyxDQUFDLENBQUM7QUFFSCxNQUFNLGdDQUFnQyxHQUFHLGNBQUksQ0FBQyxNQUFNLENBQUM7SUFDakQsSUFBSSxFQUFFLGNBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDO0lBQzVCLFNBQVMsRUFBRSw2QkFBNkI7SUFDeEMsT0FBTyxFQUFFLGNBQUksQ0FBQyxNQUFNLENBQUMsRUFBRSxTQUFTLEVBQUUsQ0FBQyxFQUFFLENBQUM7SUFDdEMsUUFBUSxFQUFFLGNBQUksQ0FBQyxNQUFNLENBQUMsRUFBRSxTQUFTLEVBQUUsQ0FBQyxFQUFFLENBQUM7Q0FDMUMsQ0FBQyxDQUFDO0FBRUgsTUFBTSxvQ0FBb0MsR0FBRyxjQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3JELElBQUksRUFBRSxjQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQztJQUM1QixPQUFPLEVBQUUsY0FBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLFNBQVMsRUFBRSxDQUFDLEVBQUUsQ0FBQztJQUN0QyxZQUFZLEVBQUUsY0FBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLFNBQVMsRUFBRSxDQUFDLEVBQUUsQ0FBQztJQUMzQyxhQUFhLEVBQUUsY0FBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLFNBQVMsRUFBRSxDQUFDLEVBQUUsQ0FBQztDQUMvQyxDQUFDLENBQUM7QUFFSCxNQUFNLDhCQUE4QixHQUFHLGNBQUksQ0FBQyxLQUFLLENBQUM7SUFDOUMsZ0NBQWdDO0lBQ2hDLG9DQUFvQztDQUN2QyxDQUFDLENBQUM7QUFFSCxNQUFNLHFCQUFxQixHQUFHLGNBQUksQ0FBQyxNQUFNLENBQUM7SUFDdEMsa0JBQWtCLEVBQUUsOEJBQThCO0NBQ3JELENBQUMsQ0FBQztBQUtVLFFBQUEsNkJBQTZCLEdBQUcsdUJBQVksQ0FBQyxPQUFPLENBQzdELHFCQUFxQixDQUN4QixDQUFDIn0=
47
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGtpQ2xpZW50Q29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3BraUNsaWVudENvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSwyREFBMkQ7QUFDM0QsK0NBQWlEO0FBQ2pELHlEQUEwRDtBQUUxRCxNQUFNLHNDQUFzQyxHQUFHLGNBQUksQ0FBQyxNQUFNLENBQUM7SUFDdkQsSUFBSSxFQUFFLGNBQUksQ0FBQyxPQUFPLENBQUMsMEJBQWEsQ0FBQyxTQUFTLENBQUM7SUFDM0MsS0FBSyxFQUFFLGNBQUksQ0FBQyxNQUFNLENBQUMsRUFBRSxTQUFTLEVBQUUsQ0FBQyxFQUFFLENBQUM7SUFDcEMsV0FBVyxFQUFFLGNBQUksQ0FBQyxNQUFNLENBQUMsRUFBRSxTQUFTLEVBQUUsQ0FBQyxFQUFFLENBQUM7Q0FDN0MsQ0FBQyxDQUFDO0FBRUgsTUFBTSxnQ0FBZ0MsR0FBRyxjQUFJLENBQUMsTUFBTSxDQUFDO0lBQ2pELElBQUksRUFBRSxjQUFJLENBQUMsT0FBTyxDQUFDLDBCQUFhLENBQUMsR0FBRyxDQUFDO0NBQ3hDLENBQUMsQ0FBQztBQUVILE1BQU0sZ0NBQWdDLEdBQUcsY0FBSSxDQUFDLE1BQU0sQ0FBQztJQUNqRCxJQUFJLEVBQUUsY0FBSSxDQUFDLE9BQU8sQ0FBQywwQkFBYSxDQUFDLE1BQU0sQ0FBQztDQUMzQyxDQUFDLENBQUM7QUFFSCxNQUFNLGdDQUFnQyxHQUFHLGNBQUksQ0FBQyxNQUFNLENBQUM7SUFDakQsSUFBSSxFQUFFLGNBQUksQ0FBQyxPQUFPLENBQUMsMEJBQWEsQ0FBQyxPQUFPLENBQUM7Q0FDNUMsQ0FBQyxDQUFDO0FBRUgsTUFBTSw2QkFBNkIsR0FBRyxjQUFJLENBQUMsS0FBSyxDQUFDO0lBQzdDLHNDQUFzQztJQUN0QyxnQ0FBZ0M7SUFDaEMsZ0NBQWdDO0lBQ2hDLGdDQUFnQztDQUNuQyxDQUFDLENBQUM7QUFFSCxNQUFNLGdDQUFnQyxHQUFHLGNBQUksQ0FBQyxNQUFNLENBQUM7SUFDakQsSUFBSSxFQUFFLGNBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDO0lBQzVCLFNBQVMsRUFBRSw2QkFBNkI7SUFDeEMsT0FBTyxFQUFFLGNBQUksQ0FBQyxNQUFNLENBQUMsRUFBRSxTQUFTLEVBQUUsQ0FBQyxFQUFFLENBQUM7SUFDdEMsUUFBUSxFQUFFLGNBQUksQ0FBQyxNQUFNLENBQUMsRUFBRSxTQUFTLEVBQUUsQ0FBQyxFQUFFLENBQUM7Q0FDMUMsQ0FBQyxDQUFDO0FBRUgsTUFBTSxvQ0FBb0MsR0FBRyxjQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3JELElBQUksRUFBRSxjQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQztJQUM1QixPQUFPLEVBQUUsY0FBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLFNBQVMsRUFBRSxDQUFDLEVBQUUsQ0FBQztJQUN0QyxZQUFZLEVBQUUsY0FBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLFNBQVMsRUFBRSxDQUFDLEVBQUUsQ0FBQztJQUMzQyxhQUFhLEVBQUUsY0FBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLFNBQVMsRUFBRSxDQUFDLEVBQUUsQ0FBQztDQUMvQyxDQUFDLENBQUM7QUFFSCxNQUFNLDhCQUE4QixHQUFHLGNBQUksQ0FBQyxLQUFLLENBQUM7SUFDOUMsZ0NBQWdDO0lBQ2hDLG9DQUFvQztDQUN2QyxDQUFDLENBQUM7QUFFSCxNQUFNLHFCQUFxQixHQUFHLGNBQUksQ0FBQyxNQUFNLENBQUM7SUFDdEMsa0JBQWtCLEVBQUUsOEJBQThCO0NBQ3JELENBQUMsQ0FBQztBQUlVLFFBQUEsNkJBQTZCLEdBQUcsdUJBQVksQ0FBQyxPQUFPLENBQzdELHFCQUFxQixDQUN4QixDQUFDIn0=
package/package.json CHANGED
@@ -1,30 +1,28 @@
1
1
  {
2
2
  "name": "@super-protocol/pki-client",
3
- "version": "1.7.0",
3
+ "version": "1.7.2",
4
4
  "public": true,
5
5
  "description": "",
6
6
  "main": "dist/index.js",
7
7
  "module": "dist/index.js",
8
8
  "types": "dist/index.d.ts",
9
9
  "files": [
10
- "dist",
11
- "bin/attest"
10
+ "dist"
12
11
  ],
13
12
  "directories": {
14
13
  "lib": "dist"
15
14
  },
16
15
  "scripts": {
17
- "build": "npm run prepare && tsc -b",
16
+ "build": "tsc -b",
18
17
  "lint": "eslint --max-warnings=0 src",
19
- "lint:fix": "eslint --fix src",
20
- "prepare": "./install_go_tdx_guest.sh"
18
+ "lint:fix": "eslint --fix src"
21
19
  },
22
20
  "author": "Super Protocol",
23
21
  "license": "ISC",
24
22
  "dependencies": {
25
23
  "@super-protocol/addons-tee": "^0.9.3",
26
- "@super-protocol/pki-api-client": "*",
27
- "@super-protocol/pki-common": "*",
24
+ "@super-protocol/pki-api-client": "^1.7.2",
25
+ "@super-protocol/pki-common": "^1.7.2",
28
26
  "@super-protocol/sp-nvtrust-wrapper": "^1.0.9",
29
27
  "yaml": "^2.6.0"
30
28
  }
package/bin/attest DELETED
Binary file