code: def _verify_signature(certificate_list, crl_issuer):
      
  
      signature_algo = certificate_list['signature_algorithm'].signature_algo
      hash_algo = certificate_list['signature_algorithm'].hash_algo
  
      if signature_algo == 'rsassa_pkcs1v15':
          verify_func = asymmetric.rsa_pkcs1v15_verify
      elif signature_algo == 'dsa':
          verify_func = asymmetric.dsa_verify
      elif signature_algo == 'ecdsa':
          verify_func = asymmetric.ecdsa_verify
      else:
          raise CRLValidationError(pretty_message(
              '''
              Unable to verify the CertificateList since the signature uses the
              unsupported algorithm %s
              ''',
              signature_algo
          ))
  
      try:
          key_object = asymmetric.load_certificate(crl_issuer)
          verify_func(
              key_object,
              certificate_list['signature'].native,
              certificate_list['tbs_cert_list'].dump(),
              hash_algo
          )
      except (oscrypto.errors.SignatureError):
          raise CRLValidationError('Unable to verify the signature of the CertificateList')
docs: Verifies the digital signature on an asn1crypto.crl.CertificateList object
  
      :param certificate_list:
          An asn1crypto.crl.CertificateList object
  
      :param crl_issuer:
          An asn1crypto.x509.Certificate object of the CRL issuer
  
      :raises:
          certvalidator.errors.CRLValidationError - when the signature is invalid or uses an unsupported algorithm