code: public X509Certificate retrieveSignerCertificate() throws Exception {
  
          // TO-DO: The real way is we get the keyStore value from
          // the audit Policy, get the audit truststore, retrieve
          // the public certificate and extract the public key from
          // the public certificate.   But since we don't have the WCCM
          // model change, we'll have to hardcode where the truststore is
  
          PublicKey publicKey = null;
  
          if (tc.isDebugEnabled()) {
              Tr.debug(tc, "signerAlias: " + signerAlias + " signerType: " + signerType + " signerProvider: " + signerProvider +
                           " signerKeyFileLocation: " + signerKeyFileLocation);
          }
  
          KeyStore ks = null;
          try {
              ks = KeyStore.getInstance("JKS");
              InputStream is = openKeyStore(signerKeyFileLocation);
              X509Certificate cert = (X509Certificate) ks.getCertificate(signerAlias);
  
              return cert;
          } catch (java.net.MalformedURLException me) {
              if (tc.isDebugEnabled())
                  Tr.debug(tc, "Exception opening keystore: malformed URL", me.getMessage());
              throw new Exception(me.getMessage());
          } catch (java.security.KeyStoreException ke) {
              if (tc.isDebugEnabled())
                  Tr.debug(tc, "Exception opening keystore.", ke.getMessage());
              throw new Exception(ke.getMessage());
          } catch (java.io.IOException ioe) {
              if (tc.isDebugEnabled())
                  Tr.debug(tc, "Exception opening keystore.", ioe.getMessage());
              throw new Exception(ioe.getMessage());
  
          }
      }
docs: <p>
  The <code>retrieveSignerCertificate</code> method retrieves the Administrator's certificate used
  to sign the audit records.
  </p>
  
  @return an X509Certificate