code: public void setIssuer(String issuerDN) throws IOException {
          if (issuerDN == null) {
              issuer = null;
          } else {
              issuer = new X500Name(issuerDN).asX500Principal();
          }
      }
docs: <strong>Denigrated</strong>, use {@linkplain #setIssuer(X500Principal)}
  or {@linkplain #setIssuer(byte[])} instead. This method should not be
  relied on as it can fail to match some certificates because of a loss of
  encoding information in the
  <a href="http://www.ietf.org/rfc/rfc2253.txt">RFC 2253</a> String form
  of some distinguished names.
  <p>
  Sets the issuer criterion. The specified distinguished name
  must match the issuer distinguished name in the
  {@code X509Certificate}. If {@code null}, any issuer
  distinguished name will do.
  <p>
  If {@code issuerDN} is not {@code null}, it should contain a
  distinguished name, in RFC 2253 format.
  
  @param issuerDN a distinguished name in RFC 2253 format
  (or {@code null})
  @throws IOException if a parsing error occurs (incorrect form for DN)