@@ -81,21 +81,15 @@ export class BlockchainLocal implements IBlockchain {
|
||||
const utxoSet = this.deriveUtxoSet();
|
||||
|
||||
if (!opts.skipValidation) {
|
||||
console.log('utxoSet', utxoSet);
|
||||
|
||||
// Find the source outputs from our UTXO set so that we can make sure the transaction is valid.
|
||||
const sourceOutputs = tx.getInputs().map((input) => {
|
||||
const utxoId = `${binToHex(input.outpointTransactionHash)}:${
|
||||
input.outpointIndex
|
||||
}`;
|
||||
|
||||
console.log(utxoId);
|
||||
|
||||
return utxoSet[utxoId];
|
||||
});
|
||||
|
||||
console.log('sourceOutputs', sourceOutputs);
|
||||
|
||||
// Validate the transaction.
|
||||
BlockchainLocal.validateTransaction(tx, sourceOutputs);
|
||||
}
|
||||
@@ -333,9 +327,6 @@ export class BlockchainLocal implements IBlockchain {
|
||||
* @todo Consider moving this to Transaction Primitive. Trade-off is that it's probably big. Maybe standalone util?
|
||||
*/
|
||||
static validateTransaction(tx: Transaction, sourceOutputs: Array<Output>) {
|
||||
console.log(tx);
|
||||
console.log(sourceOutputs);
|
||||
|
||||
const virtualMachine = createVirtualMachineBCH();
|
||||
const virtualMachineResult = virtualMachine.verify({
|
||||
transaction: {
|
||||
|
||||
Reference in New Issue
Block a user