Пример #1
0
 def sign(self, msg):
     if self.hash_alg.digest_size * 8 > self.prepared_key.curve.key_size:
         raise TypeError("this curve (%s) is too short "
                         "for your digest (%d)" % (self.prepared_key.curve.name,
                                                   8*self.hash_alg.digest_size))
     signature = self.prepared_key.sign(msg, ec.ECDSA(self.hash_alg()))
     order = (2 ** self.prepared_key.curve.key_size) - 1
     return sigencode_string(*sigdecode_der(signature, order), order=order)
 def sign(self, msg):
     if self.hash_alg.digest_size * 8 > self.prepared_key.curve.key_size:
         raise TypeError("this curve (%s) is too short "
                         "for your digest (%d)" % (self.prepared_key.curve.name,
                                                   8*self.hash_alg.digest_size))
     signature = self.prepared_key.sign(msg, ec.ECDSA(self.hash_alg()))
     order = (2 ** self.prepared_key.curve.key_size) - 1
     return sigencode_string(*sigdecode_der(signature, order), order=order)
Пример #3
0
def ecdsa_verify(pk, sig, msg):
    """Verify ecdsa"""
    r, s = sig
    sigg = util.sigencode_string(r, s, order)
    return pk.verify(sigg, msg)
Пример #4
0
def sig_der_to_string(sig, order):
    r, s = sigdecode_der(sig, order)
    return sigencode_string(r, s, order)