@kynesyslabs/demosdk 2.1.12 → 2.1.13

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.
@@ -87,7 +87,7 @@ export default class Identities {
87
87
  * @param address The address to get identities for.
88
88
  * @returns The identities associated with the address.
89
89
  */
90
- getIdentities(demos: Demos, call?: string, address?: string): Promise<any>;
90
+ getIdentities(demos: Demos, call?: string, address?: string): Promise<import("../types").RPCResponse>;
91
91
  /**
92
92
  * Get the crosschain identities associated with an address.
93
93
  *
@@ -95,7 +95,7 @@ export default class Identities {
95
95
  * @param address The address to get identities for.
96
96
  * @returns The identities associated with the address.
97
97
  */
98
- getXmIdentities(demos: Demos, address?: string): Promise<any>;
98
+ getXmIdentities(demos: Demos, address?: string): Promise<import("../types").RPCResponse>;
99
99
  /**
100
100
  * Get the web2 identities associated with an address.
101
101
  *
@@ -103,5 +103,5 @@ export default class Identities {
103
103
  * @param address The address to get identities for.
104
104
  * @returns The identities associated with the address.
105
105
  */
106
- getWeb2Identities(demos: Demos, address?: string): Promise<any>;
106
+ getWeb2Identities(demos: Demos, address?: string): Promise<import("../types").RPCResponse>;
107
107
  }
@@ -4,6 +4,6 @@ import { Demos } from "../websdk/demosclass";
4
4
  import { WrappedCrossChainTrade } from "rubic-sdk";
5
5
  export default class RubicBridge {
6
6
  getTrade(demos: Demos, chain: string, payload: BridgeTradePayload): Promise<RPCResponse>;
7
- executeTrade(demos: Demos, chain: string, payload: BridgeTradePayload): Promise<any>;
8
- executeMockTrade(demos: Demos, chain: string, payload: WrappedCrossChainTrade): Promise<any>;
7
+ executeTrade(demos: Demos, chain: string, payload: BridgeTradePayload): Promise<RPCResponse>;
8
+ executeMockTrade(demos: Demos, chain: string, payload: WrappedCrossChainTrade): Promise<RPCResponse>;
9
9
  }
