public Extension(DerValue derVal) throws IOException { DerInputStream in = derVal.toDerInputStream(); extensionId = in.getOID(); DerValue val = in.getDerValue(); if (val.tag == DerValue.tag_Boolean) { critical = val.getBoolean(); val = in.getDerValue(); extensionValue = val.getOctetString(); } else { critical = false; extensionValue = val.getOctetString(); } }