/** * @param SignedMessage $signedMessage * @param PayToPubKeyHashAddress $address * @return bool */ public function verify(SignedMessage $signedMessage, PayToPubKeyHashAddress $address) { $hash = $this->calculateMessageHash($signedMessage->getMessage()); $publicKey = $this->ecAdapter->recoverCompact($hash, $signedMessage->getCompactSignature()); return $publicKey->getAddress()->getHash() == $address->getHash(); }