def _load_cert_chain(self, cert_url, x509_backend=default_backend()):
        # type: (str, X509Backend) -> Certificate
        """Loads the certificate chain from the URL.

        This method loads the certificate chain from the certificate
        cache. If there is a cache miss, the certificate chain is
        loaded from the certificate URL using the
        :py:func:`cryptography.x509.load_pem_x509_certificate` method.
        The x509 backend is set as default to the
        :py:class:`cryptography.hazmat.backends.default_backend`
        instance. A :py:class:`VerificationException` is raised if the
        certificate cannot be loaded.

        :param cert_url: URL for retrieving certificate chain
        :type cert_url: str
        :param x509_backend: Backend to be used, for loading pem x509
            certificate
        :type x509_backend:
            cryptography.hazmat.backends.interfaces.X509Backend
        :return: Certificate chain loaded from cache or URL
        :rtype cryptography.x509.Certificate
        :raises: :py:class:`VerificationException` if unable to load the
            certificate
        """
        try:
            if cert_url in self._cert_cache:
                return self._cert_cache.get(cert_url)
            else:
                with urlopen(cert_url) as cert_response:
                    cert_data = cert_response.read()
                    x509_certificate = load_pem_x509_certificate(
                        cert_data, x509_backend)
                    self._cert_cache[cert_url] = x509_certificate
                    return x509_certificate
        except ValueError as e:
            raise VerificationException(
                "Unable to load certificate from URL", e)
Loads the certificate chain from the URL.

        This method loads the certificate chain from the certificate
        cache. If there is a cache miss, the certificate chain is
        loaded from the certificate URL using the
        :py:func:`cryptography.x509.load_pem_x509_certificate` method.
        The x509 backend is set as default to the
        :py:class:`cryptography.hazmat.backends.default_backend`
        instance. A :py:class:`VerificationException` is raised if the
        certificate cannot be loaded.

        :param cert_url: URL for retrieving certificate chain
        :type cert_url: str
        :param x509_backend: Backend to be used, for loading pem x509
            certificate
        :type x509_backend:
            cryptography.hazmat.backends.interfaces.X509Backend
        :return: Certificate chain loaded from cache or URL
        :rtype cryptography.x509.Certificate
        :raises: :py:class:`VerificationException` if unable to load the
            certificate