code: private static ASN1Primitive getIssuer(byte[] enc) {
          try {
              ASN1InputStream in = new ASN1InputStream(new ByteArrayInputStream(enc));
              ASN1Sequence seq = (ASN1Sequence)in.readObject();
              return (ASN1Primitive)seq.getObjectAt(seq.getObjectAt(0) instanceof DERTaggedObject ? 3 : 2);
          }
          catch (IOException e) {
              throw new ExceptionConverter(e);
          }
      }
docs: Get the "issuer" from the TBSCertificate bytes that are passed in
  @param enc a TBSCertificate in a byte array
  @return a DERObject