catch (IOException ioe) { throw new CertificateParsingException();
return Collections.unmodifiableList(b);
  public List getExtendedKeyUsage() throws CertificateParsingException  {    byte[] ext = (byte[]) extensions.get("2.5.29.37");    if (ext == null)      return null;    LinkedList usages = new LinkedList();    try      {        DERReader der = new DERReader(new ByteArrayInputStream(ext));        DERValue seq = der.read();        if (!seq.isConstructed())          throw new CertificateParsingException();        int len = 0;        while (len < seq.getLength())          {            DERValue oid = der.read();            if (!(oid.getValue() instanceof OID))              throw new CertificateParsingException();            usages.add(oid.getValue().toString());            len += DERWriter.definiteEncodingSize(oid.getLength())                 + oid.getLength() + 1;          }      }    catch (IOException ioe)      {        throw new CertificateParsingException();      }    return usages;  }