@chainvue/verus-sdk 0.6.1 → 0.6.3
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.
- package/dist/bundle.js +166 -102
- package/dist/currency/index.d.ts.map +1 -1
- package/dist/currency/index.js +26 -1
- package/dist/currency/index.js.map +1 -1
- package/dist/identity/index.d.ts.map +1 -1
- package/dist/identity/index.js +64 -6
- package/dist/identity/index.js.map +1 -1
- package/dist/signing/index.d.ts +12 -0
- package/dist/signing/index.d.ts.map +1 -1
- package/dist/signing/index.js +16 -0
- package/dist/signing/index.js.map +1 -1
- package/package.json +1 -1
package/dist/bundle.js
CHANGED
|
@@ -10364,7 +10364,7 @@ var require_transaction = __commonJS({
|
|
|
10364
10364
|
return sum + varSliceSize(witness);
|
|
10365
10365
|
}, 0);
|
|
10366
10366
|
}
|
|
10367
|
-
function
|
|
10367
|
+
function Transaction5(network) {
|
|
10368
10368
|
if (network === void 0) {
|
|
10369
10369
|
network = networks3.bitcoin;
|
|
10370
10370
|
}
|
|
@@ -10387,15 +10387,15 @@ var require_transaction = __commonJS({
|
|
|
10387
10387
|
this.extraPayload = Buffer2.alloc(0);
|
|
10388
10388
|
}
|
|
10389
10389
|
}
|
|
10390
|
-
|
|
10391
|
-
|
|
10392
|
-
|
|
10393
|
-
|
|
10394
|
-
|
|
10395
|
-
|
|
10396
|
-
|
|
10397
|
-
|
|
10398
|
-
|
|
10390
|
+
Transaction5.DEFAULT_SEQUENCE = 4294967295;
|
|
10391
|
+
Transaction5.SIGHASH_ALL = 1;
|
|
10392
|
+
Transaction5.SIGHASH_NONE = 2;
|
|
10393
|
+
Transaction5.SIGHASH_SINGLE = 3;
|
|
10394
|
+
Transaction5.SIGHASH_ANYONECANPAY = 128;
|
|
10395
|
+
Transaction5.SIGHASH_FORKID = 64;
|
|
10396
|
+
Transaction5.SIGHASH_BITCOINCASHBIP143 = Transaction5.SIGHASH_FORKID;
|
|
10397
|
+
Transaction5.ADVANCED_TRANSACTION_MARKER = 0;
|
|
10398
|
+
Transaction5.ADVANCED_TRANSACTION_FLAG = 1;
|
|
10399
10399
|
var EMPTY_SCRIPT = Buffer2.allocUnsafe(0);
|
|
10400
10400
|
var EMPTY_WITNESS = [];
|
|
10401
10401
|
var ZERO = Buffer2.from("0000000000000000000000000000000000000000000000000000000000000000", "hex");
|
|
@@ -10406,19 +10406,19 @@ var require_transaction = __commonJS({
|
|
|
10406
10406
|
script: EMPTY_SCRIPT,
|
|
10407
10407
|
valueBuffer: VALUE_UINT64_MAX
|
|
10408
10408
|
};
|
|
10409
|
-
|
|
10410
|
-
|
|
10411
|
-
|
|
10412
|
-
|
|
10413
|
-
|
|
10414
|
-
|
|
10415
|
-
|
|
10416
|
-
|
|
10409
|
+
Transaction5.DASH_NORMAL = 0;
|
|
10410
|
+
Transaction5.DASH_PROVIDER_REGISTER = 1;
|
|
10411
|
+
Transaction5.DASH_PROVIDER_UPDATE_SERVICE = 2;
|
|
10412
|
+
Transaction5.DASH_PROVIDER_UPDATE_REGISTRAR = 3;
|
|
10413
|
+
Transaction5.DASH_PROVIDER_UPDATE_REVOKE = 4;
|
|
10414
|
+
Transaction5.DASH_COINBASE = 5;
|
|
10415
|
+
Transaction5.DASH_QUORUM_COMMITMENT = 6;
|
|
10416
|
+
Transaction5.fromBuffer = function(buffer, network, __noStrict) {
|
|
10417
10417
|
if (network === void 0) {
|
|
10418
10418
|
network = networks3.bitcoin;
|
|
10419
10419
|
}
|
|
10420
10420
|
var bufferReader = new BufferReader(buffer);
|
|
10421
|
-
var tx = new
|
|
10421
|
+
var tx = new Transaction5(network);
|
|
10422
10422
|
tx.version = bufferReader.readInt32();
|
|
10423
10423
|
if (coins.isZcashCompatible(network)) {
|
|
10424
10424
|
tx.overwintered = tx.version >>> 31;
|
|
@@ -10431,14 +10431,14 @@ var require_transaction = __commonJS({
|
|
|
10431
10431
|
if (coins.isDash(network)) {
|
|
10432
10432
|
tx.type = tx.version >> 16;
|
|
10433
10433
|
tx.version = tx.version & 65535;
|
|
10434
|
-
if (tx.version === 3 && (tx.type <
|
|
10434
|
+
if (tx.version === 3 && (tx.type < Transaction5.DASH_NORMAL || tx.type > Transaction5.DASH_QUORUM_COMMITMENT)) {
|
|
10435
10435
|
throw new Error("Unsupported Dash transaction type");
|
|
10436
10436
|
}
|
|
10437
10437
|
}
|
|
10438
10438
|
var marker = bufferReader.readUInt8();
|
|
10439
10439
|
var flag = bufferReader.readUInt8();
|
|
10440
10440
|
var hasWitnesses = false;
|
|
10441
|
-
if (marker ===
|
|
10441
|
+
if (marker === Transaction5.ADVANCED_TRANSACTION_MARKER && flag === Transaction5.ADVANCED_TRANSACTION_FLAG && !coins.isZcashCompatible(network)) {
|
|
10442
10442
|
hasWitnesses = true;
|
|
10443
10443
|
} else {
|
|
10444
10444
|
bufferReader.offset -= 2;
|
|
@@ -10506,10 +10506,10 @@ var require_transaction = __commonJS({
|
|
|
10506
10506
|
throw new Error("Transaction has unexpected data");
|
|
10507
10507
|
return tx;
|
|
10508
10508
|
};
|
|
10509
|
-
|
|
10510
|
-
return
|
|
10509
|
+
Transaction5.fromHex = function(hex, network) {
|
|
10510
|
+
return Transaction5.fromBuffer(Buffer2.from(hex, "hex"), network);
|
|
10511
10511
|
};
|
|
10512
|
-
|
|
10512
|
+
Transaction5.isCoinbaseHash = function(buffer) {
|
|
10513
10513
|
typeforce(types.Hash256bit, buffer);
|
|
10514
10514
|
for (var i = 0; i < 32; ++i) {
|
|
10515
10515
|
if (buffer[i] !== 0)
|
|
@@ -10517,28 +10517,28 @@ var require_transaction = __commonJS({
|
|
|
10517
10517
|
}
|
|
10518
10518
|
return true;
|
|
10519
10519
|
};
|
|
10520
|
-
|
|
10520
|
+
Transaction5.prototype.isSaplingCompatible = function() {
|
|
10521
10521
|
return coins.isZcashCompatible(this.network) && this.version >= zcashVersion.SAPLING;
|
|
10522
10522
|
};
|
|
10523
|
-
|
|
10523
|
+
Transaction5.prototype.isOverwinterCompatible = function() {
|
|
10524
10524
|
return coins.isZcashCompatible(this.network) && this.version >= zcashVersion.OVERWINTER;
|
|
10525
10525
|
};
|
|
10526
|
-
|
|
10526
|
+
Transaction5.prototype.supportsJoinSplits = function() {
|
|
10527
10527
|
return coins.isZcashCompatible(this.network) && this.version >= zcashVersion.JOINSPLITS_SUPPORT;
|
|
10528
10528
|
};
|
|
10529
|
-
|
|
10529
|
+
Transaction5.prototype.versionSupportsDashSpecialTransactions = function() {
|
|
10530
10530
|
return coins.isDash(this.network) && this.version >= 3;
|
|
10531
10531
|
};
|
|
10532
|
-
|
|
10533
|
-
return this.versionSupportsDashSpecialTransactions() && this.type !==
|
|
10532
|
+
Transaction5.prototype.isDashSpecialTransaction = function() {
|
|
10533
|
+
return this.versionSupportsDashSpecialTransactions() && this.type !== Transaction5.DASH_NORMAL;
|
|
10534
10534
|
};
|
|
10535
|
-
|
|
10536
|
-
return this.ins.length === 1 &&
|
|
10535
|
+
Transaction5.prototype.isCoinbase = function() {
|
|
10536
|
+
return this.ins.length === 1 && Transaction5.isCoinbaseHash(this.ins[0].hash);
|
|
10537
10537
|
};
|
|
10538
|
-
|
|
10538
|
+
Transaction5.prototype.addInput = function(hash, index, sequence, scriptSig) {
|
|
10539
10539
|
typeforce(types.tuple(types.Hash256bit, types.UInt32, types.maybe(types.UInt32), types.maybe(types.Buffer)), arguments);
|
|
10540
10540
|
if (types.Null(sequence)) {
|
|
10541
|
-
sequence =
|
|
10541
|
+
sequence = Transaction5.DEFAULT_SEQUENCE;
|
|
10542
10542
|
}
|
|
10543
10543
|
return this.ins.push({
|
|
10544
10544
|
hash,
|
|
@@ -10548,30 +10548,30 @@ var require_transaction = __commonJS({
|
|
|
10548
10548
|
witness: EMPTY_WITNESS
|
|
10549
10549
|
}) - 1;
|
|
10550
10550
|
};
|
|
10551
|
-
|
|
10551
|
+
Transaction5.prototype.addOutput = function(scriptPubKey, value) {
|
|
10552
10552
|
typeforce(types.tuple(types.Buffer, types.Satoshi), arguments);
|
|
10553
10553
|
return this.outs.push({
|
|
10554
10554
|
script: scriptPubKey,
|
|
10555
10555
|
value
|
|
10556
10556
|
}) - 1;
|
|
10557
10557
|
};
|
|
10558
|
-
|
|
10558
|
+
Transaction5.prototype.hasWitnesses = function() {
|
|
10559
10559
|
return this.ins.some(function(x) {
|
|
10560
10560
|
return x.witness.length !== 0;
|
|
10561
10561
|
});
|
|
10562
10562
|
};
|
|
10563
|
-
|
|
10563
|
+
Transaction5.prototype.weight = function() {
|
|
10564
10564
|
var base = this.__byteLength(false);
|
|
10565
10565
|
var total = this.__byteLength(true);
|
|
10566
10566
|
return base * 3 + total;
|
|
10567
10567
|
};
|
|
10568
|
-
|
|
10568
|
+
Transaction5.prototype.virtualSize = function() {
|
|
10569
10569
|
return Math.ceil(this.weight() / 4);
|
|
10570
10570
|
};
|
|
10571
|
-
|
|
10571
|
+
Transaction5.prototype.byteLength = function() {
|
|
10572
10572
|
return this.__byteLength(true);
|
|
10573
10573
|
};
|
|
10574
|
-
|
|
10574
|
+
Transaction5.prototype.zcashTransactionByteLength = function() {
|
|
10575
10575
|
if (!coins.isZcashCompatible(this.network)) {
|
|
10576
10576
|
throw new Error("zcashTransactionByteLength can only be called when using Zcash or compatible network");
|
|
10577
10577
|
}
|
|
@@ -10602,7 +10602,7 @@ var require_transaction = __commonJS({
|
|
|
10602
10602
|
}
|
|
10603
10603
|
return byteLength;
|
|
10604
10604
|
};
|
|
10605
|
-
|
|
10605
|
+
Transaction5.prototype.__byteLength = function(__allowWitness) {
|
|
10606
10606
|
var hasWitnesses = __allowWitness && this.hasWitnesses();
|
|
10607
10607
|
if (coins.isZcashCompatible(this.network)) {
|
|
10608
10608
|
return this.zcashTransactionByteLength();
|
|
@@ -10615,8 +10615,8 @@ var require_transaction = __commonJS({
|
|
|
10615
10615
|
return sum + vectorSize(input.witness);
|
|
10616
10616
|
}, 0) : 0);
|
|
10617
10617
|
};
|
|
10618
|
-
|
|
10619
|
-
var newTx = new
|
|
10618
|
+
Transaction5.prototype.clone = function() {
|
|
10619
|
+
var newTx = new Transaction5(this.network);
|
|
10620
10620
|
newTx.version = this.version;
|
|
10621
10621
|
newTx.locktime = this.locktime;
|
|
10622
10622
|
newTx.network = this.network;
|
|
@@ -10652,12 +10652,12 @@ var require_transaction = __commonJS({
|
|
|
10652
10652
|
});
|
|
10653
10653
|
return newTx;
|
|
10654
10654
|
};
|
|
10655
|
-
|
|
10655
|
+
Transaction5.prototype.getHeader = function() {
|
|
10656
10656
|
var mask = this.overwintered ? 1 : 0;
|
|
10657
10657
|
var header = this.version | mask << 31;
|
|
10658
10658
|
return header;
|
|
10659
10659
|
};
|
|
10660
|
-
|
|
10660
|
+
Transaction5.prototype.hashForSignature = function(inIndex, prevOutScript, hashType) {
|
|
10661
10661
|
typeforce(types.tuple(
|
|
10662
10662
|
types.UInt32,
|
|
10663
10663
|
types.Buffer,
|
|
@@ -10670,14 +10670,14 @@ var require_transaction = __commonJS({
|
|
|
10670
10670
|
return x !== opcodes3.OP_CODESEPARATOR;
|
|
10671
10671
|
}));
|
|
10672
10672
|
var txTmp = this.clone();
|
|
10673
|
-
if ((hashType & 31) ===
|
|
10673
|
+
if ((hashType & 31) === Transaction5.SIGHASH_NONE) {
|
|
10674
10674
|
txTmp.outs = [];
|
|
10675
10675
|
txTmp.ins.forEach(function(input, i2) {
|
|
10676
10676
|
if (i2 === inIndex)
|
|
10677
10677
|
return;
|
|
10678
10678
|
input.sequence = 0;
|
|
10679
10679
|
});
|
|
10680
|
-
} else if ((hashType & 31) ===
|
|
10680
|
+
} else if ((hashType & 31) === Transaction5.SIGHASH_SINGLE) {
|
|
10681
10681
|
if (inIndex >= this.outs.length)
|
|
10682
10682
|
return ONE;
|
|
10683
10683
|
txTmp.outs.length = inIndex + 1;
|
|
@@ -10690,7 +10690,7 @@ var require_transaction = __commonJS({
|
|
|
10690
10690
|
input.sequence = 0;
|
|
10691
10691
|
});
|
|
10692
10692
|
}
|
|
10693
|
-
if (hashType &
|
|
10693
|
+
if (hashType & Transaction5.SIGHASH_ANYONECANPAY) {
|
|
10694
10694
|
txTmp.ins = [txTmp.ins[inIndex]];
|
|
10695
10695
|
txTmp.ins[0].script = ourScript;
|
|
10696
10696
|
} else {
|
|
@@ -10704,7 +10704,7 @@ var require_transaction = __commonJS({
|
|
|
10704
10704
|
txTmp.__toBuffer(buffer, 0, false);
|
|
10705
10705
|
return bcrypto.hash256(buffer);
|
|
10706
10706
|
};
|
|
10707
|
-
|
|
10707
|
+
Transaction5.prototype.hashForSignatureByNetwork = function(inIndex, prevoutScript, value, hashType, isSegwit) {
|
|
10708
10708
|
switch (coins.getMainnet(this.network)) {
|
|
10709
10709
|
case networks3.zcash:
|
|
10710
10710
|
case networks3.verus:
|
|
@@ -10714,7 +10714,7 @@ var require_transaction = __commonJS({
|
|
|
10714
10714
|
case networks3.bitcoincash:
|
|
10715
10715
|
case networks3.bitcoinsv:
|
|
10716
10716
|
case networks3.bitcoingold:
|
|
10717
|
-
var addForkId = (hashType &
|
|
10717
|
+
var addForkId = (hashType & Transaction5.SIGHASH_FORKID) > 0;
|
|
10718
10718
|
if (addForkId) {
|
|
10719
10719
|
hashType = (hashType | this.network.forkId << 8) >>> 0;
|
|
10720
10720
|
return this.hashForWitnessV0(inIndex, prevoutScript, value, hashType);
|
|
@@ -10726,7 +10726,7 @@ var require_transaction = __commonJS({
|
|
|
10726
10726
|
return this.hashForSignature(inIndex, prevoutScript, hashType);
|
|
10727
10727
|
}
|
|
10728
10728
|
};
|
|
10729
|
-
|
|
10729
|
+
Transaction5.prototype.hashForCashSignature = function() {
|
|
10730
10730
|
var args = [];
|
|
10731
10731
|
for (var _i = 0; _i < arguments.length; _i++) {
|
|
10732
10732
|
args[_i] = arguments[_i];
|
|
@@ -10736,7 +10736,7 @@ var require_transaction = __commonJS({
|
|
|
10736
10736
|
}
|
|
10737
10737
|
return this.hashForSignatureByNetwork.apply(this, args);
|
|
10738
10738
|
};
|
|
10739
|
-
|
|
10739
|
+
Transaction5.prototype.hashForGoldSignature = function() {
|
|
10740
10740
|
var args = [];
|
|
10741
10741
|
for (var _i = 0; _i < arguments.length; _i++) {
|
|
10742
10742
|
args[_i] = arguments[_i];
|
|
@@ -10746,12 +10746,12 @@ var require_transaction = __commonJS({
|
|
|
10746
10746
|
}
|
|
10747
10747
|
return this.hashForSignatureByNetwork.apply(this, args);
|
|
10748
10748
|
};
|
|
10749
|
-
|
|
10749
|
+
Transaction5.prototype.getBlake2bHash = function(bufferToHash, personalization) {
|
|
10750
10750
|
var out = Buffer2.allocUnsafe(32);
|
|
10751
10751
|
return blake2b(out.length, null, null, Buffer2.from(personalization)).update(bufferToHash).digest(out);
|
|
10752
10752
|
};
|
|
10753
|
-
|
|
10754
|
-
if (!(hashType &
|
|
10753
|
+
Transaction5.prototype.getPrevoutHash = function(hashType) {
|
|
10754
|
+
if (!(hashType & Transaction5.SIGHASH_ANYONECANPAY)) {
|
|
10755
10755
|
var bufferWriter = new BufferWriter(Buffer2.allocUnsafe(36 * this.ins.length));
|
|
10756
10756
|
this.ins.forEach(function(txIn) {
|
|
10757
10757
|
bufferWriter.writeSlice(txIn.hash);
|
|
@@ -10764,8 +10764,8 @@ var require_transaction = __commonJS({
|
|
|
10764
10764
|
}
|
|
10765
10765
|
return ZERO;
|
|
10766
10766
|
};
|
|
10767
|
-
|
|
10768
|
-
if (!(hashType &
|
|
10767
|
+
Transaction5.prototype.getSequenceHash = function(hashType) {
|
|
10768
|
+
if (!(hashType & Transaction5.SIGHASH_ANYONECANPAY) && (hashType & 31) !== Transaction5.SIGHASH_SINGLE && (hashType & 31) !== Transaction5.SIGHASH_NONE) {
|
|
10769
10769
|
var bufferWriter = new BufferWriter(Buffer2.allocUnsafe(4 * this.ins.length));
|
|
10770
10770
|
this.ins.forEach(function(txIn) {
|
|
10771
10771
|
bufferWriter.writeUInt32(txIn.sequence);
|
|
@@ -10777,9 +10777,9 @@ var require_transaction = __commonJS({
|
|
|
10777
10777
|
}
|
|
10778
10778
|
return ZERO;
|
|
10779
10779
|
};
|
|
10780
|
-
|
|
10780
|
+
Transaction5.prototype.getOutputsHash = function(hashType, inIndex) {
|
|
10781
10781
|
var bufferWriter;
|
|
10782
|
-
if ((hashType & 31) !==
|
|
10782
|
+
if ((hashType & 31) !== Transaction5.SIGHASH_SINGLE && (hashType & 31) !== Transaction5.SIGHASH_NONE) {
|
|
10783
10783
|
var txOutsSize = this.outs.reduce(function(sum, output2) {
|
|
10784
10784
|
return sum + 8 + varSliceSize(output2.script);
|
|
10785
10785
|
}, 0);
|
|
@@ -10792,7 +10792,7 @@ var require_transaction = __commonJS({
|
|
|
10792
10792
|
return this.getBlake2bHash(bufferWriter.buffer, "ZcashOutputsHash");
|
|
10793
10793
|
}
|
|
10794
10794
|
return bcrypto.hash256(bufferWriter.buffer);
|
|
10795
|
-
} else if ((hashType & 31) ===
|
|
10795
|
+
} else if ((hashType & 31) === Transaction5.SIGHASH_SINGLE && inIndex < this.outs.length) {
|
|
10796
10796
|
var output = this.outs[inIndex];
|
|
10797
10797
|
bufferWriter = new BufferWriter(Buffer2.allocUnsafe(8 + varSliceSize(output.script)));
|
|
10798
10798
|
bufferWriter.writeUInt64(output.value);
|
|
@@ -10804,7 +10804,7 @@ var require_transaction = __commonJS({
|
|
|
10804
10804
|
}
|
|
10805
10805
|
return ZERO;
|
|
10806
10806
|
};
|
|
10807
|
-
|
|
10807
|
+
Transaction5.prototype.hashForZcashSignature = function(inIndex, prevOutScript, value, hashType) {
|
|
10808
10808
|
typeforce(types.tuple(types.UInt32, types.Buffer, types.Satoshi, types.UInt32), arguments);
|
|
10809
10809
|
if (!coins.isZcashCompatible(this.network)) {
|
|
10810
10810
|
throw new Error("hashForZcashSignature can only be called when using Zcash or compatible network");
|
|
@@ -10866,7 +10866,7 @@ var require_transaction = __commonJS({
|
|
|
10866
10866
|
}
|
|
10867
10867
|
throw new Error("unsupported version");
|
|
10868
10868
|
};
|
|
10869
|
-
|
|
10869
|
+
Transaction5.prototype.hashForWitnessV0 = function(inIndex, prevOutScript, value, hashType) {
|
|
10870
10870
|
typeforce(types.tuple(types.UInt32, types.Buffer, types.Satoshi, types.UInt32), arguments);
|
|
10871
10871
|
var hashPrevouts = this.getPrevoutHash(hashType);
|
|
10872
10872
|
var hashSequence = this.getSequenceHash(hashType);
|
|
@@ -10886,16 +10886,16 @@ var require_transaction = __commonJS({
|
|
|
10886
10886
|
bufferWriter.writeUInt32(hashType);
|
|
10887
10887
|
return bcrypto.hash256(bufferWriter.buffer);
|
|
10888
10888
|
};
|
|
10889
|
-
|
|
10889
|
+
Transaction5.prototype.getHash = function() {
|
|
10890
10890
|
return bcrypto.hash256(this.__toBuffer(void 0, void 0, false));
|
|
10891
10891
|
};
|
|
10892
|
-
|
|
10892
|
+
Transaction5.prototype.getId = function() {
|
|
10893
10893
|
return this.getHash().reverse().toString("hex");
|
|
10894
10894
|
};
|
|
10895
|
-
|
|
10895
|
+
Transaction5.prototype.toBuffer = function(buffer, initialOffset) {
|
|
10896
10896
|
return this.__toBuffer(buffer, initialOffset, true);
|
|
10897
10897
|
};
|
|
10898
|
-
|
|
10898
|
+
Transaction5.prototype.__toBuffer = function(buffer, initialOffset, __allowWitness) {
|
|
10899
10899
|
if (!buffer)
|
|
10900
10900
|
buffer = Buffer2.allocUnsafe(this.__byteLength(__allowWitness));
|
|
10901
10901
|
var bufferWriter = new BufferWriter(buffer, initialOffset || 0);
|
|
@@ -10914,8 +10914,8 @@ var require_transaction = __commonJS({
|
|
|
10914
10914
|
}
|
|
10915
10915
|
var hasWitnesses = __allowWitness && this.hasWitnesses();
|
|
10916
10916
|
if (hasWitnesses) {
|
|
10917
|
-
bufferWriter.writeUInt8(
|
|
10918
|
-
bufferWriter.writeUInt8(
|
|
10917
|
+
bufferWriter.writeUInt8(Transaction5.ADVANCED_TRANSACTION_MARKER);
|
|
10918
|
+
bufferWriter.writeUInt8(Transaction5.ADVANCED_TRANSACTION_FLAG);
|
|
10919
10919
|
}
|
|
10920
10920
|
bufferWriter.writeVarInt(this.ins.length);
|
|
10921
10921
|
this.ins.forEach(function(txIn) {
|
|
@@ -10957,18 +10957,18 @@ var require_transaction = __commonJS({
|
|
|
10957
10957
|
return buffer.slice(initialOffset, bufferWriter.offset);
|
|
10958
10958
|
return buffer.slice(0, bufferWriter.offset);
|
|
10959
10959
|
};
|
|
10960
|
-
|
|
10960
|
+
Transaction5.prototype.toHex = function() {
|
|
10961
10961
|
return this.toBuffer().toString("hex");
|
|
10962
10962
|
};
|
|
10963
|
-
|
|
10963
|
+
Transaction5.prototype.setInputScript = function(index, scriptSig) {
|
|
10964
10964
|
typeforce(types.tuple(types.Number, types.Buffer), arguments);
|
|
10965
10965
|
this.ins[index].script = scriptSig;
|
|
10966
10966
|
};
|
|
10967
|
-
|
|
10967
|
+
Transaction5.prototype.setWitness = function(index, witness) {
|
|
10968
10968
|
typeforce(types.tuple(types.Number, [types.Buffer]), arguments);
|
|
10969
10969
|
this.ins[index].witness = witness;
|
|
10970
10970
|
};
|
|
10971
|
-
module2.exports =
|
|
10971
|
+
module2.exports = Transaction5;
|
|
10972
10972
|
}
|
|
10973
10973
|
});
|
|
10974
10974
|
|
|
@@ -10984,7 +10984,7 @@ var require_signature = __commonJS({
|
|
|
10984
10984
|
var script = require_script();
|
|
10985
10985
|
var crypto2 = require_crypto();
|
|
10986
10986
|
var ECPair4 = require_ecpair();
|
|
10987
|
-
var
|
|
10987
|
+
var Transaction5 = require_transaction();
|
|
10988
10988
|
var ECSignature = require_ecsignature();
|
|
10989
10989
|
var networks3 = require_networks();
|
|
10990
10990
|
var coins_1 = require_coins();
|
|
@@ -10993,9 +10993,9 @@ var require_signature = __commonJS({
|
|
|
10993
10993
|
case networks3.bitcoincash:
|
|
10994
10994
|
case networks3.bitcoinsv:
|
|
10995
10995
|
case networks3.bitcoingold:
|
|
10996
|
-
return
|
|
10996
|
+
return Transaction5.SIGHASH_ALL | Transaction5.SIGHASH_BITCOINCASHBIP143;
|
|
10997
10997
|
default:
|
|
10998
|
-
return
|
|
10998
|
+
return Transaction5.SIGHASH_ALL;
|
|
10999
10999
|
}
|
|
11000
11000
|
}
|
|
11001
11001
|
function parseSignatureScript(input) {
|
|
@@ -11837,7 +11837,7 @@ var require_transaction_builder = __commonJS({
|
|
|
11837
11837
|
var P2SH = SIGNABLE.concat([btemplates.types.P2WPKH, btemplates.types.P2WSH]);
|
|
11838
11838
|
var ECPair4 = require_ecpair();
|
|
11839
11839
|
var ECSignature = require_ecsignature();
|
|
11840
|
-
var
|
|
11840
|
+
var Transaction5 = require_transaction();
|
|
11841
11841
|
var SmartTransactionSignatures = require_smart_transaction_signatures();
|
|
11842
11842
|
var SmartTransactionSignature = require_smart_transaction_signature();
|
|
11843
11843
|
var getMainnet = require_coins().getMainnet;
|
|
@@ -12245,7 +12245,7 @@ var require_transaction_builder = __commonJS({
|
|
|
12245
12245
|
this.network = network || networks3.bitcoin;
|
|
12246
12246
|
this.maximumFeeRate = maximumFeeRate || 2500;
|
|
12247
12247
|
this.inputs = [];
|
|
12248
|
-
this.tx = new
|
|
12248
|
+
this.tx = new Transaction5(this.network);
|
|
12249
12249
|
}
|
|
12250
12250
|
TransactionBuilder5.prototype.setLockTime = function(locktime) {
|
|
12251
12251
|
typeforce(types.UInt32, locktime);
|
|
@@ -12381,7 +12381,7 @@ var require_transaction_builder = __commonJS({
|
|
|
12381
12381
|
var value;
|
|
12382
12382
|
if (typeof txHash === "string") {
|
|
12383
12383
|
txHash = Buffer2.from(txHash, "hex").reverse();
|
|
12384
|
-
} else if (txHash instanceof
|
|
12384
|
+
} else if (txHash instanceof Transaction5) {
|
|
12385
12385
|
var txOut = txHash.outs[vout];
|
|
12386
12386
|
prevOutScript = txOut.script;
|
|
12387
12387
|
value = txOut.value;
|
|
@@ -12394,7 +12394,7 @@ var require_transaction_builder = __commonJS({
|
|
|
12394
12394
|
});
|
|
12395
12395
|
};
|
|
12396
12396
|
TransactionBuilder5.prototype.__addInputUnsafe = function(txHash, vout, options) {
|
|
12397
|
-
if (
|
|
12397
|
+
if (Transaction5.isCoinbaseHash(txHash)) {
|
|
12398
12398
|
throw new Error("coinbase inputs not supported");
|
|
12399
12399
|
}
|
|
12400
12400
|
var prevTxOut = txHash.toString("hex") + ":" + vout;
|
|
@@ -12478,7 +12478,7 @@ var require_transaction_builder = __commonJS({
|
|
|
12478
12478
|
throw new TypeError("Inconsistent network");
|
|
12479
12479
|
if (!this.inputs[vin])
|
|
12480
12480
|
throw new Error("No input at index: " + vin);
|
|
12481
|
-
hashType = hashType ||
|
|
12481
|
+
hashType = hashType || Transaction5.SIGHASH_ALL;
|
|
12482
12482
|
var input = this.inputs[vin];
|
|
12483
12483
|
if (input.redeemScript !== void 0 && redeemScript && !input.redeemScript.equals(redeemScript)) {
|
|
12484
12484
|
throw new Error("Inconsistent redeemScript");
|
|
@@ -12531,7 +12531,7 @@ var require_transaction_builder = __commonJS({
|
|
|
12531
12531
|
if (!signature)
|
|
12532
12532
|
return true;
|
|
12533
12533
|
var hashType = signatureHashType(signature);
|
|
12534
|
-
return hashType &
|
|
12534
|
+
return hashType & Transaction5.SIGHASH_ANYONECANPAY;
|
|
12535
12535
|
});
|
|
12536
12536
|
});
|
|
12537
12537
|
};
|
|
@@ -12554,9 +12554,9 @@ var require_transaction_builder = __commonJS({
|
|
|
12554
12554
|
return true;
|
|
12555
12555
|
var hashType = signatureHashType(signature);
|
|
12556
12556
|
var hashTypeMod = hashType & 31;
|
|
12557
|
-
if (hashTypeMod ===
|
|
12557
|
+
if (hashTypeMod === Transaction5.SIGHASH_NONE)
|
|
12558
12558
|
return true;
|
|
12559
|
-
if (hashTypeMod ===
|
|
12559
|
+
if (hashTypeMod === Transaction5.SIGHASH_SINGLE) {
|
|
12560
12560
|
return nInputs <= nOutputs;
|
|
12561
12561
|
}
|
|
12562
12562
|
});
|
|
@@ -12589,7 +12589,7 @@ var require_transaction2 = __commonJS({
|
|
|
12589
12589
|
exports2.createTransactionForNetwork = createTransactionForNetwork;
|
|
12590
12590
|
var networks3 = require_networks();
|
|
12591
12591
|
var coins_1 = require_coins();
|
|
12592
|
-
var
|
|
12592
|
+
var Transaction5 = require_transaction();
|
|
12593
12593
|
var TransactionBuilder5 = require_transaction_builder();
|
|
12594
12594
|
function createTransactionFromBuffer(buf, network) {
|
|
12595
12595
|
switch ((0, coins_1.getMainnet)(network)) {
|
|
@@ -12600,7 +12600,7 @@ var require_transaction2 = __commonJS({
|
|
|
12600
12600
|
case networks3.dash:
|
|
12601
12601
|
case networks3.litecoin:
|
|
12602
12602
|
case networks3.zcash:
|
|
12603
|
-
return
|
|
12603
|
+
return Transaction5.fromBuffer(buf, network);
|
|
12604
12604
|
}
|
|
12605
12605
|
throw new Error("invalid network");
|
|
12606
12606
|
}
|
|
@@ -12655,7 +12655,7 @@ var require_transaction2 = __commonJS({
|
|
|
12655
12655
|
case networks3.dash:
|
|
12656
12656
|
case networks3.litecoin:
|
|
12657
12657
|
case networks3.zcash:
|
|
12658
|
-
return new
|
|
12658
|
+
return new Transaction5(network);
|
|
12659
12659
|
}
|
|
12660
12660
|
throw new Error("invalid network");
|
|
12661
12661
|
}
|
|
@@ -12737,7 +12737,7 @@ var require_block = __commonJS({
|
|
|
12737
12737
|
var varuint = require_varuint_bitcoin();
|
|
12738
12738
|
var networks3 = require_networks();
|
|
12739
12739
|
var coins = require_coins();
|
|
12740
|
-
var
|
|
12740
|
+
var Transaction5 = require_transaction();
|
|
12741
12741
|
function Block(network) {
|
|
12742
12742
|
typeforce(types.maybe(types.Network), network);
|
|
12743
12743
|
if (coins.isZcash(network)) {
|
|
@@ -12801,7 +12801,7 @@ var require_block = __commonJS({
|
|
|
12801
12801
|
if (bufferReader.buffer.length === headerLength)
|
|
12802
12802
|
return block;
|
|
12803
12803
|
function readTransaction() {
|
|
12804
|
-
var tx2 =
|
|
12804
|
+
var tx2 = Transaction5.fromBuffer(buffer.slice(bufferReader.offset), network, true);
|
|
12805
12805
|
bufferReader.offset += tx2.byteLength();
|
|
12806
12806
|
return tx2;
|
|
12807
12807
|
}
|
|
@@ -31619,7 +31619,7 @@ var require_smart_transactions = __commonJS({
|
|
|
31619
31619
|
exports2.getFundedTxBuilder = exports2.completeFundedIdentityUpdate = exports2.createUnfundedIdentityUpdate = exports2.createUnfundedCurrencyTransfer = exports2.validateFundedCurrencyTransfer = exports2.unpackOutput = void 0;
|
|
31620
31620
|
var verus_typescript_primitives_1 = require_dist2();
|
|
31621
31621
|
var bn_js_1 = require("bn.js");
|
|
31622
|
-
var
|
|
31622
|
+
var Transaction5 = require_transaction();
|
|
31623
31623
|
var TransactionBuilder5 = require_transaction_builder();
|
|
31624
31624
|
var TxDestination2 = require_tx_destination();
|
|
31625
31625
|
var script = require_script();
|
|
@@ -31822,9 +31822,9 @@ var require_smart_transactions = __commonJS({
|
|
|
31822
31822
|
var amountsOut = (_b = {}, _b[systemId] = new bn_js_1.BN(0), _b);
|
|
31823
31823
|
var amountChange = (_c = {}, _c[systemId] = new bn_js_1.BN(0), _c);
|
|
31824
31824
|
var amountsFee = (_d = {}, _d[systemId] = new bn_js_1.BN(0), _d);
|
|
31825
|
-
var fundedTx =
|
|
31826
|
-
var unfundedTx =
|
|
31827
|
-
var fundedTxComparison =
|
|
31825
|
+
var fundedTx = Transaction5.fromHex(fundedTxHex, network);
|
|
31826
|
+
var unfundedTx = Transaction5.fromHex(unfundedTxHex, network);
|
|
31827
|
+
var fundedTxComparison = Transaction5.fromHex(fundedTxHex, network);
|
|
31828
31828
|
if (!fundedTxComparison.ins.length) {
|
|
31829
31829
|
return {
|
|
31830
31830
|
valid: false,
|
|
@@ -32153,7 +32153,7 @@ var require_smart_transactions = __commonJS({
|
|
|
32153
32153
|
};
|
|
32154
32154
|
exports2.completeFundedIdentityUpdate = completeFundedIdentityUpdate3;
|
|
32155
32155
|
var getFundedTxBuilder2 = function(fundedTxHex, network, prevOutScripts) {
|
|
32156
|
-
var tx =
|
|
32156
|
+
var tx = Transaction5.fromHex(fundedTxHex, network);
|
|
32157
32157
|
var inputs = tx.ins;
|
|
32158
32158
|
var txb = TransactionBuilder5.fromTransaction(tx, network);
|
|
32159
32159
|
txb.inputs = [];
|
|
@@ -32309,6 +32309,7 @@ var HASH_SHA256 = 5;
|
|
|
32309
32309
|
// src/signing/index.ts
|
|
32310
32310
|
var signing_exports = {};
|
|
32311
32311
|
__export(signing_exports, {
|
|
32312
|
+
assertNativeConservation: () => assertNativeConservation,
|
|
32312
32313
|
createTransactionBuilder: () => createTransactionBuilder,
|
|
32313
32314
|
getNetwork: () => getNetwork,
|
|
32314
32315
|
resolveExpiryHeight: () => resolveExpiryHeight,
|
|
@@ -32498,10 +32499,10 @@ function addressToScriptPubKey(address) {
|
|
|
32498
32499
|
}
|
|
32499
32500
|
function summarizeSignedTransaction(hex, network) {
|
|
32500
32501
|
const utxolib = require_src2();
|
|
32501
|
-
const { Transaction:
|
|
32502
|
+
const { Transaction: Transaction5, address: addressLib, networks: networks3, smarttxs: smarttxs6 } = utxolib;
|
|
32502
32503
|
const net = network === "testnet" ? networks3.verustest : networks3.verus;
|
|
32503
32504
|
const chainId = network === "testnet" ? NETWORK_CONFIG.testnet.chainId : NETWORK_CONFIG.mainnet.chainId;
|
|
32504
|
-
const tx =
|
|
32505
|
+
const tx = Transaction5.fromHex(hex, net);
|
|
32505
32506
|
const inputs = tx.ins.map((input) => ({
|
|
32506
32507
|
txid: Buffer.from(input.hash).reverse().toString("hex"),
|
|
32507
32508
|
vout: input.index
|
|
@@ -32546,6 +32547,16 @@ function resolveExpiryHeight(expiryHeight) {
|
|
|
32546
32547
|
}
|
|
32547
32548
|
return expiryHeight;
|
|
32548
32549
|
}
|
|
32550
|
+
function assertNativeConservation(inputUtxos, txOuts, expectedFeeSats, label) {
|
|
32551
|
+
const totalIn = inputUtxos.reduce((sum, u) => sum + u.satoshis, 0n);
|
|
32552
|
+
const totalOut = txOuts.reduce((sum, o) => sum + BigInt(o.value), 0n);
|
|
32553
|
+
const assembled = totalIn - totalOut;
|
|
32554
|
+
if (assembled !== expectedFeeSats) {
|
|
32555
|
+
throw new TransactionBuildError(
|
|
32556
|
+
`${label} value conservation failed: assembled native fee ${assembled} sat != intended ${expectedFeeSats} sat`
|
|
32557
|
+
);
|
|
32558
|
+
}
|
|
32559
|
+
}
|
|
32549
32560
|
function getNetwork(testnet = false) {
|
|
32550
32561
|
return testnet ? import_utxo_lib.networks.verustest : import_utxo_lib.networks.verus;
|
|
32551
32562
|
}
|
|
@@ -33239,9 +33250,10 @@ function buildAndSignCommitment(params, network) {
|
|
|
33239
33250
|
}
|
|
33240
33251
|
const verusNetwork = getNetwork(network === "testnet");
|
|
33241
33252
|
const networkConfig = NETWORK_CONFIG[network];
|
|
33253
|
+
const controlAddress = import_utxo_lib3.ECPair.fromWIF(params.wif, verusNetwork).getAddress();
|
|
33242
33254
|
const commitment = prepareNameCommitment(
|
|
33243
33255
|
params.name,
|
|
33244
|
-
|
|
33256
|
+
controlAddress,
|
|
33245
33257
|
params.referral,
|
|
33246
33258
|
params.parent,
|
|
33247
33259
|
network
|
|
@@ -33270,7 +33282,11 @@ function buildAndSignCommitment(params, network) {
|
|
|
33270
33282
|
}
|
|
33271
33283
|
txb.addOutput(commitment.commitmentScript, 0);
|
|
33272
33284
|
if (selection.nativeChange > 0n) {
|
|
33273
|
-
|
|
33285
|
+
if (params.changeAddress.startsWith("i")) {
|
|
33286
|
+
txb.addOutput(identityPaymentScript(params.changeAddress), toSafeNumber(selection.nativeChange));
|
|
33287
|
+
} else {
|
|
33288
|
+
txb.addOutput(params.changeAddress, toSafeNumber(selection.nativeChange));
|
|
33289
|
+
}
|
|
33274
33290
|
}
|
|
33275
33291
|
const unsignedTx = txb.buildIncomplete();
|
|
33276
33292
|
const { signedTx, txid } = signTransactionSmart(
|
|
@@ -33392,7 +33408,11 @@ function _buildVrscRegistration(params, identityScript, reservationScript, ident
|
|
|
33392
33408
|
}
|
|
33393
33409
|
txb.addOutput(reservationScript, 0);
|
|
33394
33410
|
if (selection.nativeChange > 0n) {
|
|
33395
|
-
|
|
33411
|
+
if (params.changeAddress.startsWith("i")) {
|
|
33412
|
+
txb.addOutput(identityPaymentScript(params.changeAddress), toSafeNumber(selection.nativeChange));
|
|
33413
|
+
} else {
|
|
33414
|
+
txb.addOutput(params.changeAddress, toSafeNumber(selection.nativeChange));
|
|
33415
|
+
}
|
|
33396
33416
|
}
|
|
33397
33417
|
const unsignedTx = txb.buildIncomplete();
|
|
33398
33418
|
const allUtxos = [commitUtxo, ...selection.selected];
|
|
@@ -33484,7 +33504,11 @@ function _buildSubIdRegistration(params, identity, identityScript, reservationSc
|
|
|
33484
33504
|
);
|
|
33485
33505
|
txb.addOutput(tokenChangeScript.script, toSafeNumber(selection.nativeChange));
|
|
33486
33506
|
} else {
|
|
33487
|
-
|
|
33507
|
+
if (params.changeAddress.startsWith("i")) {
|
|
33508
|
+
txb.addOutput(identityPaymentScript(params.changeAddress), toSafeNumber(selection.nativeChange));
|
|
33509
|
+
} else {
|
|
33510
|
+
txb.addOutput(params.changeAddress, toSafeNumber(selection.nativeChange));
|
|
33511
|
+
}
|
|
33488
33512
|
}
|
|
33489
33513
|
}
|
|
33490
33514
|
const unsignedTx = txb.buildIncomplete();
|
|
@@ -33520,7 +33544,13 @@ function buildAndSignIdentityUpdate(params, network, operation = "update", lockU
|
|
|
33520
33544
|
const systemId = networkConfig.chainId;
|
|
33521
33545
|
const identity = new import_verus_typescript_primitives2.Identity();
|
|
33522
33546
|
identity.fromBuffer(Buffer.from(params.identityHex, "hex"));
|
|
33523
|
-
|
|
33547
|
+
let requiresPrimary = operation === "update" || operation === "lock" || operation === "unlock";
|
|
33548
|
+
if (!requiresPrimary && (operation === "revoke" || operation === "recover")) {
|
|
33549
|
+
const self = identity.getIdentityAddress();
|
|
33550
|
+
const authority = operation === "revoke" ? identity.revocation_authority?.toAddress() : identity.recovery_authority?.toAddress();
|
|
33551
|
+
requiresPrimary = authority === self;
|
|
33552
|
+
}
|
|
33553
|
+
if (requiresPrimary) {
|
|
33524
33554
|
const signerAddress = import_utxo_lib3.ECPair.fromWIF(params.wif, verusNetwork).getAddress();
|
|
33525
33555
|
const currentPrimaries = (identity.primary_addresses ?? []).map((k) => k.toAddress());
|
|
33526
33556
|
if (!currentPrimaries.includes(signerAddress)) {
|
|
@@ -33558,6 +33588,7 @@ function buildAndSignIdentityUpdate(params, network, operation = "update", lockU
|
|
|
33558
33588
|
if (params.contentMultimap) {
|
|
33559
33589
|
const jsonObj = {};
|
|
33560
33590
|
for (const [key, value] of Object.entries(params.contentMultimap)) {
|
|
33591
|
+
assertAddressVersion(key, I_ADDR_VERSION, `contentMultimap key "${key}"`);
|
|
33561
33592
|
const items = Array.isArray(value) ? value : [value];
|
|
33562
33593
|
for (const item of items) {
|
|
33563
33594
|
if (!/^[0-9a-fA-F]*$/.test(item) || item.length % 2 !== 0) {
|
|
@@ -33647,7 +33678,11 @@ function buildAndSignIdentityUpdate(params, network, operation = "update", lockU
|
|
|
33647
33678
|
txb.addOutput(out.script, out.value);
|
|
33648
33679
|
}
|
|
33649
33680
|
if (selection.nativeChange > 0n) {
|
|
33650
|
-
|
|
33681
|
+
if (params.changeAddress.startsWith("i")) {
|
|
33682
|
+
txb.addOutput(identityPaymentScript(params.changeAddress), toSafeNumber(selection.nativeChange));
|
|
33683
|
+
} else {
|
|
33684
|
+
txb.addOutput(params.changeAddress, toSafeNumber(selection.nativeChange));
|
|
33685
|
+
}
|
|
33651
33686
|
}
|
|
33652
33687
|
const fundedTx = txb.buildIncomplete();
|
|
33653
33688
|
const fundedHex = fundedTx.toHex();
|
|
@@ -33670,6 +33705,12 @@ function buildAndSignIdentityUpdate(params, network, operation = "update", lockU
|
|
|
33670
33705
|
}
|
|
33671
33706
|
);
|
|
33672
33707
|
const allUtxos = [...selection.selected, idUtxo];
|
|
33708
|
+
assertNativeConservation(
|
|
33709
|
+
allUtxos,
|
|
33710
|
+
import_utxo_lib3.Transaction.fromHex(completedHex, verusNetwork).outs,
|
|
33711
|
+
selection.fee,
|
|
33712
|
+
`identity ${operation}`
|
|
33713
|
+
);
|
|
33673
33714
|
const { signedTx, txid } = signTransactionSmart(
|
|
33674
33715
|
completedHex,
|
|
33675
33716
|
params.wif,
|
|
@@ -34091,6 +34132,19 @@ var import_verus_typescript_primitives6 = __toESM(require_dist2());
|
|
|
34091
34132
|
var import_bn3 = __toESM(require("bn.js"));
|
|
34092
34133
|
var { completeFundedIdentityUpdate: completeFundedIdentityUpdate2 } = import_utxo_lib6.smarttxs;
|
|
34093
34134
|
function defineCurrency(params, network) {
|
|
34135
|
+
const wifCheck = validateWif(params.wif);
|
|
34136
|
+
if (!wifCheck.valid) {
|
|
34137
|
+
throw new InvalidWifError(wifCheck.error);
|
|
34138
|
+
}
|
|
34139
|
+
if (!params.identityHex) {
|
|
34140
|
+
throw new TransactionBuildError("identityHex is required");
|
|
34141
|
+
}
|
|
34142
|
+
if (!params.utxos || params.utxos.length === 0) {
|
|
34143
|
+
throw new TransactionBuildError("At least one funding UTXO is required");
|
|
34144
|
+
}
|
|
34145
|
+
if (!params.currencyDefScript) {
|
|
34146
|
+
throw new TransactionBuildError("currencyDefScript is required");
|
|
34147
|
+
}
|
|
34094
34148
|
const verusNetwork = getNetwork(network === "testnet");
|
|
34095
34149
|
const networkConfig = NETWORK_CONFIG[network];
|
|
34096
34150
|
const systemId = networkConfig.chainId;
|
|
@@ -34129,7 +34183,11 @@ function defineCurrency(params, network) {
|
|
|
34129
34183
|
txb.addOutput(identityOutputScript, 0);
|
|
34130
34184
|
txb.addOutput(currencyDefScript, toSafeNumber(currencyDefValue));
|
|
34131
34185
|
if (selection.nativeChange > 0n) {
|
|
34132
|
-
|
|
34186
|
+
if (params.changeAddress.startsWith("i")) {
|
|
34187
|
+
txb.addOutput(identityPaymentScript(params.changeAddress), toSafeNumber(selection.nativeChange));
|
|
34188
|
+
} else {
|
|
34189
|
+
txb.addOutput(params.changeAddress, toSafeNumber(selection.nativeChange));
|
|
34190
|
+
}
|
|
34133
34191
|
}
|
|
34134
34192
|
const fundedTx = txb.buildIncomplete();
|
|
34135
34193
|
const fundedHex = fundedTx.toHex();
|
|
@@ -34152,6 +34210,12 @@ function defineCurrency(params, network) {
|
|
|
34152
34210
|
}
|
|
34153
34211
|
);
|
|
34154
34212
|
const allUtxos = [...selection.selected, idUtxo];
|
|
34213
|
+
assertNativeConservation(
|
|
34214
|
+
allUtxos,
|
|
34215
|
+
import_utxo_lib6.Transaction.fromHex(completedHex, verusNetwork).outs,
|
|
34216
|
+
selection.fee,
|
|
34217
|
+
"currency definition"
|
|
34218
|
+
);
|
|
34155
34219
|
const { signedTx, txid } = signTransactionSmart(
|
|
34156
34220
|
completedHex,
|
|
34157
34221
|
params.wif,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/currency/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AACtE,YAAY,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAMlD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/currency/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AACtE,YAAY,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAMlD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAOrD,OAAO,KAAK,EAAQ,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAI1F;;;;GAIG;AACH,wBAAgB,cAAc,CAC5B,MAAM,EAAE,oBAAoB,EAC5B,OAAO,EAAE,OAAO,GACf,oBAAoB,CA6HtB"}
|
package/dist/currency/index.js
CHANGED
|
@@ -27,6 +27,8 @@ const index_js_1 = require("../constants/index.js");
|
|
|
27
27
|
const index_js_2 = require("../signing/index.js");
|
|
28
28
|
const index_js_3 = require("../utxo/index.js");
|
|
29
29
|
const index_js_4 = require("../utils/index.js");
|
|
30
|
+
const index_js_5 = require("../identity/index.js");
|
|
31
|
+
const index_js_6 = require("../keys/index.js");
|
|
30
32
|
const errors_js_1 = require("../errors.js");
|
|
31
33
|
const { completeFundedIdentityUpdate } = utxo_lib_1.smarttxs;
|
|
32
34
|
/**
|
|
@@ -35,6 +37,21 @@ const { completeFundedIdentityUpdate } = utxo_lib_1.smarttxs;
|
|
|
35
37
|
* Takes a pre-built currency definition script hex. No node RPC needed.
|
|
36
38
|
*/
|
|
37
39
|
function defineCurrency(params, network) {
|
|
40
|
+
// Validate inputs at the boundary (this path previously skipped all of it and
|
|
41
|
+
// failed later with a raw ECPair/selection error).
|
|
42
|
+
const wifCheck = (0, index_js_6.validateWif)(params.wif);
|
|
43
|
+
if (!wifCheck.valid) {
|
|
44
|
+
throw new errors_js_1.InvalidWifError(wifCheck.error);
|
|
45
|
+
}
|
|
46
|
+
if (!params.identityHex) {
|
|
47
|
+
throw new errors_js_1.TransactionBuildError('identityHex is required');
|
|
48
|
+
}
|
|
49
|
+
if (!params.utxos || params.utxos.length === 0) {
|
|
50
|
+
throw new errors_js_1.TransactionBuildError('At least one funding UTXO is required');
|
|
51
|
+
}
|
|
52
|
+
if (!params.currencyDefScript) {
|
|
53
|
+
throw new errors_js_1.TransactionBuildError('currencyDefScript is required');
|
|
54
|
+
}
|
|
38
55
|
const verusNetwork = (0, index_js_2.getNetwork)(network === 'testnet');
|
|
39
56
|
const networkConfig = index_js_1.NETWORK_CONFIG[network];
|
|
40
57
|
const systemId = networkConfig.chainId;
|
|
@@ -64,7 +81,12 @@ function defineCurrency(params, network) {
|
|
|
64
81
|
txb.addOutput(identityOutputScript, 0);
|
|
65
82
|
txb.addOutput(currencyDefScript, (0, index_js_4.toSafeNumber)(currencyDefValue));
|
|
66
83
|
if (selection.nativeChange > 0n) {
|
|
67
|
-
|
|
84
|
+
if (params.changeAddress.startsWith('i')) {
|
|
85
|
+
txb.addOutput((0, index_js_5.identityPaymentScript)(params.changeAddress), (0, index_js_4.toSafeNumber)(selection.nativeChange));
|
|
86
|
+
}
|
|
87
|
+
else {
|
|
88
|
+
txb.addOutput(params.changeAddress, (0, index_js_4.toSafeNumber)(selection.nativeChange));
|
|
89
|
+
}
|
|
68
90
|
}
|
|
69
91
|
const fundedTx = txb.buildIncomplete();
|
|
70
92
|
const fundedHex = fundedTx.toHex();
|
|
@@ -84,6 +106,9 @@ function defineCurrency(params, network) {
|
|
|
84
106
|
script: Buffer.from(idUtxo.script, 'hex'),
|
|
85
107
|
});
|
|
86
108
|
const allUtxos = [...selection.selected, idUtxo];
|
|
109
|
+
// Inputs fund the currency-definition value + fee; the identity input/output
|
|
110
|
+
// are value 0, so the assembled native fee must equal selection.fee.
|
|
111
|
+
(0, index_js_2.assertNativeConservation)(allUtxos, utxo_lib_1.Transaction.fromHex(completedHex, verusNetwork).outs, selection.fee, 'currency definition');
|
|
87
112
|
const { signedTx, txid } = (0, index_js_2.signTransactionSmart)(completedHex, params.wif, allUtxos, verusNetwork);
|
|
88
113
|
return {
|
|
89
114
|
signedTx,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/currency/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;GAUG;;;;;;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/currency/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/identity/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/identity/index.ts"],"names":[],"mappings":"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"}
|
package/dist/identity/index.js
CHANGED
|
@@ -452,7 +452,14 @@ function buildAndSignCommitment(params, network) {
|
|
|
452
452
|
}
|
|
453
453
|
const verusNetwork = (0, index_js_3.getNetwork)(network === 'testnet');
|
|
454
454
|
const networkConfig = index_js_1.NETWORK_CONFIG[network];
|
|
455
|
-
|
|
455
|
+
// The commitment output is controlled by, and must be spent by, the key that
|
|
456
|
+
// completes the registration in step 2 — which signs with this same WIF. Using
|
|
457
|
+
// changeAddress as the control address broke that when changeAddress differed
|
|
458
|
+
// from the WIF's address (unsignable commitment), or was an i-address
|
|
459
|
+
// (KeyID.fromAddress laundered it to an uncontrollable key — permanently
|
|
460
|
+
// unspendable, wasting the commitment fee). Derive it from the WIF instead.
|
|
461
|
+
const controlAddress = utxo_lib_1.ECPair.fromWIF(params.wif, verusNetwork).getAddress();
|
|
462
|
+
const commitment = prepareNameCommitment(params.name, controlAddress, params.referral, params.parent, network);
|
|
456
463
|
const utxos = params.utxos;
|
|
457
464
|
const selection = (0, index_js_4.selectUtxos)(utxos, 0n, new Map(), 1, networkConfig.chainId, undefined, true);
|
|
458
465
|
const txb = new utxo_lib_1.TransactionBuilder(verusNetwork);
|
|
@@ -464,7 +471,15 @@ function buildAndSignCommitment(params, network) {
|
|
|
464
471
|
}
|
|
465
472
|
txb.addOutput(commitment.commitmentScript, 0);
|
|
466
473
|
if (selection.nativeChange > 0n) {
|
|
467
|
-
|
|
474
|
+
// utxo-lib's addOutput only resolves base58 R-addresses; an i-address
|
|
475
|
+
// changeAddress needs the explicit P2ID script (matching sendCurrency), or
|
|
476
|
+
// it throws an untyped "no matching Script".
|
|
477
|
+
if (params.changeAddress.startsWith('i')) {
|
|
478
|
+
txb.addOutput(identityPaymentScript(params.changeAddress), (0, index_js_2.toSafeNumber)(selection.nativeChange));
|
|
479
|
+
}
|
|
480
|
+
else {
|
|
481
|
+
txb.addOutput(params.changeAddress, (0, index_js_2.toSafeNumber)(selection.nativeChange));
|
|
482
|
+
}
|
|
468
483
|
}
|
|
469
484
|
const unsignedTx = txb.buildIncomplete();
|
|
470
485
|
const { signedTx, txid } = (0, index_js_3.signTransactionSmart)(unsignedTx.toHex(), params.wif, selection.selected, verusNetwork);
|
|
@@ -567,7 +582,15 @@ function _buildVrscRegistration(params, identityScript, reservationScript, ident
|
|
|
567
582
|
}
|
|
568
583
|
txb.addOutput(reservationScript, 0);
|
|
569
584
|
if (selection.nativeChange > 0n) {
|
|
570
|
-
|
|
585
|
+
// utxo-lib's addOutput only resolves base58 R-addresses; an i-address
|
|
586
|
+
// changeAddress needs the explicit P2ID script (matching sendCurrency), or
|
|
587
|
+
// it throws an untyped "no matching Script".
|
|
588
|
+
if (params.changeAddress.startsWith('i')) {
|
|
589
|
+
txb.addOutput(identityPaymentScript(params.changeAddress), (0, index_js_2.toSafeNumber)(selection.nativeChange));
|
|
590
|
+
}
|
|
591
|
+
else {
|
|
592
|
+
txb.addOutput(params.changeAddress, (0, index_js_2.toSafeNumber)(selection.nativeChange));
|
|
593
|
+
}
|
|
571
594
|
}
|
|
572
595
|
const unsignedTx = txb.buildIncomplete();
|
|
573
596
|
const allUtxos = [commitUtxo, ...selection.selected];
|
|
@@ -639,7 +662,15 @@ function _buildSubIdRegistration(params, identity, identityScript, reservationSc
|
|
|
639
662
|
txb.addOutput(tokenChangeScript.script, (0, index_js_2.toSafeNumber)(selection.nativeChange));
|
|
640
663
|
}
|
|
641
664
|
else {
|
|
642
|
-
|
|
665
|
+
// utxo-lib's addOutput only resolves base58 R-addresses; an i-address
|
|
666
|
+
// changeAddress needs the explicit P2ID script (matching sendCurrency), or
|
|
667
|
+
// it throws an untyped "no matching Script".
|
|
668
|
+
if (params.changeAddress.startsWith('i')) {
|
|
669
|
+
txb.addOutput(identityPaymentScript(params.changeAddress), (0, index_js_2.toSafeNumber)(selection.nativeChange));
|
|
670
|
+
}
|
|
671
|
+
else {
|
|
672
|
+
txb.addOutput(params.changeAddress, (0, index_js_2.toSafeNumber)(selection.nativeChange));
|
|
673
|
+
}
|
|
643
674
|
}
|
|
644
675
|
}
|
|
645
676
|
const unsignedTx = txb.buildIncomplete();
|
|
@@ -679,7 +710,20 @@ function buildAndSignIdentityUpdate(params, network, operation = 'update', lockU
|
|
|
679
710
|
// Verify the signer is a current primary before spending the identity input.
|
|
680
711
|
// (revoke/recover use the revocation/recovery authority — a separate identity
|
|
681
712
|
// whose keys we can't check here — so they are excluded.)
|
|
682
|
-
|
|
713
|
+
// update/lock/unlock are authorized by the identity's own primary key(s).
|
|
714
|
+
// revoke/recover are authorized by the revocation/recovery AUTHORITY — a
|
|
715
|
+
// separate identity whose keys aren't in identityHex, so uncheckable in
|
|
716
|
+
// general — EXCEPT the very common self-authority case (authority == this
|
|
717
|
+
// identity), which reduces to the same primary check. Guard what we can.
|
|
718
|
+
let requiresPrimary = operation === 'update' || operation === 'lock' || operation === 'unlock';
|
|
719
|
+
if (!requiresPrimary && (operation === 'revoke' || operation === 'recover')) {
|
|
720
|
+
const self = identity.getIdentityAddress();
|
|
721
|
+
const authority = operation === 'revoke'
|
|
722
|
+
? identity.revocation_authority?.toAddress()
|
|
723
|
+
: identity.recovery_authority?.toAddress();
|
|
724
|
+
requiresPrimary = authority === self;
|
|
725
|
+
}
|
|
726
|
+
if (requiresPrimary) {
|
|
683
727
|
const signerAddress = utxo_lib_1.ECPair.fromWIF(params.wif, verusNetwork).getAddress();
|
|
684
728
|
const currentPrimaries = (identity.primary_addresses ?? []).map((k) => k.toAddress());
|
|
685
729
|
if (!currentPrimaries.includes(signerAddress)) {
|
|
@@ -718,6 +762,9 @@ function buildAndSignIdentityUpdate(params, network, operation = 'update', lockU
|
|
|
718
762
|
if (params.contentMultimap) {
|
|
719
763
|
const jsonObj = {};
|
|
720
764
|
for (const [key, value] of Object.entries(params.contentMultimap)) {
|
|
765
|
+
// Keys are vdxf i-addresses; ContentMultiMap.fromJson runs
|
|
766
|
+
// fromBase58Check(key) and throws an untyped error for a bad key.
|
|
767
|
+
assertAddressVersion(key, index_js_1.I_ADDR_VERSION, `contentMultimap key "${key}"`);
|
|
721
768
|
const items = Array.isArray(value) ? value : [value];
|
|
722
769
|
// Same trap as contentMap: ContentMultiMap.fromJson runs
|
|
723
770
|
// Buffer.from(_, 'hex') on each array entry with no validation, so a
|
|
@@ -794,7 +841,15 @@ function buildAndSignIdentityUpdate(params, network, operation = 'update', lockU
|
|
|
794
841
|
txb.addOutput(out.script, out.value);
|
|
795
842
|
}
|
|
796
843
|
if (selection.nativeChange > 0n) {
|
|
797
|
-
|
|
844
|
+
// utxo-lib's addOutput only resolves base58 R-addresses; an i-address
|
|
845
|
+
// changeAddress needs the explicit P2ID script (matching sendCurrency), or
|
|
846
|
+
// it throws an untyped "no matching Script".
|
|
847
|
+
if (params.changeAddress.startsWith('i')) {
|
|
848
|
+
txb.addOutput(identityPaymentScript(params.changeAddress), (0, index_js_2.toSafeNumber)(selection.nativeChange));
|
|
849
|
+
}
|
|
850
|
+
else {
|
|
851
|
+
txb.addOutput(params.changeAddress, (0, index_js_2.toSafeNumber)(selection.nativeChange));
|
|
852
|
+
}
|
|
798
853
|
}
|
|
799
854
|
const fundedTx = txb.buildIncomplete();
|
|
800
855
|
const fundedHex = fundedTx.toHex();
|
|
@@ -814,6 +869,9 @@ function buildAndSignIdentityUpdate(params, network, operation = 'update', lockU
|
|
|
814
869
|
script: Buffer.from(idUtxo.script, 'hex'),
|
|
815
870
|
});
|
|
816
871
|
const allUtxos = [...selection.selected, idUtxo];
|
|
872
|
+
// The identity input and its recreated output are both value 0, so the
|
|
873
|
+
// assembled native fee must equal selection.fee. Fail loudly on any slip.
|
|
874
|
+
(0, index_js_3.assertNativeConservation)(allUtxos, utxo_lib_1.Transaction.fromHex(completedHex, verusNetwork).outs, selection.fee, `identity ${operation}`);
|
|
817
875
|
const { signedTx, txid } = (0, index_js_3.signTransactionSmart)(completedHex, params.wif, allUtxos, verusNetwork);
|
|
818
876
|
return {
|
|
819
877
|
signedTx,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/identity/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/identity/index.ts"],"names":[],"mappings":"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"}
|
package/dist/signing/index.d.ts
CHANGED
|
@@ -21,6 +21,18 @@ export type VerusNetwork = typeof networks.verus;
|
|
|
21
21
|
* an explicit `0` to opt into never-expiring.
|
|
22
22
|
*/
|
|
23
23
|
export declare function resolveExpiryHeight(expiryHeight: number | undefined): number;
|
|
24
|
+
/**
|
|
25
|
+
* Assert that a fully-assembled transaction's native value is conserved: the
|
|
26
|
+
* sum of input values minus the sum of output values must equal the fee the
|
|
27
|
+
* builder intends to pay. Catches a selection/accounting slip (or a
|
|
28
|
+
* value-bearing input that would otherwise be burned) before signing — the same
|
|
29
|
+
* guard buildAndSign and VRSC registration already use.
|
|
30
|
+
*/
|
|
31
|
+
export declare function assertNativeConservation(inputUtxos: ReadonlyArray<{
|
|
32
|
+
satoshis: bigint;
|
|
33
|
+
}>, txOuts: ReadonlyArray<{
|
|
34
|
+
value: number;
|
|
35
|
+
}>, expectedFeeSats: bigint, label: string): void;
|
|
24
36
|
/**
|
|
25
37
|
* Get the Verus network config
|
|
26
38
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/signing/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAGL,kBAAkB,EAClB,QAAQ,EAET,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AAO9C,iCAAiC;AACjC,MAAM,MAAM,YAAY,GAAG,OAAO,QAAQ,CAAC,KAAK,CAAC;AAEjD;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CAAC,YAAY,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAsB5E;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,OAAO,GAAE,OAAe,GAAG,YAAY,CAEjE;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,MAAM,EACb,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,IAAI,EAAE,EACb,OAAO,GAAE,YAA6B,EACtC,UAAU,CAAC,EAAE,MAAM,GAClB;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAwBpC;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,MAAM,EAAE,EAAE,EAChB,KAAK,EAAE,IAAI,EAAE,EACb,OAAO,GAAE,YAA6B,GACrC;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAoBpC;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CACtC,OAAO,GAAE,YAA6B,EACtC,YAAY,GAAE,MAAU,EACxB,OAAO,GAAE,MAAU,EACnB,cAAc,GAAE,MAAyB,GACxC,YAAY,CAAC,OAAO,kBAAkB,CAAC,CAMzC;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CACvC,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,MAAM,EACnB,aAAa,EAAE,MAAM,EACrB,aAAa,EAAE,MAAM,EACrB,OAAO,EAAE,YAAY,EACrB,QAAQ,EAAE,IAAI,EAAE,GACf;IACD,KAAK,EAAE,OAAO,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9B,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC/B,CAiBA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/signing/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAGL,kBAAkB,EAClB,QAAQ,EAET,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AAO9C,iCAAiC;AACjC,MAAM,MAAM,YAAY,GAAG,OAAO,QAAQ,CAAC,KAAK,CAAC;AAEjD;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CAAC,YAAY,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAsB5E;AAED;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CACtC,UAAU,EAAE,aAAa,CAAC;IAAE,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAC,EAC/C,MAAM,EAAE,aAAa,CAAC;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC,EACxC,eAAe,EAAE,MAAM,EACvB,KAAK,EAAE,MAAM,GACZ,IAAI,CASN;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,OAAO,GAAE,OAAe,GAAG,YAAY,CAEjE;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,MAAM,EACb,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,IAAI,EAAE,EACb,OAAO,GAAE,YAA6B,EACtC,UAAU,CAAC,EAAE,MAAM,GAClB;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAwBpC;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,MAAM,EAAE,EAAE,EAChB,KAAK,EAAE,IAAI,EAAE,EACb,OAAO,GAAE,YAA6B,GACrC;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAoBpC;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CACtC,OAAO,GAAE,YAA6B,EACtC,YAAY,GAAE,MAAU,EACxB,OAAO,GAAE,MAAU,EACnB,cAAc,GAAE,MAAyB,GACxC,YAAY,CAAC,OAAO,kBAAkB,CAAC,CAMzC;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CACvC,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,MAAM,EACnB,aAAa,EAAE,MAAM,EACrB,aAAa,EAAE,MAAM,EACrB,OAAO,EAAE,YAAY,EACrB,QAAQ,EAAE,IAAI,EAAE,GACf;IACD,KAAK,EAAE,OAAO,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9B,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC/B,CAiBA"}
|
package/dist/signing/index.js
CHANGED
|
@@ -9,6 +9,7 @@
|
|
|
9
9
|
*/
|
|
10
10
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
11
11
|
exports.resolveExpiryHeight = resolveExpiryHeight;
|
|
12
|
+
exports.assertNativeConservation = assertNativeConservation;
|
|
12
13
|
exports.getNetwork = getNetwork;
|
|
13
14
|
exports.signTransactionSmart = signTransactionSmart;
|
|
14
15
|
exports.signTransactionMultiKey = signTransactionMultiKey;
|
|
@@ -46,6 +47,21 @@ function resolveExpiryHeight(expiryHeight) {
|
|
|
46
47
|
}
|
|
47
48
|
return expiryHeight;
|
|
48
49
|
}
|
|
50
|
+
/**
|
|
51
|
+
* Assert that a fully-assembled transaction's native value is conserved: the
|
|
52
|
+
* sum of input values minus the sum of output values must equal the fee the
|
|
53
|
+
* builder intends to pay. Catches a selection/accounting slip (or a
|
|
54
|
+
* value-bearing input that would otherwise be burned) before signing — the same
|
|
55
|
+
* guard buildAndSign and VRSC registration already use.
|
|
56
|
+
*/
|
|
57
|
+
function assertNativeConservation(inputUtxos, txOuts, expectedFeeSats, label) {
|
|
58
|
+
const totalIn = inputUtxos.reduce((sum, u) => sum + u.satoshis, 0n);
|
|
59
|
+
const totalOut = txOuts.reduce((sum, o) => sum + BigInt(o.value), 0n);
|
|
60
|
+
const assembled = totalIn - totalOut;
|
|
61
|
+
if (assembled !== expectedFeeSats) {
|
|
62
|
+
throw new errors_js_1.TransactionBuildError(`${label} value conservation failed: assembled native fee ${assembled} sat != intended ${expectedFeeSats} sat`);
|
|
63
|
+
}
|
|
64
|
+
}
|
|
49
65
|
/**
|
|
50
66
|
* Get the Verus network config
|
|
51
67
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/signing/index.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;AA6BH,kDAsBC;AAKD,gCAEC;AAcD,oDA8BC;AAKD,0DAyBC;AAKD,4DAWC;AAKD,8DA6BC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/signing/index.ts"],"names":[],"mappings":"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"}
|