code: public static synchronized X509CertificatePair generateCertificatePair
              (byte[] encoded) throws CertificateException {
          Object key = new Cache.EqualByteArray(encoded);
          X509CertificatePair pair = cache.get(key);
          if (pair != null) {
              return pair;
          }
          pair = new X509CertificatePair(encoded);
          key = new Cache.EqualByteArray(pair.encoded);
          cache.put(key, pair);
          return pair;
      }
docs: Create a X509CertificatePair from its encoding. Uses cache lookup
  if possible.