@is_connected
def signature_verify(self, message, signature, uid=None, cryptographic_parameters=None):
    '\n        Verify a message signature using the specified signing key.\n\n        Args:\n            message (bytes): The bytes of the signed message. Required.\n            signature (bytes): The bytes of the message signature. Required.\n            uid (string): The unique ID of the signing key to use.\n                Optional, defaults to None.\n            cryptographic_parameters (dict): A dictionary containing various\n                cryptographic settings to be used for signature verification\n                (e.g., cryptographic algorithm, hashing algorithm, and/or\n                digital signature algorithm). Optional, defaults to None.\n\n        Returns:\n            ValidityIndicator: An enumeration indicating whether or not the\n                signature was valid.\n\n        Raises:\n            ClientConnectionNotOpen: if the client connection is unusable\n            KmipOperationFailure: if the operation result is a failure\n            TypeError: if the input arguments are invalid\n\n        Notes:\n            The cryptographic_parameters argument is a dictionary that can\n            contain various key/value pairs. For a list of allowed pairs,\n            see the documentation for encrypt/decrypt.\n        '
    if (not isinstance(message, six.binary_type)):
        raise TypeError('Message must be bytes.')
    if (not isinstance(signature, six.binary_type)):
        raise TypeError('Signature must be bytes.')
    if (uid is not None):
        if (not isinstance(uid, six.string_types)):
            raise TypeError('Unique identifier must be a string.')
    if (cryptographic_parameters is not None):
        if (not isinstance(cryptographic_parameters, dict)):
            raise TypeError('Cryptographic parameters must be a dictionary.')
    cryptographic_parameters = self._build_cryptographic_parameters(cryptographic_parameters)
    result = self.proxy.signature_verify(message, signature, uid, cryptographic_parameters)
    status = result.get('result_status')
    if (status == enums.ResultStatus.SUCCESS):
        return result.get('validity_indicator')
    else:
        raise exceptions.KmipOperationFailure(status, result.get('result_reason'), result.get('result_message'))
Verify a message signature using the specified signing key.

Args:
    message (bytes): The bytes of the signed message. Required.
    signature (bytes): The bytes of the message signature. Required.
    uid (string): The unique ID of the signing key to use.
        Optional, defaults to None.
    cryptographic_parameters (dict): A dictionary containing various
        cryptographic settings to be used for signature verification
        (e.g., cryptographic algorithm, hashing algorithm, and/or
        digital signature algorithm). Optional, defaults to None.

Returns:
    ValidityIndicator: An enumeration indicating whether or not the
        signature was valid.

Raises:
    ClientConnectionNotOpen: if the client connection is unusable
    KmipOperationFailure: if the operation result is a failure
    TypeError: if the input arguments are invalid

Notes:
    The cryptographic_parameters argument is a dictionary that can
    contain various key/value pairs. For a list of allowed pairs,
    see the documentation for encrypt/decrypt.
@is_connected
def signature_verify(self, message, signature, uid=None, cryptographic_parameters=None):
    '\n        Verify a message signature using the specified signing key.\n\n        Args:\n            message (bytes): The bytes of the signed message. Required.\n            signature (bytes): The bytes of the message signature. Required.\n            uid (string): The unique ID of the signing key to use.\n                Optional, defaults to None.\n            cryptographic_parameters (dict): A dictionary containing various\n                cryptographic settings to be used for signature verification\n                (e.g., cryptographic algorithm, hashing algorithm, and/or\n                digital signature algorithm). Optional, defaults to None.\n\n        Returns:\n            ValidityIndicator: An enumeration indicating whether or not the\n                signature was valid.\n\n        Raises:\n            ClientConnectionNotOpen: if the client connection is unusable\n            KmipOperationFailure: if the operation result is a failure\n            TypeError: if the input arguments are invalid\n\n        Notes:\n            The cryptographic_parameters argument is a dictionary that can\n            contain various key/value pairs. For a list of allowed pairs,\n            see the documentation for encrypt/decrypt.\n        '
    if (not isinstance(message, six.binary_type)):
        raise TypeError('Message must be bytes.')
    if (not isinstance(signature, six.binary_type)):
        raise TypeError('Signature must be bytes.')
    if (uid is not None):
        if (not isinstance(uid, six.string_types)):
            raise TypeError('Unique identifier must be a string.')
    if (cryptographic_parameters is not None):
        if (not isinstance(cryptographic_parameters, dict)):
            raise TypeError('Cryptographic parameters must be a dictionary.')
    cryptographic_parameters = self._build_cryptographic_parameters(cryptographic_parameters)
    result = self.proxy.signature_verify(message, signature, uid, cryptographic_parameters)
    status = result.get('result_status')
    if (status == enums.ResultStatus.SUCCESS):
        return result.get('validity_indicator')
    else:
        raise exceptions.KmipOperationFailure(status, result.get('result_reason'), result.get('result_message'))