List of usage examples for org.bouncycastle.asn1.x509 GeneralName getName
public ASN1Encodable getName()
From source file:org.xwiki.crypto.pkix.params.x509certificate.extension.X509DirectoryName.java
License:Open Source License
/** * Create a new instance from a Bouncy Castle general name. * * @param name the Bouncy Castle general name. *//*from ww w.ja v a 2 s . com*/ public X509DirectoryName(GeneralName name) { super(X500Name.getInstance(name.getName())); if (name.getTagNo() != GeneralName.directoryName) { throw new IllegalArgumentException("Incompatible general name: " + name.getTagNo()); } }
From source file:org.xwiki.crypto.pkix.params.x509certificate.extension.X509DnsName.java
License:Open Source License
/** * Create a new instance from a Bouncy Castle general name. * * @param name the Bouncy Castle general name. *///from ww w. j a va 2 s.c o m public X509DnsName(GeneralName name) { if (name.getTagNo() != GeneralName.dNSName) { throw new IllegalArgumentException("Incompatible general name: " + name.getTagNo()); } this.domain = DERIA5String.getInstance(name.getName()).getString(); }
From source file:org.xwiki.crypto.pkix.params.x509certificate.extension.X509IpAddress.java
License:Open Source License
/** * Construct a IP address general name from an ip address. * * @param ipAddress the ip address./* w w w . j av a 2 s. com*/ */ public X509IpAddress(String ipAddress) { GeneralName name = new GeneralName(GeneralName.iPAddress, ipAddress); this.ipAddress = DEROctetString.getInstance(name.getName()).getOctets(); }
From source file:org.xwiki.crypto.pkix.params.x509certificate.extension.X509IpAddress.java
License:Open Source License
/** * Create a new instance from a Bouncy Castle general name. * * @param name the Bouncy Castle general name. *///from ww w .ja v a 2 s. c om public X509IpAddress(GeneralName name) { if (name.getTagNo() != GeneralName.iPAddress) { throw new IllegalArgumentException("Incompatible general name: " + name.getTagNo()); } this.ipAddress = DEROctetString.getInstance(name.getName()).getOctets(); }
From source file:org.xwiki.crypto.pkix.params.x509certificate.extension.X509Rfc822Name.java
License:Open Source License
/** * Create a new instance from a Bouncy Castle general name. * * @param name the Bouncy Castle general name. *///from w ww . j a v a2 s.c o m public X509Rfc822Name(GeneralName name) { this(DERIA5String.getInstance(name.getName()).getString()); if (name.getTagNo() != GeneralName.rfc822Name) { throw new IllegalArgumentException("Incompatible general name: " + name.getTagNo()); } }
From source file:org.xwiki.crypto.pkix.params.x509certificate.extension.X509URI.java
License:Open Source License
/** * Create a new instance from a Bouncy Castle general name. * * @param name the Bouncy Castle general name. *///from w w w. j a va 2s .c o m public X509URI(GeneralName name) { this(DERIA5String.getInstance(name.getName()).getString()); if (name.getTagNo() != GeneralName.uniformResourceIdentifier) { throw new IllegalArgumentException("Incompatible general name: " + name.getTagNo()); } }
From source file:se.tillvaxtverket.tsltrust.weblogic.content.CertificateInformation.java
License:Open Source License
private void addCertificateExtensionInfo(AaaCertificate cert, boolean unfold) { InfoTableSection section = certElements.addNewSection(tm, "Extensions", unfold); section.setSectionHeadingClasses(CERT_INFO); InfoTableElements extElements = section.getElements(); extFact.clear();// w w w . ja v a 2 s . c o m List<ExtensionInfo> extList = cert.getExtensionInfoList(); if (extList == null) { return; } section.setFoldedElement( "Extension summary (out of " + String.valueOf(extList.size()) + " total Extensions)"); section.setKeepFoldableElement(true); for (ExtensionInfo rawExt : extList) { //Basic Constraints if (rawExt.getExtensionType().equals(SupportedExtension.basicConstraints)) { BasicConstraints bc = BasicConstraints.getInstance(rawExt.getExtDataASN1()); extFact.add(getExtNameAndOID(rawExt), EXT_ATTR); // set property extFact.add("cA", String.valueOf(bc.isCA())); extFact.addExtension(extElements); } //Key Usage if (rawExt.getExtensionType().equals(SupportedExtension.keyUsage)) { KeyUsage ku = KeyUsage.getInstance(rawExt.getExtDataASN1()); extFact.add(getExtNameAndOID(rawExt), EXT_ATTR); extFact.add("Usage", DisplayCert.getKeyUsageText(ku)); extFact.addExtension(extElements); } //QcStatements if (rawExt.getExtensionType().equals(SupportedExtension.qCStatements)) { QCStatementsExt qc = QCStatementsExt.getInstance(rawExt.getExtDataASN1()); extFact.add(getExtNameAndOID(rawExt), EXT_ATTR); // set property if (qc.isQcCompliance()) { extFact.add("Qualified", "true"); } if (qc.isQcSscd()) { extFact.add("QSSCD", "true"); } extFact.addExtension(extElements); } // //EKU if (rawExt.getExtensionType().equals(SupportedExtension.extendedKeyUsage)) { ExtendedKeyUsage eku = ExtendedKeyUsage.getInstance(rawExt.getExtDataASN1()); extFact.add(getExtNameAndOID(rawExt), EXT_ATTR); // set property KeyPurposeId[] keyPurposeIDs = eku.getUsages(); for (KeyPurposeId oid : keyPurposeIDs) { extFact.add(OidName.getName(oid.getId()), oid.getId()); } extFact.addExtension(extElements); } // //CertificatePolicies if (rawExt.getExtensionType().equals(SupportedExtension.certificatePolicies)) { CertificatePolicies cp = CertificatePolicies.getInstance(rawExt.getExtDataASN1()); extFact.add(getExtNameAndOID(rawExt), EXT_ATTR); // set property PolicyInformation[] policyInformation = cp.getPolicyInformation(); for (PolicyInformation pi : policyInformation) { ASN1ObjectIdentifier oid = pi.getPolicyIdentifier(); extFact.add("Policy", OidName.getName(oid.getId())); } extFact.addExtension(extElements); } // //SubjectAlterantive Name // /** // * GeneralName ::= CHOICE { // * otherName [0] OtherName, // * rfc822Name [1] IA5String, // * dNSName [2] IA5String, // * x400Address [3] ORAddress, // * directoryName [4] Name, // * ediPartyName [5] EDIPartyName, // * uniformResourceIdentifier [6] IA5String, // * iPAddress [7] OCTET STRING, // * registeredID [8] OBJECT IDENTIFIER } // */ if (rawExt.getExtensionType().equals(SupportedExtension.subjectAlternativeName)) { GeneralNames san = GeneralNames.getInstance(rawExt.getExtDataASN1()); extFact.add(getExtNameAndOID(rawExt), EXT_ATTR); // set property String[] nameType = new String[] { "otherName", "rfc822Name", "dNSName", "x400Address", "directoryName", "ediPartyName", "uniformResourceIdentifier", "iPAddress", "registeredID" }; GeneralName[] generalNames = san.getNames(); for (GeneralName name : generalNames) { int type = name.getTagNo(); if (type == 1 || type == 2 || type == 6 || type == 7) { extFact.add(nameType[type], name.getName().toString()); } } extFact.addExtension(extElements); } } }
From source file:se.tillvaxtverket.ttsigvalws.ttwssigvalidation.pdf.PdfBoxSigUtil.java
License:Open Source License
/** * Parse a Time-Stamp TsInfo byte array//ww w . jav a 2 s . co m * * @param tsToken The bytes of a tsInfo object * @return A data object holding essential time stamp information */ public static TimeStampData getTimeStampData(byte[] tsToken) { TimeStampData tsData = new TimeStampData(); tsData.setTimeStampToken(tsToken); try { ASN1InputStream din = new ASN1InputStream(new ByteArrayInputStream(tsToken)); ASN1Sequence tsTokenSeq = ASN1Sequence.getInstance(din.readObject()); // Get version int seqIdx = 0; int version = ASN1Integer.getInstance(tsTokenSeq.getObjectAt(seqIdx++)).getPositiveValue().intValue(); tsData.setVersion(version); //Get Policy String policy = ASN1ObjectIdentifier.getInstance(tsTokenSeq.getObjectAt(seqIdx++)).getId(); tsData.setPolicy(policy); //Get Message Imprint data (hash algo and hash value ASN1Sequence messageImprintSeq = ASN1Sequence.getInstance(tsTokenSeq.getObjectAt(seqIdx++)); AlgorithmIdentifier miAi = AlgorithmIdentifier.getInstance(messageImprintSeq.getObjectAt(0)); byte[] miOctets = DEROctetString.getInstance(messageImprintSeq.getObjectAt(1)).getOctets(); tsData.setImprintHashAlgo(DigestAlgorithm.getDigestAlgoFromOid(miAi.getAlgorithm().getId())); tsData.setImprintDigest(miOctets); //Serial number tsData.setSerialNumber(ASN1Integer.getInstance(tsTokenSeq.getObjectAt(seqIdx++)).getValue()); // Time Date tsTime = ASN1GeneralizedTime.getInstance(tsTokenSeq.getObjectAt(seqIdx++)).getDate(); tsData.setTime(tsTime); // Skip until next tagged token while (tsTokenSeq.size() > seqIdx && !(tsTokenSeq.getObjectAt(seqIdx) instanceof ASN1TaggedObject)) { seqIdx++; } // Get TSA name GeneralName tsaName = GeneralName.getInstance(tsTokenSeq.getObjectAt(seqIdx)); try { ASN1Sequence genNameSeq = ASN1Sequence.getInstance(tsaName.getName()); ASN1TaggedObject taggedGenNameOjb = ASN1TaggedObject.getInstance(genNameSeq.getObjectAt(0)); if (taggedGenNameOjb.getTagNo() == 4) { ASN1Sequence nameSeq = ASN1Sequence.getInstance(taggedGenNameOjb.getObject()); Map<SubjectDnAttribute, String> subjectAttributes = getSubjectAttributes(nameSeq); tsData.setIssuerDnMap(subjectAttributes); } } catch (Exception e) { } } catch (IOException | ParseException ex) { Logger.getLogger(PdfBoxSigUtil.class.getName()).warning(ex.getMessage()); } return tsData; }
From source file:support.revocation.RevocationInfo.java
License:Apache License
/** * @return the URI for the given name if the name represents a URI, * otherwise <code>null</code> * @param name/*ww w . j a va 2 s .c om*/ */ private static String urlFromGeneralName(GeneralName name) { if (name.getTagNo() == GeneralName.uniformResourceIdentifier) return ((ASN1String) name.getName()).getString(); return null; }