Beispiel #1
0
 def ecdsa_verify(self, message_hash: bytes, signature: BaseSignature,
                  public_key: _PublicKey) -> bool:
     validate_message_hash(message_hash)
     if not isinstance(public_key, PublicKey):
         raise ValidationError(
             "The `public_key` must be an instance of `eth_keys.datatypes.PublicKey`"
         )
     if not isinstance(signature, BaseSignature):
         raise ValidationError(
             "The `signature` must be an instance of `eth_keys.datatypes.BaseSignature`"
         )
     return self.backend.ecdsa_verify(message_hash, signature, public_key)
Beispiel #2
0
 def ecdsa_recover(self, message_hash: bytes,
                   signature: _Signature) -> _PublicKey:
     validate_message_hash(message_hash)
     if not isinstance(signature, Signature):
         raise ValidationError(
             "The `signature` must be an instance of `eth_keys.datatypes.Signature`"
         )
     public_key = self.backend.ecdsa_recover(message_hash, signature)
     if not isinstance(public_key, _PublicKey):
         raise ValidationError(
             "Backend returned an invalid public_key.  Return value must be "
             "an instance of `eth_keys.datatypes.PublicKey`")
     return public_key
Beispiel #3
0
 def ecdsa_sign(self, message_hash: bytes,
                private_key: _PrivateKey) -> _Signature:
     validate_message_hash(message_hash)
     if not isinstance(private_key, PrivateKey):
         raise ValidationError(
             "The `private_key` must be an instance of `eth_keys.datatypes.PrivateKey`"
         )
     signature = self.backend.ecdsa_sign(message_hash, private_key)
     if not isinstance(signature, Signature):
         raise ValidationError(
             "Backend returned an invalid signature.  Return value must be "
             "an instance of `eth_keys.datatypes.Signature`")
     return signature
Beispiel #4
0
 def ecdsa_sign(
         self,
         message_hash,  # type: bytes
         private_key  # type: Union[PrivateKey, bytes]
 ):
     # type: (...) -> Optional[Signature]
     validate_message_hash(message_hash)
     if not isinstance(private_key, PrivateKey):
         raise ValidationError(
             "The `private_key` must be an instance of `eth_keys.datatypes.PrivateKey`"
         )
     signature = self.backend.ecdsa_sign(message_hash, private_key)
     if not isinstance(signature, Signature):
         raise ValidationError(
             "Backend returned an invalid signature.  Return value must be "
             "an instance of `eth_keys.datatypes.Signature`")
     return signature
Beispiel #5
0
 def ecdsa_recover(
         self,
         message_hash,  # type: bytes
         signature  # type: Union[Signature, bytes]
 ):
     # type: (...) -> Optional[PublicKey]
     validate_message_hash(message_hash)
     if not isinstance(signature, Signature):
         raise ValidationError(
             "The `signature` must be an instance of `eth_keys.datatypes.Signature`"
         )
     public_key = self.backend.ecdsa_recover(message_hash, signature)
     if not isinstance(public_key, PublicKey):
         raise ValidationError(
             "Backend returned an invalid public_key.  Return value must be "
             "an instance of `eth_keys.datatypes.PublicKey`")
     return public_key