code: public CertStore getCaCertificate(final String profile)
              throws ClientException {
          LOGGER.debug("Retrieving current CA certificate");
          // NON-TRANSACTIONAL
          // CA and RA public key distribution
          final GetCaCertRequest req = new GetCaCertRequest(profile);
          final Transport trans = transportFactory.forMethod(Method.GET, url);
  
          CertStore store;
          try {
              store = trans.sendRequest(req, new GetCaCertResponseHandler());
          } catch (TransportException e) {
              throw new ClientException(e);
          }
          CertStoreInspector certs = inspectorFactory.getInstance(store);
          verifyCA(certs.getIssuer());
          verifyRA(certs.getIssuer(), certs.getRecipient());
          verifyRA(certs.getIssuer(), certs.getSigner());
  
          return store;
      }
docs: Retrieves the certificates used by the SCEP server.
  <p>
  This method queries the server for the certificates it will use in a SCEP
  message exchange. If the SCEP server represents a single entity, only a
  single CA certificate will be returned. If the SCEP server supports
  multiple entities (for example, if it uses a separate entity for signing
  SCEP messages), additional RA certificates will also be returned.
  <p>
  This method provides support for SCEP servers with multiple profiles.
  
  @param profile
  the SCEP server profile.
  @return the certificate store.
  @throws ClientException
  if any client error occurs.
  @see CertStoreInspector