List of usage examples for org.bouncycastle.asn1.x509 X509CertificateStructure getInstance
public static X509CertificateStructure getInstance(Object obj)
From source file:com.novosec.pkix.asn1.cmp.CAKeyUpdAnnContent.java
License:Open Source License
public CAKeyUpdAnnContent(ASN1Sequence seq) { this.oldWithNew = X509CertificateStructure.getInstance(seq.getObjectAt(0)); this.newWithOld = X509CertificateStructure.getInstance(seq.getObjectAt(1)); this.newWithNew = X509CertificateStructure.getInstance(seq.getObjectAt(2)); }
From source file:com.novosec.pkix.asn1.cmp.CertOrEncCert.java
License:Open Source License
public static CertOrEncCert getInstance(ASN1TaggedObject tagObj, boolean explicit) { int tag = tagObj.getTagNo(); switch (tag) { case 0://from ww w . j a va 2 s. com return new CertOrEncCert(X509CertificateStructure.getInstance(tagObj.getObject()), 0); case 1: return new CertOrEncCert(EncryptedValue.getInstance(tagObj.getObject()), 1); } throw new IllegalArgumentException("unknown tag: " + tag); }
From source file:com.novosec.pkix.asn1.cmp.CertRepMessage.java
License:Open Source License
public CertRepMessage(ASN1Sequence seq) { Enumeration e = seq.getObjects(); Object obj = e.nextElement(); if (obj instanceof ASN1TaggedObject) { ASN1Sequence s = (ASN1Sequence) (((ASN1TaggedObject) obj).getObject()); for (int i = 0; i < s.size(); i++) { caPubs.add(X509CertificateStructure.getInstance(s.getObjectAt(i))); }//from w w w.jav a2 s . c o m obj = e.nextElement(); } ASN1Sequence s = (ASN1Sequence) obj; for (int i = 0; i < s.size(); i++) { responses.add(CertResponse.getInstance(s.getObjectAt(i))); } }
From source file:com.novosec.pkix.asn1.cmp.KeyRecRepContent.java
License:Open Source License
public KeyRecRepContent(ASN1Sequence seq) { Enumeration e = seq.getObjects(); status = PKIStatusInfo.getInstance(e.nextElement()); while (e.hasMoreElements()) { ASN1TaggedObject tagObj = (ASN1TaggedObject) e.nextElement(); switch (tagObj.getTagNo()) { case 0:/*w w w . j a va 2s . c om*/ newSigCert = X509CertificateStructure.getInstance(tagObj.getObject()); break; case 1: { ASN1Sequence s = (ASN1Sequence) tagObj.getObject(); for (int i = 0; i < s.size(); i++) { caCerts.addElement(X509CertificateStructure.getInstance(s.getObjectAt(i))); } } break; case 2: { ASN1Sequence s = (ASN1Sequence) tagObj.getObject(); for (int i = 0; i < s.size(); i++) { keyPairHists.addElement(CertifiedKeyPair.getInstance(s.getObjectAt(i))); } } break; } } }
From source file:com.novosec.pkix.asn1.cmp.PKIBody.java
License:Open Source License
public static PKIBody getInstance(ASN1TaggedObject tagObj, boolean explicit) { int tag = tagObj.getTagNo(); switch (tag) { case 0:// w ww . j ava 2s. c o m return new PKIBody(CertReqMessages.getInstance(tagObj.getObject()), 0); case 1: return new PKIBody(CertRepMessage.getInstance(tagObj.getObject()), 1); case 2: return new PKIBody(CertReqMessages.getInstance(tagObj.getObject()), 2); case 3: return new PKIBody(CertRepMessage.getInstance(tagObj.getObject()), 3); case 4: return new PKIBody(tagObj.getObject(), 4); case 5: return new PKIBody(POPODecKeyChallContent.getInstance(tagObj.getObject()), 5); case 6: return new PKIBody(POPODecKeyRespContent.getInstance(tagObj.getObject()), 6); case 7: return new PKIBody(CertReqMessages.getInstance(tagObj.getObject()), 7); case 8: return new PKIBody(CertRepMessage.getInstance(tagObj.getObject()), 8); case 9: return new PKIBody(CertReqMessages.getInstance(tagObj.getObject()), 9); case 10: return new PKIBody(KeyRecRepContent.getInstance(tagObj.getObject()), 10); case 11: return new PKIBody(RevReqContent.getInstance(tagObj.getObject()), 11); case 12: return new PKIBody(RevRepContent.getInstance(tagObj.getObject()), 12); case 13: return new PKIBody(CertReqMessages.getInstance(tagObj.getObject()), 13); case 14: return new PKIBody(CertRepMessage.getInstance(tagObj.getObject()), 14); case 15: return new PKIBody(CAKeyUpdAnnContent.getInstance(tagObj.getObject()), 15); case 16: return new PKIBody(X509CertificateStructure.getInstance(tagObj.getObject()), 16); case 17: return new PKIBody(RevAnnContent.getInstance(tagObj.getObject()), 17); case 18: return new PKIBody(CRLAnnContent.getInstance(tagObj.getObject()), 18); case 19: return new PKIBody(tagObj.getObject(), 19); case 20: return new PKIBody(tagObj.getObject(), 20); case 21: return new PKIBody(GenMsgContent.getInstance(tagObj.getObject()), 21); case 22: return new PKIBody(GenRepContent.getInstance(tagObj.getObject()), 22); case 23: return new PKIBody(ErrorMsgContent.getInstance(tagObj.getObject()), 23); case 24: return new PKIBody(CertConfirmContent.getInstance(tagObj.getObject()), 24); } throw new IllegalArgumentException("unknown tag: " + tag); }
From source file:com.novosec.pkix.asn1.cmp.PKIMessage.java
License:Open Source License
public PKIMessage(ASN1Sequence seq) { Enumeration e = seq.getObjects(); /*/* w w w. j av a2 s . com*/ header = PKIHeader.getInstance( e.nextElement() ); body = PKIBody.getInstance( (ASN1TaggedObject)e.nextElement() ); */ DEREncodable derHeader = (DEREncodable) e.nextElement(); DEREncodable derBody = (DEREncodable) e.nextElement(); try { //store protected part in unmodified form... ASN1EncodableVector v = new ASN1EncodableVector(); v.add(derHeader); v.add(derBody); ByteArrayOutputStream bao = new ByteArrayOutputStream(); DEROutputStream out = new DEROutputStream(bao); out.writeObject(new DERSequence(v)); protectedBytes = bao.toByteArray(); } catch (Exception ex) { } header = PKIHeader.getInstance(derHeader); body = PKIBody.getInstance((ASN1TaggedObject) derBody); while (e.hasMoreElements()) { ASN1TaggedObject tagObj = (ASN1TaggedObject) e.nextElement(); switch (tagObj.getTagNo()) { case 0: protection = DERBitString.getInstance(tagObj.getObject()); break; case 1: ASN1Sequence s = (ASN1Sequence) tagObj.getObject(); for (int i = 0; i < s.size(); i++) { extraCerts.addElement(X509CertificateStructure.getInstance(s.getObjectAt(i))); } break; } } }
From source file:eu.europa.ec.markt.dss.validation.cades.CAdESCertificateSource.java
License:Open Source License
@Override @SuppressWarnings("unchecked") public List<X509Certificate> getCertificates() { List<X509Certificate> list = new ArrayList<X509Certificate>(); try {/*ww w . j a va 2 s . c o m*/ if (!onlyExtended) { LOG.fine(cmsSignedData.getCertificates().getMatches(null).size() + " certificate in collection"); for (X509CertificateHolder ch : (Collection<X509CertificateHolder>) cmsSignedData.getCertificates() .getMatches(null)) { X509Certificate c = new X509CertificateObject(ch.toASN1Structure()); LOG.fine("Certificate for subject " + c.getSubjectX500Principal()); if (!list.contains(c)) { list.add(c); } } } // Add certificates in CAdES-XL certificate-values inside SignerInfo attribute if present SignerInformation si = cmsSignedData.getSignerInfos().get(signerId); if (si != null && si.getUnsignedAttributes() != null && si.getUnsignedAttributes().get(PKCSObjectIdentifiers.id_aa_ets_certValues) != null) { DERSequence seq = (DERSequence) si.getUnsignedAttributes() .get(PKCSObjectIdentifiers.id_aa_ets_certValues).getAttrValues().getObjectAt(0); for (int i = 0; i < seq.size(); i++) { X509CertificateStructure cs = X509CertificateStructure.getInstance(seq.getObjectAt(i)); X509Certificate c = new X509CertificateObject(cs); if (!list.contains(c)) { list.add(c); } } } } catch (CertificateParsingException e) { throw new RuntimeException(e); } catch (StoreException e) { throw new RuntimeException(e); } return list; }
From source file:net.jradius.client.auth.EAPTLSAuthenticator.java
License:Open Source License
/** * Initializs the SSL layer./* ww w .j a v a 2 s . co m*/ * @throws Exception * @throws FileNotFoundException */ public void init() throws RadiusException { try { if (getKeyFile() != null) { keyManagers = KeyStoreUtil.loadKeyManager(getKeyFileType(), new FileInputStream(getKeyFile()), getKeyPassword()); } if (getTrustAll().booleanValue()) { trustManagers = KeyStoreUtil.trustAllManager(); } else if (getCaFile() != null) { trustManagers = KeyStoreUtil.loadTrustManager(getCaFileType(), new FileInputStream(getCaFile()), getCaPassword()); } tlsClient = new DefaultTlsClient(verifyer); try { if (keyManagers != null && keyManagers.length > 0) { X509CertificateStructure[] certs = null; X509Certificate[] certChain = ((X509KeyManager) keyManagers[0]).getCertificateChain(""); PrivateKey key = ((X509KeyManager) keyManagers[0]).getPrivateKey(""); Vector tmp = new Vector(); for (X509Certificate cert : certChain) { ByteArrayInputStream bis = new ByteArrayInputStream(cert.getEncoded()); ASN1InputStream ais = new ASN1InputStream(bis); DERObject o = ais.readObject(); tmp.addElement(X509CertificateStructure.getInstance(o)); if (bis.available() > 0) { throw new IllegalArgumentException( "Sorry, there is garbage data left after the certificate"); } } certs = new X509CertificateStructure[tmp.size()]; for (int i = 0; i < tmp.size(); i++) { certs[i] = (X509CertificateStructure) tmp.elementAt(i); } tlsClient.enableClientAuthentication(new Certificate(certs), createKey(key.getEncoded())); } } catch (Exception e) { e.printStackTrace(); } handler.setSendCertificate(isCertificateRequired()); handler.setKeyManagers(keyManagers); handler.setTrustManagers(trustManagers); } catch (Exception e) { e.printStackTrace(); } /* try { KeyManager keyManagers[] = null; TrustManager trustManagers[] = null; if (getKeyFile() != null) { KeyStore ksKeys = KeyStore.getInstance(getKeyFileType()); ksKeys.load(new FileInputStream(getKeyFile()), getKeyPassword().toCharArray()); KeyManagerFactory kmf = KeyManagerFactory.getInstance("SunX509"); kmf.init(ksKeys, getKeyPassword().toCharArray()); keyManagers = kmf.getKeyManagers(); } if (getCaFile() != null) { KeyStore caKeys = KeyStore.getInstance(getCaFileType()); caKeys.load(new FileInputStream(getCaFile()), getCaPassword().toCharArray()); TrustManagerFactory tmf = TrustManagerFactory.getInstance("SunX509"); tmf.init(caKeys); trustManagers = tmf.getTrustManagers(); } else { if (getTrustAll().booleanValue()) { trustManagers = new TrustManager[]{ new NoopX509TrustManager() }; } } } catch (Exception e) { throw new RadiusException(e); } */ }
From source file:org.italiangrid.voms.asn1.VOMSACUtils.java
License:Apache License
/** * Deserializes the VOMS ACCerts extension * //from w w w. jav a2s.c om * @param ac * the VOMS {@link X509AttributeCertificateHolder} * @return the parsed array of {@link X509Certificate} */ private static X509Certificate[] deserializeACCerts(X509AttributeCertificateHolder ac) { List<X509Certificate> certs = new ArrayList<X509Certificate>(); X509Extension e = ac.getExtension(VOMS_CERTS_OID); if (e == null) return null; ASN1Sequence certSeq = (ASN1Sequence) e.getParsedValue(); if (certSeq.size() != 1) raiseACNonConformantError("unsupported accerts format."); // Down one level certSeq = (ASN1Sequence) certSeq.getObjectAt(0); @SuppressWarnings("unchecked") Enumeration<DERSequence> encodedCerts = certSeq.getObjects(); CertificateFactory cf = null; try { cf = CertificateFactory.getInstance("X.509", BouncyCastleProvider.PROVIDER_NAME); } catch (Exception ex) { throw new VOMSError("Certificate factory creation error: " + ex.getMessage(), ex); } while (encodedCerts.hasMoreElements()) { DERSequence s = encodedCerts.nextElement(); X509CertificateObject certObj = null; byte[] certData = null; X509Certificate theCert = null; try { certObj = new X509CertificateObject( X509CertificateStructure.getInstance(ASN1Sequence.getInstance(s))); certData = certObj.getEncoded(); theCert = (X509Certificate) cf.generateCertificate(new ByteArrayInputStream(certData)); } catch (CertificateParsingException ex) { throw new VOMSError("Certificate parsing error: " + ex.getMessage(), ex); } catch (CertificateEncodingException ex) { throw new VOMSError("Certificate encoding error: " + ex.getMessage(), ex); } catch (CertificateException ex) { throw new VOMSError("Error generating certificate from parsed data: " + ex.getMessage(), ex); } certs.add(theCert); } return certs.toArray(new X509Certificate[certs.size()]); }
From source file:org.mailster.core.crypto.CertificateUtilities.java
License:Open Source License
public static X509Extensions getExtensions(X509Certificate cert) throws Exception { ByteArrayInputStream bis = new ByteArrayInputStream(cert.getEncoded()); ASN1InputStream ais = new ASN1InputStream(bis); DERObject o = ais.readObject();// w w w. j a v a 2 s . c o m X509CertificateStructure struct = X509CertificateStructure.getInstance(o); return struct.getTBSCertificate().getExtensions(); }