Socket
Socket
Sign inDemoInstall

@super-protocol/tee-lib

Package Overview
Dependencies
Maintainers
14
Versions
23
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@super-protocol/tee-lib - npm Package Compare versions

Comparing version 0.1.3 to 0.2.0

dist/certificate/errors.d.ts

2

dist/index.d.ts
export * from './tlb';
export * from './certificate';
export * from './tee-device';

4

dist/index.js

@@ -18,2 +18,4 @@ "use strict";

__exportStar(require("./tlb"), exports);
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHdDQUFzQiJ9
__exportStar(require("./certificate"), exports);
__exportStar(require("./tee-device"), exports);
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHdDQUFzQjtBQUN0QixnREFBOEI7QUFDOUIsK0NBQTZCIn0=

@@ -23,3 +23,3 @@ import { TeeDataType, BinaryType, TLBlockUnserializeResultType, TLBlockSerializeResultType, TLBlockType, TeeSgxQuoteDataType, TeeSgxReportDataType } from './types';

*/
serializeAnyData(anyData: any): BinaryType | Promise<BinaryType>;
serializeAnyData(anyData: any): BinaryType;
}

@@ -26,0 +26,0 @@ export interface TeeSgxParser {

@@ -19,5 +19,9 @@ import { TeeSgxParser } from './interfaces';

static readonly reportDataOffset: number;
static readonly reportDataSize = 32;
static readonly reportUserDataSize = 64;
static readonly reportUserDataSHA256Size = 32;
static readonly ecdsaP256SignatureSize = 64;
static readonly ecdsaP256PublicKeySize = 64;
private getDataAndAdvance;
parseQuote(data: BinaryType): TeeSgxQuoteDataType;
parseReport(data: BinaryType): TeeSgxReportDataType;
}

@@ -12,11 +12,17 @@ "use strict";

