code: public X509Certificate retrieveCertificate() throws java.io.IOException {
          PublicKey publicKey = null;
          KeyStore ks = null;
          try {
              ks = KeyStore.getInstance(_type, _provider);
              InputStream is = openKeyStore(_location);
              if (tc.isDebugEnabled())
                  Tr.debug(tc, "successfully opened the keystore at " + _location);
              ks.load(is, _password.toCharArray());
              if (tc.isDebugEnabled())
                  Tr.debug(tc, "successfully loaded the keystore at " + _location);
              X509Certificate cert = (X509Certificate) ks.getCertificate(_alias);
              return cert;
          } catch (java.security.NoSuchProviderException ne) {
              if (tc.isDebugEnabled())
                  Tr.debug(tc, "Exception opening keystore: no such provider.", ne.getMessage());
              throw new IOException(ne.getMessage());
          } catch (java.net.MalformedURLException me) {
              if (tc.isDebugEnabled())
                  Tr.debug(tc, "Exception opening keystore: malformed URL", me.getMessage());
              throw new IOException(me.getMessage());
          } catch (java.security.KeyStoreException ke) {
              if (tc.isDebugEnabled())
                  Tr.debug(tc, "Exception opening keystore.", ke.getMessage());
              throw new IOException(ke.getMessage());
          } catch (java.security.NoSuchAlgorithmException ae) {
              if (tc.isDebugEnabled())
                  Tr.debug(tc, "Exception opening keystore: no such algorithm", ae.getMessage());
              throw new IOException(ae.getMessage());
          } catch (java.security.cert.CertificateException ce) {
              if (tc.isDebugEnabled())
                  Tr.debug(tc, "Exception getting certificate.", ce.getMessage());
              throw new IOException(ce.getMessage());
          } catch (java.io.IOException ioe) {
              if (tc.isDebugEnabled())
                  Tr.debug(tc, "Exception opening keystore.", ioe.getMessage());
              throw new IOException(ioe.getMessage());
  
          }
      }
docs: <p>
  The <code>retrieveCertificate</code> method retrieves the Auditor's certificate used to encrypt
  the audit records.
  </p>
  
  @return an X509Certificate