@super-protocol/sp-nvtrust-wrapper 1.0.4 → 1.0.6

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.
@@ -0,0 +1,323 @@
1
+ "use strict";
2
+ // Code generated by protoc-gen-ts_proto. DO NOT EDIT.
3
+ // versions:
4
+ // protoc-gen-ts_proto v1.181.2
5
+ // protoc v3.21.12
6
+ // source: TRI.proto
7
+ var __importDefault = (this && this.__importDefault) || function (mod) {
8
+ return (mod && mod.__esModule) ? mod : { "default": mod };
9
+ };
10
+ Object.defineProperty(exports, "__esModule", { value: true });
11
+ exports.TRI = exports.Encryption = exports.protobufPackage = void 0;
12
+ /* eslint-disable */
13
+ const minimal_js_1 = __importDefault(require("protobufjs/minimal.js"));
14
+ const Hash_js_1 = require("./Hash.js");
15
+ exports.protobufPackage = "";
16
+ function createBaseEncryption() {
17
+ return {
18
+ algo: "",
19
+ key: undefined,
20
+ cipher: undefined,
21
+ ciphertext: undefined,
22
+ iv: undefined,
23
+ mac: undefined,
24
+ encoding: "",
25
+ };
26
+ }
27
+ exports.Encryption = {
28
+ encode(message, writer = minimal_js_1.default.Writer.create()) {
29
+ if (message.algo !== "") {
30
+ writer.uint32(10).string(message.algo);
31
+ }
32
+ if (message.key !== undefined) {
33
+ writer.uint32(18).bytes(message.key);
34
+ }
35
+ if (message.cipher !== undefined) {
36
+ writer.uint32(26).string(message.cipher);
37
+ }
38
+ if (message.ciphertext !== undefined) {
39
+ writer.uint32(34).bytes(message.ciphertext);
40
+ }
41
+ if (message.iv !== undefined) {
42
+ writer.uint32(50).bytes(message.iv);
43
+ }
44
+ if (message.mac !== undefined) {
45
+ writer.uint32(58).bytes(message.mac);
46
+ }
47
+ if (message.encoding !== "") {
48
+ writer.uint32(66).string(message.encoding);
49
+ }
50
+ return writer;
51
+ },
52
+ decode(input, length) {
53
+ const reader = input instanceof minimal_js_1.default.Reader ? input : minimal_js_1.default.Reader.create(input);
54
+ let end = length === undefined ? reader.len : reader.pos + length;
55
+ const message = createBaseEncryption();
56
+ while (reader.pos < end) {
57
+ const tag = reader.uint32();
58
+ switch (tag >>> 3) {
59
+ case 1:
60
+ if (tag !== 10) {
61
+ break;
62
+ }
63
+ message.algo = reader.string();
64
+ continue;
65
+ case 2:
66
+ if (tag !== 18) {
67
+ break;
68
+ }
69
+ message.key = reader.bytes();
70
+ continue;
71
+ case 3:
72
+ if (tag !== 26) {
73
+ break;
74
+ }
75
+ message.cipher = reader.string();
76
+ continue;
77
+ case 4:
78
+ if (tag !== 34) {
79
+ break;
80
+ }
81
+ message.ciphertext = reader.bytes();
82
+ continue;
83
+ case 6:
84
+ if (tag !== 50) {
85
+ break;
86
+ }
87
+ message.iv = reader.bytes();
88
+ continue;
89
+ case 7:
90
+ if (tag !== 58) {
91
+ break;
92
+ }
93
+ message.mac = reader.bytes();
94
+ continue;
95
+ case 8:
96
+ if (tag !== 66) {
97
+ break;
98
+ }
99
+ message.encoding = reader.string();
100
+ continue;
101
+ }
102
+ if ((tag & 7) === 4 || tag === 0) {
103
+ break;
104
+ }
105
+ reader.skipType(tag & 7);
106
+ }
107
+ return message;
108
+ },
109
+ fromJSON(object) {
110
+ return {
111
+ algo: isSet(object.algo) ? globalThis.String(object.algo) : "",
112
+ key: isSet(object.key) ? bytesFromBase64(object.key) : undefined,
113
+ cipher: isSet(object.cipher) ? globalThis.String(object.cipher) : undefined,
114
+ ciphertext: isSet(object.ciphertext) ? bytesFromBase64(object.ciphertext) : undefined,
115
+ iv: isSet(object.iv) ? bytesFromBase64(object.iv) : undefined,
116
+ mac: isSet(object.mac) ? bytesFromBase64(object.mac) : undefined,
117
+ encoding: isSet(object.encoding) ? globalThis.String(object.encoding) : "",
118
+ };
119
+ },
120
+ toJSON(message) {
121
+ const obj = {};
122
+ if (message.algo !== "") {
123
+ obj.algo = message.algo;
124
+ }
125
+ if (message.key !== undefined) {
126
+ obj.key = base64FromBytes(message.key);
127
+ }
128
+ if (message.cipher !== undefined) {
129
+ obj.cipher = message.cipher;
130
+ }
131
+ if (message.ciphertext !== undefined) {
132
+ obj.ciphertext = base64FromBytes(message.ciphertext);
133
+ }
134
+ if (message.iv !== undefined) {
135
+ obj.iv = base64FromBytes(message.iv);
136
+ }
137
+ if (message.mac !== undefined) {
138
+ obj.mac = base64FromBytes(message.mac);
139
+ }
140
+ if (message.encoding !== "") {
141
+ obj.encoding = message.encoding;
142
+ }
143
+ return obj;
144
+ },
145
+ create(base) {
146
+ return exports.Encryption.fromPartial(base ?? {});
147
+ },
148
+ fromPartial(object) {
149
+ const message = createBaseEncryption();
150
+ message.algo = object.algo ?? "";
151
+ message.key = object.key ?? undefined;
152
+ message.cipher = object.cipher ?? undefined;
153
+ message.ciphertext = object.ciphertext ?? undefined;
154
+ message.iv = object.iv ?? undefined;
155
+ message.mac = object.mac ?? undefined;
156
+ message.encoding = object.encoding ?? "";
157
+ return message;
158
+ },
159
+ };
160
+ function createBaseTRI() {
161
+ return {
162
+ solutionHashes: [],
163
+ mrenclave: new Uint8Array(0),
164
+ args: "",
165
+ encryption: undefined,
166
+ mrsigner: new Uint8Array(0),
167
+ imageHashes: [],
168
+ };
169
+ }
170
+ exports.TRI = {
171
+ encode(message, writer = minimal_js_1.default.Writer.create()) {
172
+ for (const v of message.solutionHashes) {
173
+ Hash_js_1.Hash.encode(v, writer.uint32(10).fork()).ldelim();
174
+ }
175
+ if (message.mrenclave.length !== 0) {
176
+ writer.uint32(18).bytes(message.mrenclave);
177
+ }
178
+ if (message.args !== "") {
179
+ writer.uint32(26).string(message.args);
180
+ }
181
+ if (message.encryption !== undefined) {
182
+ exports.Encryption.encode(message.encryption, writer.uint32(34).fork()).ldelim();
183
+ }
184
+ if (message.mrsigner.length !== 0) {
185
+ writer.uint32(42).bytes(message.mrsigner);
186
+ }
187
+ for (const v of message.imageHashes) {
188
+ Hash_js_1.Hash.encode(v, writer.uint32(50).fork()).ldelim();
189
+ }
190
+ return writer;
191
+ },
192
+ decode(input, length) {
193
+ const reader = input instanceof minimal_js_1.default.Reader ? input : minimal_js_1.default.Reader.create(input);
194
+ let end = length === undefined ? reader.len : reader.pos + length;
195
+ const message = createBaseTRI();
196
+ while (reader.pos < end) {
197
+ const tag = reader.uint32();
198
+ switch (tag >>> 3) {
199
+ case 1:
200
+ if (tag !== 10) {
201
+ break;
202
+ }
203
+ message.solutionHashes.push(Hash_js_1.Hash.decode(reader, reader.uint32()));
204
+ continue;
205
+ case 2:
206
+ if (tag !== 18) {
207
+ break;
208
+ }
209
+ message.mrenclave = reader.bytes();
210
+ continue;
211
+ case 3:
212
+ if (tag !== 26) {
213
+ break;
214
+ }
215
+ message.args = reader.string();
216
+ continue;
217
+ case 4:
218
+ if (tag !== 34) {
219
+ break;
220
+ }
221
+ message.encryption = exports.Encryption.decode(reader, reader.uint32());
222
+ continue;
223
+ case 5:
224
+ if (tag !== 42) {
225
+ break;
226
+ }
227
+ message.mrsigner = reader.bytes();
228
+ continue;
229
+ case 6:
230
+ if (tag !== 50) {
231
+ break;
232
+ }
233
+ message.imageHashes.push(Hash_js_1.Hash.decode(reader, reader.uint32()));
234
+ continue;
235
+ }
236
+ if ((tag & 7) === 4 || tag === 0) {
237
+ break;
238
+ }
239
+ reader.skipType(tag & 7);
240
+ }
241
+ return message;
242
+ },
243
+ fromJSON(object) {
244
+ return {
245
+ solutionHashes: globalThis.Array.isArray(object?.solutionHashes)
246
+ ? object.solutionHashes.map((e) => Hash_js_1.Hash.fromJSON(e))
247
+ : [],
248
+ mrenclave: isSet(object.mrenclave) ? bytesFromBase64(object.mrenclave) : new Uint8Array(0),
249
+ args: isSet(object.args) ? globalThis.String(object.args) : "",
250
+ encryption: isSet(object.encryption) ? exports.Encryption.fromJSON(object.encryption) : undefined,
251
+ mrsigner: isSet(object.mrsigner) ? bytesFromBase64(object.mrsigner) : new Uint8Array(0),
252
+ imageHashes: globalThis.Array.isArray(object?.imageHashes)
253
+ ? object.imageHashes.map((e) => Hash_js_1.Hash.fromJSON(e))
254
+ : [],
255
+ };
256
+ },
257
+ toJSON(message) {
258
+ const obj = {};
259
+ if (message.solutionHashes?.length) {
260
+ obj.solutionHashes = message.solutionHashes.map((e) => Hash_js_1.Hash.toJSON(e));
261
+ }
262
+ if (message.mrenclave.length !== 0) {
263
+ obj.mrenclave = base64FromBytes(message.mrenclave);
264
+ }
265
+ if (message.args !== "") {
266
+ obj.args = message.args;
267
+ }
268
+ if (message.encryption !== undefined) {
269
+ obj.encryption = exports.Encryption.toJSON(message.encryption);
270
+ }
271
+ if (message.mrsigner.length !== 0) {
272
+ obj.mrsigner = base64FromBytes(message.mrsigner);
273
+ }
274
+ if (message.imageHashes?.length) {
275
+ obj.imageHashes = message.imageHashes.map((e) => Hash_js_1.Hash.toJSON(e));
276
+ }
277
+ return obj;
278
+ },
279
+ create(base) {
280
+ return exports.TRI.fromPartial(base ?? {});
281
+ },
282
+ fromPartial(object) {
283
+ const message = createBaseTRI();
284
+ message.solutionHashes = object.solutionHashes?.map((e) => Hash_js_1.Hash.fromPartial(e)) || [];
285
+ message.mrenclave = object.mrenclave ?? new Uint8Array(0);
286
+ message.args = object.args ?? "";
287
+ message.encryption = (object.encryption !== undefined && object.encryption !== null)
288
+ ? exports.Encryption.fromPartial(object.encryption)
289
+ : undefined;
290
+ message.mrsigner = object.mrsigner ?? new Uint8Array(0);
291
+ message.imageHashes = object.imageHashes?.map((e) => Hash_js_1.Hash.fromPartial(e)) || [];
292
+ return message;
293
+ },
294
+ };
295
+ function bytesFromBase64(b64) {
296
+ if (globalThis.Buffer) {
297
+ return Uint8Array.from(globalThis.Buffer.from(b64, "base64"));
298
+ }
299
+ else {
300
+ const bin = globalThis.atob(b64);
301
+ const arr = new Uint8Array(bin.length);
302
+ for (let i = 0; i < bin.length; ++i) {
303
+ arr[i] = bin.charCodeAt(i);
304
+ }
305
+ return arr;
306
+ }
307
+ }
308
+ function base64FromBytes(arr) {
309
+ if (globalThis.Buffer) {
310
+ return globalThis.Buffer.from(arr).toString("base64");
311
+ }
312
+ else {
313
+ const bin = [];
314
+ arr.forEach((byte) => {
315
+ bin.push(globalThis.String.fromCharCode(byte));
316
+ });
317
+ return globalThis.btoa(bin.join(""));
318
+ }
319
+ }
320
+ function isSet(value) {
321
+ return value !== null && value !== undefined;
322
+ }
323
+ //# sourceMappingURL=TRI.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TRI.js","sourceRoot":"","sources":["../../src/proto/TRI.ts"],"names":[],"mappings":"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"}