コード例 #1
0
 def verify(self, message):
     pub = PublicKey(self.pub_key)
     message = VarInt(len(message)).encode() + message
     # LOGGER.debug("Comparing with %r" % (MESSAGE_TEMPLATE.format(message).encode()))
     try:
         good = pub.verify(self.sig_ser, MESSAGE_TEMPLATE.format(message).encode())
     except Exception:
         LOGGER.exception("Verification failed")
         good = False
     return good
コード例 #2
0
 def verify(self, message):
     pub = PublicKey(self.pub_key)
     message = VarInt(len(message)).encode() + message
     try:
         # sig_raw = pub.ecdsa_deserialize(self.sig_ser)
         good = pub.verify(self.sig_ser, Define.MESSAGE_TEMPLATE % message)
     except Exception:
         print("Verification failed")
         good = False
     return good
コード例 #3
0
ファイル: data.py プロジェクト: aleph-im/nuls2-python
 def verify(self, message):
     pub = PublicKey(self.pub_key)
     message = VarInt(len(message)).encode() + message
     LOGGER.debug("Comparing with %r" % (MESSAGE_TEMPLATE % message))
     try:
         # sig_raw = pub.ecdsa_deserialize(self.sig_ser)
         good = pub.verify(self.sig_ser, MESSAGE_TEMPLATE % message)
     except Exception:
         LOGGER.exception("Verification failed")
         good = False
     return good
コード例 #4
0
ファイル: utils.py プロジェクト: tsifrer/ark
def verify_hash(message, signature, public_key):
    if not isinstance(signature, bytes):
        raise TypeError("signature must be bytes")
    if not isinstance(public_key, bytes):
        raise TypeError("public_key must be bytes")

    pub_key = PublicKey(public_key)
    try:
        is_verified = pub_key.verify(signature, message)
    except ValueError as e:
        logger.error(str(e))
        logger.error("Signature that could not be parsed %s, message: %s",
                     signature, message)
        return False
    return is_verified
コード例 #5
0
ファイル: move.py プロジェクト: earlbread/nekoyume
    def valid(self):
        """Check if this object is valid or not"""
        if not self.signature:
            return False

        assert isinstance(self.signature, bytes)
        assert 68 <= len(self.signature) <= 71
        assert isinstance(self.user_public_key, bytes)
        assert len(self.user_public_key) == 33
        assert isinstance(self.user_address, str)
        assert re.match(r'^(?:0[xX])?[0-9a-fA-F]{40}$', self.user_address)
        public_key = PublicKey(self.user_public_key)
        verified = public_key.verify(
            self.signature,
            self.serialize(include_signature=False),
        )
        if not verified:
            return False

        if get_address(public_key) != self.user_address:
            return False

        return self.id == self.hash