code: protected String findCertInfo(X509Certificate[] x509certificates) throws NamingException {
          if (x509certificates != null && x509certificates.length != 0) {
              // Only ever use the first certificate, as this si the client supplied one.
              // Further ones are trust stores and CAs that have signed the first cert.
              Principal subject = x509certificates[0].getSubjectDN();
              if (subject != null && subject.getName() != null) {
                  List<Rdn> rdns;
                  try {
                      rdns = new LdapName(subject.getName()).getRdns();
                  }
                  catch (InvalidNameException ine) {
                      return null;
                  }
                  return certInfoExtractor.extractCertInfo(rdns);
              }
          }
          return null;
      }
docs: Find an the info from the cert chain provided. <code>null</code> if none found