Example #1
0
 /**
  * @param UtxoView $utxoView
  * @param TransactionInterface $tx
  * @return ScriptValidationInterface
  */
 public function queue(UtxoView $utxoView, TransactionInterface $tx)
 {
     for ($i = 0, $c = count($tx->getInputs()); $i < $c; $i++) {
         $output = $utxoView->fetchByInput($tx->getInput($i))->getOutput();
         $witness = isset($tx->getWitnesses()[$i]) ? $tx->getWitness($i) : null;
         $this->results[] = $this->consensus->verify($tx, $output->getScript(), $i, $output->getValue(), $witness);
     }
     return $this;
 }
Example #2
0
 /**
  * @param ConsensusInterface $consensus
  * @param int $nInput
  * @param TransactionOutputInterface $output
  * @return bool
  */
 public function checkSignature(ConsensusInterface $consensus, $nInput, TransactionOutputInterface $output)
 {
     $witnesses = $this->transaction->getWitnesses();
     $witness = isset($witnesses[$nInput]) ? $witnesses[$nInput] : null;
     return $consensus->verify($this->transaction, $output->getScript(), $nInput, $output->getValue(), $witness);
 }