@@ -5,22 +5,132 @@ export interface IKeypair {
5
5
  export default class Enigma {
6
6
  signingKeyPair: IKeypair;
7
7
  mcelieceKeypair: IKeypair;
8
+ ntruKeyPair: IKeypair;
8
9
  private kem;
10
+ private readonly NONCE_SIZE;
9
11
  constructor();
12
+ /**
13
+ * Generates a cryptographically secure random value of specified length
14
+ * @param length The length of the random value in bytes
15
+ * @returns A Buffer containing random bytes
16
+ */
17
+ private generateRandomBytes;
18
+ /**
19
+ * Initializes the cryptographic key pairs for signing and key encapsulation
20
+ * @returns A promise that resolves when initialization is complete
21
+ */
10
22
  init(): Promise<void>;
23
+ /**
24
+ * Signs a message and combines it with the original message
25
+ * @param message The message to sign
26
+ * @param additionalData Optional additional data to include in the signature
27
+ * @returns A promise that resolves to the combined signed message
28
+ */
11
29
  combinedSign(message: string, additionalData?: string): Promise<Uint8Array>;
30
+ /**
31
+ * Verifies a combined signed message
32
+ * @param signed The combined signed message
33
+ * @param publicKey The public key to use for verification
34
+ * @param additionalData Optional additional data that was included in the signature
35
+ * @returns A promise that resolves to the original message if verification succeeds
36
+ */
12
37
  combinedVerify(signed: Uint8Array, publicKey: Uint8Array, additionalData?: string): Promise<Uint8Array>;
38
+ /**
39
+ * Signs a message without combining it with the original message
40
+ * @param message The message to sign
41
+ * @param additionalData Optional additional data to include in the signature
42
+ * @returns A promise that resolves to the signature
43
+ */
13
44
  sign(message: string | Uint8Array, additionalData?: string | Uint8Array): Promise<Uint8Array<ArrayBufferLike>>;
45
+ /**
46
+ * Verifies a signature
47
+ * @param signature The signature to verify
48
+ * @param message The original message
49
+ * @param publicKey The public key to use for verification
50
+ * @param additionalData Optional additional data that was included in the signature
51
+ * @returns A promise that resolves to true if verification succeeds
52
+ */
14
53
  verify(signature: Uint8Array, message: string | Uint8Array, publicKey: Uint8Array, additionalData?: string | Uint8Array): Promise<boolean>;
54
+ /**
55
+ * Exports the signing key pair
56
+ * @param passphrase Optional passphrase to encrypt the keys
57
+ * @returns A promise that resolves to the exported keys
58
+ */
15
59
  exportSigningKeys(passphrase?: string): Promise<any>;
60
+ /**
61
+ * Imports a signing key pair
62
+ * @param storage The exported keys to import
63
+ * @param passphrase Optional passphrase to decrypt the keys
64
+ * @returns A promise that resolves to the imported key pair
65
+ */
16
66
  importSigningKeys(storage: any, passphrase?: string): Promise<any>;
67
+ /**
68
+ * Generates a shared secret using the McEliece key encapsulation mechanism
69
+ * @param peerPublicKey The public key of the peer
70
+ * @returns A promise that resolves to an object containing the secret and encrypted key
71
+ */
17
72
  generateSecrets(peerPublicKey: any): Promise<{
18
73
  secret: any;
19
74
  shared: any;
20
75
  }>;
76
+ /**
77
+ * Derives a shared secret using the McEliece key encapsulation mechanism
78
+ * @param shared The encrypted key
79
+ * @returns A promise that resolves to the derived secret
80
+ */
21
81
  deriveSharedSecret(shared: any): Promise<any>;
82
+ /**
83
+ * Hashes data using SHA-3 (Keccak-256)
84
+ * @param input The data to hash
85
+ * @returns A promise that resolves to the hash as a hex string
86
+ */
22
87
  hash(input: string | Buffer): Promise<string>;
88
+ /**
89
+ * Verifies if a hash matches the hash of the input data
90
+ * @param input The data to hash
91
+ * @param hash The hash to verify against
92
+ * @returns A promise that resolves to true if the hash matches
93
+ */
23
94
  checkHash(input: string | Buffer, hash: string): Promise<boolean>;
24
- encrypt(input: string, key: string): Promise<Buffer>;
25
- decrypt(input: Buffer, key: string): Promise<Buffer>;
95
+ /**
96
+ * Encrypts data using ChaCha20-Poly1305 with a secure random nonce
97
+ * @param input The data to encrypt
98
+ * @param key The encryption key (32 bytes for 256 bits)
99
+ * @returns A Buffer containing the nonce prepended to the ciphertext
100
+ */
101
+ encrypt(input: string | Buffer, key: string | Buffer): Promise<Buffer>;
102
+ /**
103
+ * Decrypts data using ChaCha20-Poly1305
104
+ * @param input The encrypted data with nonce prepended and auth tag appended
105
+ * @param key The decryption key (32 bytes for 256 bits)
106
+ * @returns A Buffer containing the decrypted plaintext
107
+ */
108
+ decrypt(input: Buffer, key: string | Buffer): Promise<Buffer>;
109
+ /**
110
+ * Encrypts data using NTRU
111
+ * @param input The data to encrypt
112
+ * @param publicKey The public key to use for encryption
113
+ * @returns A promise that resolves to an object containing the encrypted data and secret
114
+ */
115
+ ntruEncrypt(input: string | Uint8Array, publicKey: Uint8Array): Promise<{
116
+ encrypted: Uint8Array;
117
+ secret: Uint8Array;
118
+ }>;
119
+ /**
120
+ * Decrypts data using NTRU
121
+ * @param encrypted The encrypted data
122
+ * @param privateKey The private key to use for decryption
123
+ * @returns A promise that resolves to the decrypted data
124
+ */
125
+ ntruDecrypt(encrypted: Uint8Array, privateKey: Uint8Array): Promise<Uint8Array>;
126
+ /**
127
+ * Exports the NTRU key pair
128
+ * @returns The NTRU key pair
129
+ */
130
+ exportNtruKeys(): IKeypair;
131
+ /**
132
+ * Imports an NTRU key pair
133
+ * @param keyPair The key pair to import
134
+ */
135
+ importNtruKeys(keyPair: IKeypair): void;
26
136
  }
@@ -1,7 +1,37 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
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 __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
5
35
  Object.defineProperty(exports, "__esModule", { value: true });
6
36
  /* INFO Enigma - An experimental wrapper for Post Quantum Cryptography in Typescript designed with ease of use in mind
7
37
 
@@ -16,7 +46,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
16
46
 
17
47
  This module incorporates two Post Quantum Cryptography methods:
18
48
  - Rijndael: symmetric encryption algorithm considered the state of the art of its category
19
- - Argon2: quantum-safe hashing algorithm
49
+ - SHA-3: quantum-safe hashing algorithm
20
50
  - McEliece: post-quantum cryptography algorithm that uses a keypair to share secrets between two parties.
21
51
  - Dilithium: post-quantum cryptography algorithm that uses a keypair to sign and verify messages.
22
52
 
@@ -25,7 +55,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
25
55
  is considered to improve robustness, performance, and security when compared to standard AES-256 as AES specification
26
56
  is a subset of Rijdael algorithm itself.
27
57
 
28
- The Argon2 algorithm is a quantum-safe hashing algorithm that is designed to protect against various dehashing attacks.
58
+ The SHA-3 algorithm is a quantum-safe hashing algorithm that is designed to protect against various dehashing attacks.
29
59
  It is used to replace less secure hashing algorithms such as SHA-1, SHA-256, and so on.
30
60
 
31
61
  The McEliece algorithm is used to encrypt and decrypt messages, much like a symmetric classic encryption algorithm.
@@ -45,23 +75,45 @@ Object.defineProperty(exports, "__esModule", { value: true });
45
75
  - I can't find the ntru library developer unfortunately, feel free to contact me if its you
46
76
 
47
77
  */
48
- const argon2_1 = __importDefault(require("argon2"));
49
- // import { superSphincs } from "supersphincs" // Same as above, just replace the two strings
50
78
  const mceliece_nist_1 = require("mceliece-nist");
51
- const rijndael_js_1 = __importDefault(require("rijndael-js"));
52
79
  const superdilithium_1 = require("superdilithium");
80
+ const js_sha3_1 = require("js-sha3");
81
+ const crypto = __importStar(require("crypto"));
82
+ const ntru_1 = require("ntru");
53
83
  // INFO Main class
54
84
  class Enigma {
55
85
  constructor() {
56
86
  this.signingKeyPair = null;
57
87
  this.mcelieceKeypair = null;
88
+ this.ntruKeyPair = null;
58
89
  this.kem = new mceliece_nist_1.McEliece("mceliece8192128");
90
+ // Nonce size for ChaCha20-Poly1305 (12 bytes = 96 bits)
91
+ this.NONCE_SIZE = 12;
59
92
  }
93
+ /**
94
+ * Generates a cryptographically secure random value of specified length
95
+ * @param length The length of the random value in bytes
96
+ * @returns A Buffer containing random bytes
97
+ */
98
+ generateRandomBytes(length) {
99
+ return crypto.randomBytes(length);
100
+ }
101
+ /**
102
+ * Initializes the cryptographic key pairs for signing and key encapsulation
103
+ * @returns A promise that resolves when initialization is complete
104
+ */
60
105
  async init() {
61
106
  this.signingKeyPair = await superdilithium_1.superDilithium.keyPair();
62
107
  this.mcelieceKeypair = this.kem.keypair();
108
+ this.ntruKeyPair = await ntru_1.ntru.keyPair();
63
109
  }
64
110
  /* SECTION Signatures with superDilithium */
111
+ /**
112
+ * Signs a message and combines it with the original message
113
+ * @param message The message to sign
114
+ * @param additionalData Optional additional data to include in the signature
115
+ * @returns A promise that resolves to the combined signed message
116
+ */
65
117
  async combinedSign(message, additionalData = null) {
66
118
  let bufMessage = Buffer.from(message, "utf8");
67
119
  let signed;
@@ -74,6 +126,13 @@ class Enigma {
74
126
  }
75
127
  return signed;
76
128
  }
129
+ /**
130
+ * Verifies a combined signed message
131
+ * @param signed The combined signed message
132
+ * @param publicKey The public key to use for verification
133
+ * @param additionalData Optional additional data that was included in the signature
134
+ * @returns A promise that resolves to the original message if verification succeeds
135
+ */
77
136
  async combinedVerify(signed, publicKey, additionalData = null) {
78
137
  let verifyData;
79
138
  if (additionalData) {
@@ -85,6 +144,12 @@ class Enigma {
85
144
  }
86
145
  return verifyData;
87
146
  }
147
+ /**
148
+ * Signs a message without combining it with the original message
149
+ * @param message The message to sign
150
+ * @param additionalData Optional additional data to include in the signature
151
+ * @returns A promise that resolves to the signature
152
+ */
88
153
  async sign(message, additionalData = null) {
89
154
  if (typeof message === "string") {
90
155
  message = Buffer.from(message, "utf8");
@@ -102,6 +167,14 @@ class Enigma {
102
167
  }
103
168
  return signed;
104
169
  }
170
+ /**
171
+ * Verifies a signature
172
+ * @param signature The signature to verify
173
+ * @param message The original message
174
+ * @param publicKey The public key to use for verification
175
+ * @param additionalData Optional additional data that was included in the signature
176
+ * @returns A promise that resolves to true if verification succeeds
177
+ */
105
178
  async verify(signature, message, publicKey, additionalData = null) {
106
179
  if (typeof message === "string") {
107
180
  message = Buffer.from(message, "utf8");
@@ -119,6 +192,11 @@ class Enigma {
119
192
  }
120
193
  return verified;
121
194
  }
195
+ /**
196
+ * Exports the signing key pair
197
+ * @param passphrase Optional passphrase to encrypt the keys
198
+ * @returns A promise that resolves to the exported keys
199
+ */
122
200
  async exportSigningKeys(passphrase = null) {
123
201
  let storage;
124
202
  if (passphrase) {
@@ -129,6 +207,12 @@ class Enigma {
129
207
  }
130
208
  return storage;
131
209
  }
210
+ /**
211
+ * Imports a signing key pair
212
+ * @param storage The exported keys to import
213
+ * @param passphrase Optional passphrase to decrypt the keys
214
+ * @returns A promise that resolves to the imported key pair
215
+ */
132
216
  async importSigningKeys(storage, passphrase = null) {
133
217
  if (passphrase) {
134
218
  this.signingKeyPair = await superdilithium_1.superDilithium.importKeys(storage, passphrase);
@@ -139,7 +223,11 @@ class Enigma {
139
223
  return this.signingKeyPair;
140
224
  }
141
225
  /* SECTION Keys generation and incapsulation with McEliece */
142
- // Incapsulate a secret with a public key
226
+ /**
227
+ * Generates a shared secret using the McEliece key encapsulation mechanism
228
+ * @param peerPublicKey The public key of the peer
229
+ * @returns A promise that resolves to an object containing the secret and encrypted key
230
+ */
143
231
  async generateSecrets(peerPublicKey) {
144
232
  let { key, encryptedKey } = await this.kem.generateKey(peerPublicKey);
145
233
  let normalizedResult = {
@@ -148,41 +236,169 @@ class Enigma {
148
236
  };
149
237
  return normalizedResult;
150
238
  }
151
- // Decapsulate a secret from a shared secret
239
+ /**
240
+ * Derives a shared secret using the McEliece key encapsulation mechanism
241
+ * @param shared The encrypted key
242
+ * @returns A promise that resolves to the derived secret
243
+ */
152
244
  async deriveSharedSecret(shared) {
153
245
  let secret = await this.kem.decryptKey(this.mcelieceKeypair.privateKey, shared);
154
246
  return secret;
155
247
  }
156
- /* SECTION Hashing with Argon2 */
248
+ /* SECTION Hashing with SHA-3 */
249
+ /**
250
+ * Hashes data using SHA-3 (Keccak-256)
251
+ * @param input The data to hash
252
+ * @returns A promise that resolves to the hash as a hex string
253
+ */
157
254
  async hash(input) {
158
255
  if (typeof input === "string") {
159
256
  input = Buffer.from(input, "utf8");
160
257
  }
161
- let hash = await argon2_1.default.hash(input);
258
+ // Use keccak_256 (SHA-3) for hashing
259
+ // Convert Buffer to hex string for js-sha3
260
+ const hash = (0, js_sha3_1.keccak_256)(input);
162
261
  return hash;
163
262
  }
263
+ /**
264
+ * Verifies if a hash matches the hash of the input data
265
+ * @param input The data to hash
266
+ * @param hash The hash to verify against
267
+ * @returns A promise that resolves to true if the hash matches
268
+ */
164
269
  async checkHash(input, hash) {
165
270
  if (typeof input === "string") {
166
271
  input = Buffer.from(input, "utf8");
167
272
  }
168
- if (await argon2_1.default.verify(hash, input)) {
169
- return true;
170
- }
171
- else {
172
- return false;
173
- }
273
+ // Calculate hash and compare
274
+ const calculatedHash = (0, js_sha3_1.keccak_256)(input);
275
+ return calculatedHash === hash;
174
276
  }
175
- /* SECTION Symmetric encryption and decryption with Rijndael */
277
+ /* SECTION Symmetric encryption and decryption with ChaCha20-Poly1305 */
278
+ /**
279
+ * Encrypts data using ChaCha20-Poly1305 with a secure random nonce
280
+ * @param input The data to encrypt
281
+ * @param key The encryption key (32 bytes for 256 bits)
282
+ * @returns A Buffer containing the nonce prepended to the ciphertext
283
+ */
176
284
  async encrypt(input, key) {
177
- // Key can be 16/24/32 bytes long (128/192/256 bit)
178
- let cipher = new rijndael_js_1.default(key, "cbc");
179
- let ciphertext = Buffer.from(cipher.encrypt(input, "256", "Ut enim ad minim veniam, quis no")); // TODO Custom iv same block size
180
- return ciphertext;
285
+ // Convert key to Buffer if it's a string
286
+ const keyBuffer = typeof key === 'string' ? Buffer.from(key, 'hex') : key;
287
+ // Validate key length - ChaCha20-Poly1305 requires a 32-byte key
288
+ if (keyBuffer.length !== 32) {
289
+ throw new Error("Key must be 32 bytes long for ChaCha20-Poly1305");
290
+ }
291
+ // Generate a secure random nonce
292
+ const nonce = this.generateRandomBytes(this.NONCE_SIZE);
293
+ // Convert input to Buffer if it's a string
294
+ const inputBuffer = typeof input === 'string' ? Buffer.from(input, 'utf8') : input;
295
+ // Create cipher with the key and nonce
296
+ const cipher = crypto.createCipheriv('chacha20-poly1305', keyBuffer, nonce, {
297
+ authTagLength: 16 // 128-bit authentication tag
298
+ });
299
+ // Encrypt the data
300
+ const encrypted = Buffer.concat([
301
+ cipher.update(inputBuffer),
302
+ cipher.final()
303
+ ]);
304
+ // Get the authentication tag
305
+ const authTag = cipher.getAuthTag();
306
+ // Prepend the nonce and append the auth tag to the ciphertext
307
+ return Buffer.concat([nonce, encrypted, authTag]);
181
308
  }
309
+ /**
310
+ * Decrypts data using ChaCha20-Poly1305
311
+ * @param input The encrypted data with nonce prepended and auth tag appended
312
+ * @param key The decryption key (32 bytes for 256 bits)
313
+ * @returns A Buffer containing the decrypted plaintext
314
+ */
182
315
  async decrypt(input, key) {
183
- let cipher = new rijndael_js_1.default(key, "cbc");
184
- let plainbuffer = Buffer.from(cipher.decrypt(input, "256", "Ut enim ad minim veniam, quis no"));
185
- return plainbuffer;
316
+ // Convert key to Buffer if it's a string
317
+ const keyBuffer = typeof key === 'string' ? Buffer.from(key, 'hex') : key;
318
+ // Validate key length - ChaCha20-Poly1305 requires a 32-byte key
319
+ if (keyBuffer.length !== 32) {
320
+ throw new Error("Key must be 32 bytes long for ChaCha20-Poly1305");
321
+ }
322
+ // Extract the nonce, ciphertext, and auth tag
323
+ const nonce = input.subarray(0, this.NONCE_SIZE);
324
+ const authTag = input.subarray(input.length - 16); // 16 bytes for auth tag
325
+ const ciphertext = input.subarray(this.NONCE_SIZE, input.length - 16);
326
+ // Create decipher with the key and nonce
327
+ const decipher = crypto.createDecipheriv('chacha20-poly1305', keyBuffer, nonce, {
328
+ authTagLength: 16 // 128-bit authentication tag
329
+ });
330
+ // Set the authentication tag
331
+ decipher.setAuthTag(authTag);
332
+ // Decrypt the data
333
+ const decrypted = Buffer.concat([
334
+ decipher.update(ciphertext),
335
+ decipher.final()
336
+ ]);
337
+ return decrypted;
338
+ }
339
+ /* SECTION NTRU Encryption and Decryption */
340
+ /**
341
+ * Encrypts data using NTRU
342
+ * @param input The data to encrypt
343
+ * @param publicKey The public key to use for encryption
344
+ * @returns A promise that resolves to an object containing the encrypted data and secret
345
+ */
346
+ async ntruEncrypt(input, publicKey) {
347
+ // Convert input to Uint8Array if it's a string
348
+ const inputData = typeof input === 'string' ? new TextEncoder().encode(input) : input;
349
+ // Validate public key length
350
+ const publicKeyBytes = await ntru_1.ntru.publicKeyBytes;
351
+ if (publicKey.length !== publicKeyBytes) {
352
+ throw new Error(`Public key must be ${publicKeyBytes} bytes long for NTRU`);
353
+ }
354
+ // Encrypt the data using NTRU
355
+ const { cyphertext, secret } = await ntru_1.ntru.encrypt(publicKey);
356
+ // Combine the encrypted data with the input
357
+ const combined = new Uint8Array(cyphertext.length + inputData.length);
358
+ combined.set(cyphertext, 0);
359
+ combined.set(inputData, cyphertext.length);
360
+ return {
361
+ encrypted: combined,
362
+ secret: secret
363
+ };
364
+ }
365
+ /**
366
+ * Decrypts data using NTRU
367
+ * @param encrypted The encrypted data
368
+ * @param privateKey The private key to use for decryption
369
+ * @returns A promise that resolves to the decrypted data
370
+ */
371
+ async ntruDecrypt(encrypted, privateKey) {
372
+ // Validate private key length
373
+ const privateKeyBytes = await ntru_1.ntru.privateKeyBytes;
374
+ if (privateKey.length !== privateKeyBytes) {
375
+ throw new Error(`Private key must be ${privateKeyBytes} bytes long for NTRU`);
376
+ }
377
+ // Extract the cyphertext from the combined data
378
+ const cyphertextBytes = await ntru_1.ntru.cyphertextBytes;
379
+ const cyphertext = encrypted.subarray(0, cyphertextBytes);
380
+ const data = encrypted.subarray(cyphertextBytes);
381
+ // Decrypt the data using NTRU
382
+ const secret = await ntru_1.ntru.decrypt(cyphertext, privateKey);
383
+ // Return the decrypted data
384
+ return data;
385
+ }
386
+ /**
387
+ * Exports the NTRU key pair
388
+ * @returns The NTRU key pair
389
+ */
390
+ exportNtruKeys() {
391
+ if (!this.ntruKeyPair) {
392
+ throw new Error("NTRU key pair not initialized. Call init() first.");
393
+ }
394
+ return this.ntruKeyPair;
395
+ }
396
+ /**
397
+ * Imports an NTRU key pair
398
+ * @param keyPair The key pair to import
399
+ */
400
+ importNtruKeys(keyPair) {
401
+ this.ntruKeyPair = keyPair;
186
402
  }
187
403
  }
188
404
  exports.default = Enigma;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/encryption/PQC/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/encryption/PQC/index.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,5 @@
1
1
  export * as FHE from './FHE';
2
2
  export * as PQC from './PQC';
3
3
  export * as zK from './zK';
4
+ export { Cryptography } from './Cryptography';
5
+ export { Hashing } from './Hashing';
@@ -33,8 +33,12 @@ var __importStar = (this && this.__importStar) || (function () {
33
33
  };
34
34
  })();
35
35
  Object.defineProperty(exports, "__esModule", { value: true });
36
- exports.zK = exports.PQC = exports.FHE = void 0;
36
+ exports.Hashing = exports.Cryptography = exports.zK = exports.PQC = exports.FHE = void 0;
37
37
  exports.FHE = __importStar(require("./FHE"));
38
38
  exports.PQC = __importStar(require("./PQC"));
39
39
  exports.zK = __importStar(require("./zK"));
40
+ var Cryptography_1 = require("./Cryptography");
41
+ Object.defineProperty(exports, "Cryptography", { enumerable: true, get: function () { return Cryptography_1.Cryptography; } });
42
+ var Hashing_1 = require("./Hashing");
43
+ Object.defineProperty(exports, "Hashing", { enumerable: true, get: function () { return Hashing_1.Hashing; } });
40
44
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/encryption/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6CAA4B;AAC5B,6CAA4B;AAC5B,2CAA0B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/encryption/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6CAA4B;AAC5B,6CAA4B;AAC5B,2CAA0B;AAE1B,+CAA6C;AAApC,4GAAA,YAAY,OAAA;AACrB,qCAAmC;AAA1B,kGAAA,OAAO,OAAA"}
@@ -3,6 +3,7 @@ import { ECPairInterface } from "ecpair";
3
3
  import { DefaultChain } from "./types/defaultChain";
4
4
  import { IPayParams } from "./types/interfaces";
5
5
  export declare class BTC extends DefaultChain {
6
+ static networks: typeof bitcoin.networks;
6
7
  provider: string;
7
8
  network: bitcoin.Network;
8
9
  wallet: ECPairInterface;
@@ -11,6 +12,7 @@ export declare class BTC extends DefaultChain {
11
12
  private lastUsedUtxos;
12
13
  private usedChangeAddresses;
13
14
  constructor(rpc_url: string, network?: bitcoin.Network);
15
+ static create<T extends BTC>(this: new (rpc_url: string, network: bitcoin.Network) => T, rpc_url: string, network?: bitcoin.Network): Promise<T>;
14
16
  connect(): Promise<boolean>;
15
17
  /**
16
18
  * Generate a private key for the BTC chain
@@ -39,13 +39,13 @@ Object.defineProperty(exports, "__esModule", { value: true });
39
39
  exports.BTC = void 0;
40
40
  const bitcoin = __importStar(require("bitcoinjs-lib"));
41
41
  const bip32_1 = require("bip32");
42
- const ecc = __importStar(require("tiny-secp256k1"));
42
+ const secp256k1_1 = __importDefault(require("@bitcoinerlab/secp256k1"));
43
43
  const utils_1 = require("./utils");
44
44
  const axios_1 = __importDefault(require("axios"));
45
45
  const ecpair_1 = require("ecpair");
46
46
  const defaultChain_1 = require("./types/defaultChain");
47
- const ECPair = (0, ecpair_1.ECPairFactory)(ecc);
48
- const bip32 = (0, bip32_1.BIP32Factory)(ecc);
47
+ const ECPair = (0, ecpair_1.ECPairFactory)(secp256k1_1.default);
48
+ const bip32 = (0, bip32_1.BIP32Factory)(secp256k1_1.default);
49
49
  const BITCOIN_CONSTANTS = {
50
50
  DUST_LIMIT_P2WPKH: 294,
51
51
  BASE_TX_SIZE: 10,
@@ -57,6 +57,7 @@ const BITCOIN_CONSTANTS = {
57
57
  DEFAULT_NETWORK: bitcoin.networks.testnet,
58
58
  MAX_EMPTY: 5,
59
59
  };
60
+ // @ts-expect-error
60
61
  class BTC extends defaultChain_1.DefaultChain {
61
62
  constructor(rpc_url, network = BITCOIN_CONSTANTS.DEFAULT_NETWORK) {
62
63
  super(rpc_url);
@@ -67,6 +68,11 @@ class BTC extends defaultChain_1.DefaultChain {
67
68
  this.provider = rpc_url;
68
69
  this.network = network;
69
70
  }
71
+ static async create(rpc_url, network = BITCOIN_CONSTANTS.DEFAULT_NETWORK) {
72
+ const instance = new this(rpc_url, network);
73
+ await instance.connect();
74
+ return instance;
75
+ }
70
76
  async connect() {
71
77
  try {
72
78
  const url = this.getApiUrl("/blocks/tip/height");
@@ -369,4 +375,5 @@ class BTC extends defaultChain_1.DefaultChain {
369
375
  }
370
376
  }
371
377
  exports.BTC = BTC;
378
+ BTC.networks = bitcoin.networks;
372
379
  //# sourceMappingURL=btc.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"btc.js","sourceRoot":"","sources":["../../../../src/multichain/core/btc.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"btc.js","sourceRoot":"","sources":["../../../../src/multichain/core/btc.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
+ import * as bitcoin from "bitcoinjs-lib";
1
2
  import { IDefaultChainWeb, BTC as BTCCoreSDK } from '../core';
2
3
  export declare class BTC extends BTCCoreSDK implements IDefaultChainWeb {
3
- constructor(rpc_url: string);
4
+ constructor(rpc_url: string, network: bitcoin.Network);
4
5
  }
@@ -3,8 +3,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.BTC = void 0;
4
4
  const core_1 = require("../core");
5
5
  class BTC extends core_1.BTC {
6
- constructor(rpc_url) {
7
- super(rpc_url);
6
+ constructor(rpc_url, network) {
7
+ super(rpc_url, network);
8
8
  }
9
9
  }
10
10
  exports.BTC = BTC;
@@ -1 +1 @@
1
- {"version":3,"file":"btc.js","sourceRoot":"","sources":["../../../../src/multichain/websdk/btc.ts"],"names":[],"mappings":";;;AAAA,4CAAuE;AAEvE,MAAa,GAAI,SAAQ,UAAU;IAC/B,YAAY,OAAe;QACvB,KAAK,CAAC,OAAO,CAAC,CAAA;IAClB,CAAC;CAGJ;AAND,kBAMC"}
1
+ {"version":3,"file":"btc.js","sourceRoot":"","sources":["../../../../src/multichain/websdk/btc.ts"],"names":[],"mappings":";;;AACA,4CAAuE;AAEvE,MAAa,GAAI,SAAQ,UAAU;IAC/B,YAAY,OAAe,EAAE,OAAwB;QACjD,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;IAC3B,CAAC;CAGJ;AAND,kBAMC"}
@@ -13,6 +13,6 @@ export declare class SOLANA extends SolanaCore {
13
13
  * @returns The wallet object
14
14
  */
15
15
  connectWallet(privateKey?: string): Promise<Keypair | PhantomProvider>;
16
- signTransactions(transactions: VersionedTransaction[], options?: SolanaSignTxOptions): Promise<Uint8Array<ArrayBufferLike>[] | Buffer<ArrayBufferLike>[]>;
16
+ signTransactions(transactions: VersionedTransaction[], options?: SolanaSignTxOptions): Promise<Buffer<ArrayBufferLike>[] | Uint8Array<ArrayBufferLike>[]>;
17
17
  disconnect(): Promise<boolean>;
18
18
  }
@@ -3,7 +3,7 @@ import * as skeletons from "./utils/skeletons";
3
3
  import { DemosWebAuth } from "./DemosWebAuth";
4
4
  import { Block, IPeer, RawTransaction, Transaction, XMScript } from "../types";
5
5
  import { AddressInfo } from "../types/blockchain/address";
6
- import { RPCRequest, RPCResponseWithValidityData } from "../types/communication/rpc";
6
+ import { RPCRequest, RPCResponse, RPCResponseWithValidityData } from "../types/communication/rpc";
7
7
  import { l2psCalls } from "../l2ps";
8
8
  import { IKeyPair } from "./types/KeyPair";
9
9
  /**
@@ -92,7 +92,7 @@ export declare class Demos {
92
92
  * @returns The signed transaction
93
93
  */
94
94
  sign(raw_tx: Transaction): Promise<Transaction>;
95
- rpcCall(request: RPCRequest, isAuthenticated?: boolean, retries?: number, sleepTime?: number, allowedErrorCodes?: number[]): any;
95
+ rpcCall(request: RPCRequest, isAuthenticated?: boolean, retries?: number, sleepTime?: number, allowedErrorCodes?: number[]): Promise<RPCResponse>;
96
96
  call(method: any, message: any, data?: any, extra?: any, sender?: any, receiver?: any): Promise<any>;
97
97
  /**
98
98
  * Performs a nodeCall on the connected RPC.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kynesyslabs/demosdk",
3
- "version": "2.1.12",
3
+ "version": "2.1.13",
4
4
  "main": "build/index.js",
5
5
  "types": "build/index.d.ts",
6
6
  "author": "Kynesys Labs",
@@ -26,7 +26,7 @@
26
26
  "scripts": {
27
27
  "build": "rm -rf build && tsc --skipLibCheck && resolve-tspaths && mv build/src/* build/ && rm -rf build/src",
28
28
  "publish": "yarn npm publish",
29
- "typedoc": "typedoc --out docs src/index.ts --excludeExternals --excludePrivate --excludeProtected",
29
+ "typedoc": "typedoc",
30
30
  "test:multichain": "rm -rf build && jest --testMatch '**/tests/**/{coin,evm}*.ts' --testPathIgnorePatterns **/tests/**/chainProvider* **/tests/utils/* **/tests/**/template* --verbose",
31
31
  "test:tx": "rm -rf build && jest --testMatch '**/tests/multichain**/fulltx*.ts' --testPathIgnorePatterns **/tests/**/chainProvider* **/tests/utils/* **/tests/**/template* --verbose",
32
32
  "test:demoswork": "rm -rf build && jest --testMatch '**/tests/**/demoswork*.ts' --testPathIgnorePatterns **/tests/**/chainProvider* **/tests/utils/* **/tests/**/template* --verbose",
@@ -37,9 +37,12 @@
37
37
  "test:web2": "rm -rf build && jest --testMatch '**/tests/web2*.ts' --testPathIgnorePatterns **/tests/**/chainProvider* **/tests/utils/* **/tests/**/template* --verbose",
38
38
  "test:demos": "rm -rf build && jest --testMatch '**/tests/communication/demos.spec.ts' --testPathIgnorePatterns **/tests/**/chainProvider* **/tests/utils/* **/tests/**/template* --verbose",
39
39
  "test:rubic-service": "rm -rf build && jest --testMatch '**/tests/**/rubic*.ts' --testPathIgnorePatterns **/tests/**/chainProvider* **/tests/utils/* **/tests/**/template* --verbose",
40
- "test:btc": "rm -rf build && jest --testMatch '**/tests/multichain**/bitcoin*.ts' --testPathIgnorePatterns **/tests/**/chainProvider* **/tests/utils/* **/tests/**/template* --verbose"
40
+ "test:btc": "rm -rf build && jest --testMatch '**/tests/multichain**/bitcoin*.ts' --testPathIgnorePatterns **/tests/**/chainProvider* **/tests/utils/* **/tests/**/template* --verbose",
41
+ "test:pqc": "rm -rf build && jest --testMatch '**/tests/encryption/pqc*.ts' --verbose",
42
+ "test:pcq": "yarn test:pqc"
41
43
  },
42
44
  "dependencies": {
45
+ "@bitcoinerlab/secp256k1": "^1.2.0",
43
46
  "@cosmjs/proto-signing": "^0.32.3",
44
47
  "@cosmjs/stargate": "^0.32.3",
45
48
  "@metaplex-foundation/js": "^0.20.1",
@@ -56,7 +59,6 @@
56
59
  "@ton/crypto": "^3.2.0",
57
60
  "@ton/ton": "^13.11.2",
58
61
  "@types/rijndael-js": "^1.0.2",
59
- "argon2": "^0.40.1",
60
62
  "axios": "^1.7.4",
61
63
  "big-integer": "^1.6.52",
62
64
  "bignumber.js": "^9.1.2",
@@ -67,19 +69,23 @@
67
69
  "dotenv": "^16.4.7",
68
70
  "ecpair": "^3.0.0",
69
71
  "ethers": "^6.11.1",
72
+ "js-sha3": "^0.9.3",
70
73
  "libsodium-wrappers-sumo": "^0.7.15",
71
74
  "lodash": "^4.17.21",
72
75
  "mceliece-nist": "^4.0.1",
76
+ "mlkem": "^2.3.1",
73
77
  "near-api-js": "^4.0.4",
74
78
  "node-forge": "^1.3.1",
75
79
  "node-seal": "^5.1.3",
80
+ "ntru": "^4.0.4",
81
+ "pqcrypto": "^1.0.1",
76
82
  "protobufjs": "^7.4.0",
77
83
  "rijndael-js": "^2.0.0",
78
84
  "ripple-keypairs": "^2.0.0",
79
85
  "rubic-sdk": "^5.52.6",
80
86
  "socket.io-client": "^4.7.2",
87
+ "sphincs": "^3.0.4",
81
88
  "superdilithium": "^2.0.6",
82
- "tiny-secp256k1": "^2.2.3",
83
89
  "tweetnacl": "^1.0.3",
84
90
  "tweetnacl-util": "^0.15.1",
85
91
  "twitter-api-sdk": "^1.2.1",