code: def verify_certificate_chain(cert_str, trusted_certs, ignore_self_signed=True):
      
  
      # Load the certificate
      certificate = crypto.load_certificate(crypto.FILETYPE_ASN1, cert_str)
  
      # Create a certificate store and add your trusted certs
      try:
          store = crypto.X509Store()
  
          if ignore_self_signed:
              store.add_cert(certificate)
  
          # Assuming the certificates are in PEM format in a trusted_certs list
          for _cert in trusted_certs:
              store.add_cert(
                  crypto.load_certificate(crypto.FILETYPE_ASN1, _cert))
  
          # Create a certificate context using the store and the certificate
          store_ctx = crypto.X509StoreContext(store, certificate)
  
          # Verify the certificate, returns None if certificate is not valid
          store_ctx.verify_certificate()
  
          return True
  
      except crypto.X509StoreContextError as e:
          raise AS2Exception('Partner Certificate Invalid: %s' % e.args[-1][-1])
docs: Verify a given certificate against a trust store