Пример #1
0
 /**
  * @param BufferInterface $signature
  * @return bool
  * @throws ScriptRuntimeException
  * @throws \Exception
  */
 public function isLowDerSignature(BufferInterface $signature)
 {
     if (!$this->isValidSignatureEncoding($signature)) {
         throw new ScriptRuntimeException(Interpreter::VERIFY_DERSIG, 'Signature with incorrect encoding');
     }
     $binary = $signature->getBinary();
     $nLenR = ord($binary[3]);
     $nLenS = ord($binary[5 + $nLenR]);
     $s = $signature->slice(6 + $nLenR, $nLenS)->getInt();
     return $this->adapter->validateSignatureElement($s, true);
 }