class TeeSgxParserV3 {
getDataAndAdvance(blob, size) {
const buf = buffer_1.Buffer.from(blob.data.subarray(0, size));
blob.data = buffer_1.Buffer.from(blob.data.subarray(size));
return buf;
}
parseQuote(data) {
const { quoteHeaderSize, reportSize, userDataOffset, userDataSize } = TeeSgxParserV3;
const { quoteHeaderSize, reportSize, userDataOffset, userDataSize, ecdsaP256SignatureSize, ecdsaP256PublicKeySize, } = TeeSgxParserV3;
if (data.length < quoteHeaderSize + reportSize) {
throw new errors_1.TeeSgxParserError('data has invalid length');
}
const quoteHeader = buffer_1.Buffer.from(data.slice(0, quoteHeaderSize));
const report = buffer_1.Buffer.from(data.slice(quoteHeaderSize, quoteHeaderSize + reportSize));
const quoteRemainder = { data: buffer_1.Buffer.from(data) };
const quoteHeader = this.getDataAndAdvance(quoteRemainder, quoteHeaderSize);
const report = this.getDataAndAdvance(quoteRemainder, reportSize);
const version = quoteHeader.readUInt16LE(0);
if (version < 2 || version > 3) {
if (version != 3) {
throw new errors_1.TeeSgxParserError('quote header has invalid or unsupported version');

@@ -29,3 +35,31 @@ }

const userData = quoteHeader.slice(userDataOffset, userDataOffset + userDataSize);
const quoteSignatureDateLen = quoteRemainder.data.readUInt32LE(0);
quoteRemainder.data = buffer_1.Buffer.from(quoteRemainder.data.subarray(4));
if (quoteSignatureDateLen != quoteRemainder.data.length) {
throw new errors_1.TeeSgxParserError(`quoteSignatureDateLen has invalid length: ${quoteRemainder.data.length} instead of ${quoteSignatureDateLen} expected`);
}
const rawQuoteSignatureDataRemainder = {
data: this.getDataAndAdvance(quoteRemainder, quoteSignatureDateLen),
};
const isvEnclaveReportSignature = this.getDataAndAdvance(rawQuoteSignatureDataRemainder, ecdsaP256SignatureSize);
const ecdsaAttestationKey = this.getDataAndAdvance(rawQuoteSignatureDataRemainder, ecdsaP256PublicKeySize);
const qeReport = this.getDataAndAdvance(rawQuoteSignatureDataRemainder, reportSize);
const qeReportSignature = this.getDataAndAdvance(rawQuoteSignatureDataRemainder, ecdsaP256SignatureSize);
const qeAuthenticationDataSize = rawQuoteSignatureDataRemainder.data.readUInt16LE(0);
rawQuoteSignatureDataRemainder.data = buffer_1.Buffer.from(rawQuoteSignatureDataRemainder.data.subarray(2));
if (rawQuoteSignatureDataRemainder.data.length < qeAuthenticationDataSize) {
throw new errors_1.TeeSgxParserError(`qeAuthenticationDataSize has invalid length: ${rawQuoteSignatureDataRemainder.data.length} instead of ${qeAuthenticationDataSize} expected`);
}
const qeAuthenticationData = this.getDataAndAdvance(rawQuoteSignatureDataRemainder, qeAuthenticationDataSize);
const qeCertificationDataType = rawQuoteSignatureDataRemainder.data.readUInt16LE(0);
if (qeCertificationDataType < 1 || qeCertificationDataType > 7) {
throw new errors_1.TeeSgxParserError(`certificationDataType has invalid value: ${qeCertificationDataType}`);
}
const certificationDataSize = rawQuoteSignatureDataRemainder.data.readUInt32LE(2);
const qeCertificationData = rawQuoteSignatureDataRemainder.data.subarray(2 + 4);
if (certificationDataSize != qeCertificationData.length) {
throw new errors_1.TeeSgxParserError(`certificationDataSize has invalid length: $PqeCertificationData.length} instead of ${certificationDataSize} expected`);
}
return {
rawHeader: quoteHeader,
header: {

@@ -37,6 +71,13 @@ version,

report,
isvEnclaveReportSignature,
ecdsaAttestationKey,
qeReport,
qeReportSignature,
qeAuthenticationData,
qeCertificationDataType,
qeCertificationData,
};
}
parseReport(data) {
const { reportSize, cpuSvnSize, reportMrEnclaveOffset, reportMrEnclaveSize, reportMrSignerOffset, reportMrSignerSize, reportDataOffset, reportDataSize, } = TeeSgxParserV3;
const { reportSize, cpuSvnSize, reportMrEnclaveOffset, reportMrEnclaveSize, reportMrSignerOffset, reportMrSignerSize, reportDataOffset, reportUserDataSize, reportUserDataSHA256Size, } = TeeSgxParserV3;
if (data.length < reportSize) {

@@ -49,3 +90,4 @@ throw new errors_1.TeeSgxParserError('data has invalid length');

const mrSigner = report.slice(reportMrSignerOffset, reportMrSignerOffset + reportMrSignerSize);
const dataHash = report.slice(reportDataOffset, reportDataOffset + reportDataSize);
const userData = report.slice(reportDataOffset, reportDataOffset + reportUserDataSize);
const dataHash = report.slice(reportDataOffset, reportDataOffset + reportUserDataSHA256Size);
return {

@@ -55,2 +97,3 @@ cpuSvn,

mrSigner,
userData,
dataHash,

@@ -76,3 +119,6 @@ };

/* reserved */ 60;
TeeSgxParserV3.reportDataSize = 32; /* 64 in report, but we need 32 only for sha256 hash */
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVlLXNneC1wYXJzZXJ2My5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90bGIvdGVlLXNneC1wYXJzZXJ2My50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxvQ0FBeUM7QUFDekMscUNBQTZDO0FBSTdDOzs7O0dBSUc7QUFDSCxNQUFhLGNBQWM7SUFvQnpCLFVBQVUsQ0FBQyxJQUFnQjtRQUN6QixNQUFNLEVBQUUsZUFBZSxFQUFFLFVBQVUsRUFBRSxjQUFjLEVBQUUsWUFBWSxFQUFFLEdBQUcsY0FBYyxDQUFDO1FBRXJGLElBQUksSUFBSSxDQUFDLE1BQU0sR0FBRyxlQUFlLEdBQUcsVUFBVSxFQUFFO1lBQzlDLE1BQU0sSUFBSSwwQkFBaUIsQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO1NBQ3hEO1FBRUQsTUFBTSxXQUFXLEdBQUcsZUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxlQUFlLENBQUMsQ0FBQyxDQUFDO1FBQzlELE1BQU0sTUFBTSxHQUFHLGVBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxlQUFlLEVBQUUsZUFBZSxHQUFHLFVBQVUsQ0FBQyxDQUFDLENBQUM7UUFFcEYsTUFBTSxPQUFPLEdBQUcsV0FBVyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUU1QyxJQUFJLE9BQU8sR0FBRyxDQUFDLElBQUksT0FBTyxHQUFHLENBQUMsRUFBRTtZQUM5QixNQUFNLElBQUksMEJBQWlCLENBQUMsaURBQWlELENBQUMsQ0FBQztTQUNoRjtRQUVELE1BQU0sa0JBQWtCLEdBQUcsV0FBVyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUV2RCxJQUFJLGtCQUFrQixHQUFHLENBQUMsRUFBRTtZQUMxQixNQUFNLElBQUksMEJBQWlCLENBQUMsOERBQThELENBQUMsQ0FBQztTQUM3RjtRQUVELE1BQU0sUUFBUSxHQUFHLFdBQVcsQ0FBQyxLQUFLLENBQUMsY0FBYyxFQUFFLGNBQWMsR0FBRyxZQUFZLENBQUMsQ0FBQztRQUVsRixPQUFPO1lBQ0wsTUFBTSxFQUFFO2dCQUNOLE9BQU87Z0JBQ1Asa0JBQWtCO2dCQUNsQixRQUFRO2FBQ1Q7WUFDRCxNQUFNO1NBQ1AsQ0FBQztJQUNKLENBQUM7SUFFRCxXQUFXLENBQUMsSUFBZ0I7UUFDMUIsTUFBTSxFQUNKLFVBQVUsRUFDVixVQUFVLEVBQ1YscUJBQXFCLEVBQ3JCLG1CQUFtQixFQUNuQixvQkFBb0IsRUFDcEIsa0JBQWtCLEVBQ2xCLGdCQUFnQixFQUNoQixjQUFjLEdBQ2YsR0FBRyxjQUFjLENBQUM7UUFFbkIsSUFBSSxJQUFJLENBQUMsTUFBTSxHQUFHLFVBQVUsRUFBRTtZQUM1QixNQUFNLElBQUksMEJBQWlCLENBQUMseUJBQXlCLENBQUMsQ0FBQztTQUN4RDtRQUVELE1BQU0sTUFBTSxHQUFHLGVBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDL0IsTUFBTSxNQUFNLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsVUFBVSxDQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzNELE1BQU0sU0FBUyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQzVCLHFCQUFxQixFQUNyQixxQkFBcUIsR0FBRyxtQkFBbUIsQ0FDNUMsQ0FBQztRQUNGLE1BQU0sUUFBUSxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsb0JBQW9CLEVBQUUsb0JBQW9CLEdBQUcsa0JBQWtCLENBQUMsQ0FBQztRQUMvRixNQUFNLFFBQVEsR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLGdCQUFnQixFQUFFLGdCQUFnQixHQUFHLGNBQWMsQ0FBQyxDQUFDO1FBRW5GLE9BQU87WUFDTCxNQUFNO1lBQ04sU0FBUztZQUNULFFBQVE7WUFDUixRQUFRO1NBQ1QsQ0FBQztJQUNKLENBQUM7O0FBckZILHdDQXNGQztBQXJGaUIsOEJBQWUsR0FBRyxFQUFFLENBQUM7QUFDckIseUJBQVUsR0FBRyxHQUFHLENBQUM7QUFDakIsNkJBQWMsR0FBRyxFQUFFLENBQUM7QUFDcEIsMkJBQVksR0FBRyxFQUFFLENBQUM7QUFDbEIseUJBQVUsR0FBRyxFQUFFLENBQUM7QUFDaEIsb0NBQXFCLEdBQUcsRUFBRSxDQUFDO0FBQzNCLGtDQUFtQixHQUFHLEVBQUUsQ0FBQztBQUN6QixtQ0FBb0IsR0FDbEMsY0FBYyxDQUFDLHFCQUFxQixHQUFHLGNBQWMsQ0FBQyxtQkFBbUIsR0FBRyxjQUFjLENBQUMsRUFBRSxDQUFDO0FBQ2hGLGlDQUFrQixHQUFHLEVBQUUsQ0FBQztBQUN4QiwrQkFBZ0IsR0FDOUIsY0FBYyxDQUFDLG9CQUFvQjtJQUNuQyxjQUFjLENBQUMsa0JBQWtCO0lBQ2pDLGNBQWMsQ0FBQyxFQUFFO0lBQ2pCLGVBQWUsQ0FBQyxDQUFDO0lBQ2pCLFlBQVksQ0FBQyxDQUFDO0lBQ2QsY0FBYyxDQUFDLEVBQUUsQ0FBQztBQUNKLDZCQUFjLEdBQUcsRUFBRSxDQUFDLENBQUMsdURBQXVEIn0=
TeeSgxParserV3.reportUserDataSize = 64;
TeeSgxParserV3.reportUserDataSHA256Size = 32; /* 64 in report, but we need 32 only for sha256 hash */
TeeSgxParserV3.ecdsaP256SignatureSize = 64;
TeeSgxParserV3.ecdsaP256PublicKeySize = 64;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVlLXNneC1wYXJzZXJ2My5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90bGIvdGVlLXNneC1wYXJzZXJ2My50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxvQ0FBeUM7QUFDekMscUNBQTZDO0FBSTdDOzs7O0dBSUc7QUFDSCxNQUFhLGNBQWM7SUF1QmpCLGlCQUFpQixDQUFDLElBQW9CLEVBQUUsSUFBWTtRQUMxRCxNQUFNLEdBQUcsR0FBRyxlQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQ25ELElBQUksQ0FBQyxJQUFJLEdBQUcsZUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBRWhELE9BQU8sR0FBRyxDQUFDO0lBQ2IsQ0FBQztJQUVELFVBQVUsQ0FBQyxJQUFnQjtRQUN6QixNQUFNLEVBQ0osZUFBZSxFQUNmLFVBQVUsRUFDVixjQUFjLEVBQ2QsWUFBWSxFQUNaLHNCQUFzQixFQUN0QixzQkFBc0IsR0FDdkIsR0FBRyxjQUFjLENBQUM7UUFFbkIsSUFBSSxJQUFJLENBQUMsTUFBTSxHQUFHLGVBQWUsR0FBRyxVQUFVLEVBQUU7WUFDOUMsTUFBTSxJQUFJLDBCQUFpQixDQUFDLHlCQUF5QixDQUFDLENBQUM7U0FDeEQ7UUFDRCxNQUFNLGNBQWMsR0FBRyxFQUFFLElBQUksRUFBRSxlQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7UUFDakQsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGNBQWMsRUFBRSxlQUFlLENBQUMsQ0FBQztRQUM1RSxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsY0FBYyxFQUFFLFVBQVUsQ0FBQyxDQUFDO1FBRWxFLE1BQU0sT0FBTyxHQUFH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

@@ -7,3 +7,3 @@ import { BinaryType, TeeDataType as TLBlockDataType, TLBlockUnserializeResultType, TLBlockSerializeResultType, TLBlockType, TeeDataType } from './types';

serializeMetadata(tlbMetadata: TeeDataType): BinaryType | Promise<BinaryType>;
serializeAnyData(data: any): BinaryType | Promise<BinaryType>;
serializeAnyData(data: any): BinaryType;
}

@@ -36,2 +36,3 @@ /// <reference types="node" />

export declare type TeeSgxQuoteDataType = {
rawHeader: BinaryType;
header: {

@@ -43,2 +44,9 @@ version: number;

report: BinaryType;
isvEnclaveReportSignature: BinaryType;
ecdsaAttestationKey: BinaryType;
qeReport: BinaryType;
qeReportSignature: BinaryType;
qeAuthenticationData: BinaryType;
qeCertificationDataType: number;
qeCertificationData: BinaryType;
};

@@ -49,3 +57,4 @@ export declare type TeeSgxReportDataType = {

mrSigner: BinaryType;
userData: BinaryType;
dataHash: BinaryType;
};
{
"name": "@super-protocol/tee-lib",
"version": "0.1.3",
"version": "0.2.0",
"description": "The TEE TLB library",

@@ -40,11 +40,17 @@ "tags": [

"@msgpack/msgpack": "^2.7.1",
"@super-protocol/addons-tee": "^0.8.6",
"buffer": "^6.0.3",
"gzip-js": "^0.3.2"
"gzip-js": "^0.3.2",
"node-forge": "^1.3.1",
"p-queue": "^6.6.2"
},
"devDependencies": {
"@types/elliptic": "^6.4.14",
"@types/gzip-js": "^0.3.3",
"@types/jest": "^27.0.3",
"@types/node": "^17.0.0",
"@types/node-forge": "^1.0.2",
"@typescript-eslint/eslint-plugin": "^5.8.0",
"@typescript-eslint/parser": "^5.8.0",
"elliptic": "^6.5.4",
"eslint": "^8.5.0",

@@ -54,4 +60,4 @@ "eslint-config-prettier": "^8.3.0",

"jest": "^27.4.5",
"prettier": "^2.5.1",
"ts-jest": "^27.1.2",
"prettier": "^2.5.1",
"typescript": "^4.5.4"

@@ -58,0 +64,0 @@ },

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc