def verify_signature(uid, signed_cert_file_name, issuing_address):
logging.info('<STR_LIT>', uid)<EOL>with open(signed_cert_file_name) as in_file:<EOL><INDENT>signed_cert = in_file.read()<EOL>signed_cert_json = json.loads(signed_cert)<EOL>to_verify = uid<EOL>signature = signed_cert_json['<STR_LIT>']<EOL>verified = verify_message(issuing_address, to_verify, signature)<EOL>if not verified:<EOL><INDENT>error_message = '<STR_LIT>'.format(uid)<EOL>raise UnverifiedSignatureError(error_message)<EOL><DEDENT>logging.info('<STR_LIT>')<EOL><DEDENT>
Verify the certificate signature matches the expected. Double-check the uid field in the certificate and use
VerifyMessage to confirm that the signature in the certificate matches the issuing_address.

Raises error is verification fails.

Raises UnverifiedSignatureError if signature is invalid

:param uid:
:param signed_cert_file_name:
:param issuing_address:
:return: