koilib 2.7.0 → 2.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -109,7 +109,6 @@ class Signer {
109
109
  }
110
110
  else {
111
111
  this.serializer = new Serializer_1.Serializer(protocol_proto_json_1.default, {
112
- defaultTypeName: "active_transaction_data",
113
112
  bytesConversion: false,
114
113
  });
115
114
  }
@@ -211,15 +210,12 @@ class Signer {
211
210
  }
212
211
  }
213
212
  /**
214
- * Function to sign a transaction. It's important to remark that
215
- * the transaction parameter is modified inside this function.
216
- * @param tx - Unsigned transaction
217
- * @returns
213
+ * Function to sign a hash value. It returns the signature encoded
214
+ * in base64. The signature is in compact format with the
215
+ * recovery byte
216
+ * @param hash Hash value. Also known as digest
218
217
  */
219
- async signTransaction(tx) {
220
- if (!tx.active)
221
- throw new Error("Active data is not defined");
222
- const hash = (0, sha256_1.sha256)((0, utils_1.decodeBase64)(tx.active));
218
+ async signHash(hash) {
223
219
  const [compSignature, recovery] = await secp.sign(hash, this.privateKey, {
224
220
  recovered: true,
225
221
  canonical: true,
@@ -228,11 +224,41 @@ class Signer {
228
224
  const compactSignature = new Uint8Array(65);
229
225
  compactSignature.set([recovery + 31], 0);
230
226
  compactSignature.set(compSignature, 1);
231
- tx.signature_data = (0, utils_1.encodeBase64)(compactSignature);
232
- const multihash = `0x1220${(0, utils_1.toHexString)(hash)}`; // 12: code sha2-256. 20: length (32 bytes)
233
- tx.id = multihash;
227
+ return (0, utils_1.encodeBase64)(compactSignature);
228
+ }
229
+ /**
230
+ * Function to sign a transaction. It's important to remark that
231
+ * the transaction parameter is modified inside this function.
232
+ * @param tx - Unsigned transaction
233
+ */
234
+ async signTransaction(tx) {
235
+ if (!tx.active)
236
+ throw new Error("Active data is not defined");
237
+ const hash = (0, sha256_1.sha256)((0, utils_1.decodeBase64)(tx.active));
238
+ tx.signature_data = await this.signHash(hash);
239
+ // multihash 0x1220. 12: code sha2-256. 20: length (32 bytes)
240
+ tx.id = `0x1220${(0, utils_1.toHexString)(hash)}`;
234
241
  return tx;
235
242
  }
243
+ /**
244
+ * Function to sign a block for federated consensus. That is,
245
+ * just the ecdsa signature. For other algorithms, like PoW,
246
+ * you have to sign the block and then process the signature
247
+ * to add the extra data (nonce in the case of PoW).
248
+ * @param block - Unsigned block
249
+ */
250
+ async signBlock(block) {
251
+ const activeBytes = (0, utils_1.decodeBase64)(block.active);
252
+ const headerBytes = await this.serializer.serialize(block.header, "block_header", { bytesConversion: true });
253
+ const headerActiveBytes = new Uint8Array(headerBytes.length + activeBytes.length);
254
+ headerActiveBytes.set(headerBytes, 0);
255
+ headerActiveBytes.set(activeBytes, headerBytes.length);
256
+ const hash = (0, sha256_1.sha256)(headerActiveBytes);
257
+ block.signature_data = await this.signHash(hash);
258
+ // multihash 0x1220. 12: code sha2-256. 20: length (32 bytes)
259
+ block.id = `0x1220${(0, utils_1.toHexString)(hash)}`;
260
+ return block;
261
+ }
236
262
  /**
237
263
  * Function to sign and send a transaction. It internally uses
238
264
  * [[Provider.sendTransaction]]
@@ -298,7 +324,7 @@ class Signer {
298
324
  * defaultTypeName: "pow_signature_data",
299
325
  * });
300
326
  *
301
- * const signer = await Signer.recoverPublicKey(block, {
327
+ * const signer = await signer.recoverPublicKey(block, {
302
328
  * transformSignature: async (signatureData) => {
303
329
  * const powSignatureData = await serializer.deserialize(signatureData);
304
330
  * return powSignatureData.recoverable_signature;
@@ -306,7 +332,7 @@ class Signer {
306
332
  * });
307
333
  * ```
308
334
  */
309
- static async recoverPublicKey(txOrBlock, opts) {
335
+ async recoverPublicKey(txOrBlock, opts) {
310
336
  if (!txOrBlock.active)
311
337
  throw new Error("active is not defined");
312
338
  if (!txOrBlock.signature_data)
@@ -319,7 +345,20 @@ class Signer {
319
345
  if (opts && typeof opts.compressed !== "undefined") {
320
346
  compressed = opts.compressed;
321
347
  }
322
- const hash = (0, sha256_1.sha256)((0, utils_1.decodeBase64)(txOrBlock.active));
348
+ const block = txOrBlock;
349
+ let hash;
350
+ const activeBytes = (0, utils_1.decodeBase64)(block.active);
351
+ if (block.header) {
352
+ const headerBytes = await this.serializer.serialize(block.header, "block_header", { bytesConversion: true });
353
+ const headerActiveBytes = new Uint8Array(headerBytes.length + activeBytes.length);
354
+ headerActiveBytes.set(headerBytes, 0);
355
+ headerActiveBytes.set(activeBytes, headerBytes.length);
356
+ hash = (0, sha256_1.sha256)(headerActiveBytes);
357
+ }
358
+ else {
359
+ // transaction
360
+ hash = (0, sha256_1.sha256)(activeBytes);
361
+ }
323
362
  const compactSignatureHex = (0, utils_1.toHexString)((0, utils_1.decodeBase64)(signatureData));
324
363
  const recovery = Number(`0x${compactSignatureHex.slice(0, 2)}`) - 31;
325
364
  const rHex = compactSignatureHex.slice(2, 66);
@@ -340,7 +379,7 @@ class Signer {
340
379
  * The output format can be compressed (default) or uncompressed.
341
380
  * @example
342
381
  * ```ts
343
- * const publicKey = await Signer.recoverAddress(tx);
382
+ * const publicKey = await signer.recoverAddress(tx);
344
383
  * ```
345
384
  *
346
385
  * If the signature data contains more data, like in the
@@ -374,7 +413,7 @@ class Signer {
374
413
  * defaultTypeName: "pow_signature_data",
375
414
  * });
376
415
  *
377
- * const signer = await Signer.recoverAddress(block, {
416
+ * const signer = await signer.recoverAddress(block, {
378
417
  * transformSignature: async (signatureData) => {
379
418
  * const powSignatureData = await serializer.deserialize(signatureData);
380
419
  * return powSignatureData.recoverable_signature;
@@ -382,8 +421,8 @@ class Signer {
382
421
  * });
383
422
  * ```
384
423
  */
385
- static async recoverAddress(txOrBlock, opts) {
386
- const publicKey = await Signer.recoverPublicKey(txOrBlock, opts);
424
+ async recoverAddress(txOrBlock, opts) {
425
+ const publicKey = await this.recoverPublicKey(txOrBlock, opts);
387
426
  return (0, utils_1.bitcoinAddress)((0, utils_1.toUint8Array)(publicKey));
388
427
  }
389
428
  /**
@@ -410,7 +449,7 @@ class Signer {
410
449
  nonce,
411
450
  operations,
412
451
  };
413
- const buffer = await this.serializer.serialize(activeData2);
452
+ const buffer = await this.serializer.serialize(activeData2, "active_transaction_data");
414
453
  return {
415
454
  active: (0, utils_1.encodeBase64)(buffer),
416
455
  };
@@ -421,7 +460,7 @@ class Signer {
421
460
  async decodeTransaction(tx) {
422
461
  if (!tx.active)
423
462
  throw new Error("Active data is not defined");
424
- return this.serializer.deserialize(tx.active);
463
+ return this.serializer.deserialize(tx.active, "active_transaction_data");
425
464
  }
426
465
  }
427
466
  exports.Signer = Signer;
@@ -1 +1 @@
1
- {"version":3,"file":"Signer.js","sourceRoot":"","sources":["../../src/Signer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Signer.js","sourceRoot":"","sources":["../../src/Signer.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "koilib",
3
- "version": "2.7.0",
3
+ "version": "2.8.0",
4
4
  "description": "JS Koinos Library",
5
5
  "author": "Julian Gonzalez",
6
6
  "repository": {