當前位置: 首頁>>代碼示例>>Java>>正文


Java X509Extensions類代碼示例

本文整理匯總了Java中org.bouncycastle.asn1.x509.X509Extensions的典型用法代碼示例。如果您正苦於以下問題:Java X509Extensions類的具體用法?Java X509Extensions怎麽用?Java X509Extensions使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。


X509Extensions類屬於org.bouncycastle.asn1.x509包,在下文中一共展示了X509Extensions類的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: GenOcspReq

import org.bouncycastle.asn1.x509.X509Extensions; //導入依賴的package包/類
public static OCSPReq GenOcspReq(X509Certificate nextCert,
		X509Certificate nextIssuer) throws OCSPException {

	OCSPReqGenerator ocspRequestGenerator = new OCSPReqGenerator();
	CertificateID certId = new CertificateID(CertificateID.HASH_SHA1,
			nextIssuer, nextCert.getSerialNumber());
	ocspRequestGenerator.addRequest(certId);

	BigInteger nonce = BigInteger.valueOf(System.currentTimeMillis());
	Vector<DERObjectIdentifier> oids = new Vector<DERObjectIdentifier>();
	Vector<X509Extension> values = new Vector<X509Extension>();

	oids.add(OCSPObjectIdentifiers.id_pkix_ocsp_nonce);
	values.add(new X509Extension(false, new DEROctetString(nonce
			.toByteArray())));

	ocspRequestGenerator.setRequestExtensions(new X509Extensions(oids,
			values));
	return ocspRequestGenerator.generate();
}
 
開發者ID:bluecrystalsign,項目名稱:signer-source,代碼行數:21,代碼來源:DerEncoder.java

示例2: makeCertificate

import org.bouncycastle.asn1.x509.X509Extensions; //導入依賴的package包/類
public static X509Certificate makeCertificate(KeyPair _subKP,
        String _subDN, KeyPair _issKP, String _issDN, String algorithm, boolean _ca)
        throws Exception
{

    PublicKey _subPub = _subKP.getPublic();
    PrivateKey _issPriv = _issKP.getPrivate();
    PublicKey _issPub = _issKP.getPublic();

    X509V3CertificateGenerator _v3CertGen = new X509V3CertificateGenerator();

    _v3CertGen.reset();
    _v3CertGen.setSerialNumber(allocateSerialNumber());
    _v3CertGen.setIssuerDN(new X509Name(_issDN));
    _v3CertGen.setNotBefore(new Date(System.currentTimeMillis()));
    _v3CertGen.setNotAfter(new Date(System.currentTimeMillis()
            + (1000L * 60 * 60 * 24 * 100)));
    _v3CertGen.setSubjectDN(new X509Name(_subDN));
    _v3CertGen.setPublicKey(_subPub);
    _v3CertGen.setSignatureAlgorithm(algorithm);

    _v3CertGen.addExtension(X509Extensions.SubjectKeyIdentifier, false,
            createSubjectKeyId(_subPub));

    _v3CertGen.addExtension(X509Extensions.AuthorityKeyIdentifier, false,
            createAuthorityKeyId(_issPub));

    _v3CertGen.addExtension(X509Extensions.BasicConstraints, false,
            new BasicConstraints(_ca));

    X509Certificate _cert = _v3CertGen.generate(_issPriv);

    _cert.checkValidity(new Date());
    _cert.verify(_issPub);

    return _cert;
}
 
開發者ID:NoYouShutup,項目名稱:CryptMeme,代碼行數:38,代碼來源:OCSPTestUtil.java

示例3: getExtensionOIDs

import org.bouncycastle.asn1.x509.X509Extensions; //導入依賴的package包/類
private Set getExtensionOIDs(boolean critical)
{
    Set             set = new HashSet();
    X509Extensions  extensions = this.getResponseExtensions();
    
    if (extensions != null)
    {
        Enumeration     e = extensions.oids();

        while (e.hasMoreElements())
        {
            DERObjectIdentifier oid = (DERObjectIdentifier)e.nextElement();
            X509Extension       ext = extensions.getExtension(oid);

            if (critical == ext.isCritical())
            {
                set.add(oid.getId());
            }
        }
    }

    return set;
}
 
開發者ID:Appdome,項目名稱:ipack,代碼行數:24,代碼來源:RespData.java

示例4: getExtensionValue

import org.bouncycastle.asn1.x509.X509Extensions; //導入依賴的package包/類
public byte[] getExtensionValue(String oid)
{
    X509Extensions exts = this.getResponseExtensions();

    if (exts != null)
    {
        X509Extension   ext = exts.getExtension(new DERObjectIdentifier(oid));

        if (ext != null)
        {
            try
            {
                return ext.getValue().getEncoded(ASN1Encoding.DER);
            }
            catch (Exception e)
            {
                throw new RuntimeException("error encoding " + e.toString());
            }
        }
    }

    return null;
}
 
開發者ID:Appdome,項目名稱:ipack,代碼行數:24,代碼來源:RespData.java

示例5: getExtensionOIDs

import org.bouncycastle.asn1.x509.X509Extensions; //導入依賴的package包/類
private Set getExtensionOIDs(boolean critical)
{
    Set             set = new HashSet();
    X509Extensions  extensions = this.getRequestExtensions();
    
    if (extensions != null)
    {
        Enumeration     e = extensions.oids();

        while (e.hasMoreElements())
        {
            ASN1ObjectIdentifier oid = (ASN1ObjectIdentifier)e.nextElement();
            X509Extension       ext = extensions.getExtension(oid);

            if (critical == ext.isCritical())
            {
                set.add(oid.getId());
            }
        }
    }

    return set;
}
 
開發者ID:Appdome,項目名稱:ipack,代碼行數:24,代碼來源:OCSPReq.java

示例6: getExtensionValue

import org.bouncycastle.asn1.x509.X509Extensions; //導入依賴的package包/類
public byte[] getExtensionValue(String oid)
{
    X509Extensions exts = this.getRequestExtensions();

    if (exts != null)
    {
        X509Extension   ext = exts.getExtension(new ASN1ObjectIdentifier(oid));

        if (ext != null)
        {
            try
            {
                return ext.getValue().getEncoded(ASN1Encoding.DER);
            }
            catch (Exception e)
            {
                throw new RuntimeException("error encoding " + e.toString());
            }
        }
    }

    return null;
}
 
開發者ID:Appdome,項目名稱:ipack,代碼行數:24,代碼來源:OCSPReq.java

示例7: getExtensionOIDs

import org.bouncycastle.asn1.x509.X509Extensions; //導入依賴的package包/類
private Set getExtensionOIDs(boolean critical)
{
    Set             set = new HashSet();
    X509Extensions  extensions = this.getSingleRequestExtensions();
    
    if (extensions != null)
    {
        Enumeration     e = extensions.oids();

        while (e.hasMoreElements())
        {
            DERObjectIdentifier oid = (DERObjectIdentifier)e.nextElement();
            X509Extension       ext = extensions.getExtension(oid);

            if (critical == ext.isCritical())
            {
                set.add(oid.getId());
            }
        }
    }

    return set;
}
 
開發者ID:Appdome,項目名稱:ipack,代碼行數:24,代碼來源:Req.java

示例8: getExtensionValue

import org.bouncycastle.asn1.x509.X509Extensions; //導入依賴的package包/類
public byte[] getExtensionValue(String oid)
{
    X509Extensions exts = this.getSingleRequestExtensions();

    if (exts != null)
    {
        X509Extension   ext = exts.getExtension(new DERObjectIdentifier(oid));

        if (ext != null)
        {
            try
            {
                return ext.getValue().getEncoded(ASN1Encoding.DER);
            }
            catch (Exception e)
            {
                throw new RuntimeException("error encoding " + e.toString());
            }
        }
    }

    return null;
}
 
開發者ID:Appdome,項目名稱:ipack,代碼行數:24,代碼來源:Req.java

示例9: getExtensionOIDs

import org.bouncycastle.asn1.x509.X509Extensions; //導入依賴的package包/類
private Set getExtensionOIDs(boolean critical)
{
    Set             set = new HashSet();
    X509Extensions  extensions = this.getSingleExtensions();
    
    if (extensions != null)
    {
        Enumeration     e = extensions.oids();

        while (e.hasMoreElements())
        {
            DERObjectIdentifier oid = (DERObjectIdentifier)e.nextElement();
            X509Extension       ext = extensions.getExtension(oid);

            if (critical == ext.isCritical())
            {
                set.add(oid.getId());
            }
        }
    }

    return set;
}
 
開發者ID:Appdome,項目名稱:ipack,代碼行數:24,代碼來源:SingleResp.java

示例10: getExtensionValue

import org.bouncycastle.asn1.x509.X509Extensions; //導入依賴的package包/類
public byte[] getExtensionValue(String oid)
{
    X509Extensions exts = this.getSingleExtensions();

    if (exts != null)
    {
        X509Extension   ext = exts.getExtension(new DERObjectIdentifier(oid));

        if (ext != null)
        {
            try
            {
                return ext.getValue().getEncoded(ASN1Encoding.DER);
            }
            catch (Exception e)
            {
                throw new RuntimeException("error encoding " + e.toString());
            }
        }
    }

    return null;
}
 
開發者ID:Appdome,項目名稱:ipack,代碼行數:24,代碼來源:SingleResp.java

示例11: generateSignedCertificate

import org.bouncycastle.asn1.x509.X509Extensions; //導入依賴的package包/類
private X509Certificate generateSignedCertificate(
        PKCS10CertificationRequest csr) throws NoSuchAlgorithmException,
        NoSuchProviderException, InvalidKeyException,
        CertificateParsingException, CertificateEncodingException,
        SignatureException {

    X509V3CertificateGenerator certGen = new X509V3CertificateGenerator();
    certGen.setSerialNumber(BigInteger.valueOf(System.currentTimeMillis()));
    certGen.setIssuerDN(rootCert.getSubjectX500Principal());
    Calendar c = Calendar.getInstance();
    certGen.setNotBefore(c.getTime());
    c.add(Calendar.YEAR, 1);
    certGen.setNotAfter(c.getTime());
    certGen.setSubjectDN(csr.getCertificationRequestInfo().getSubject());
    certGen.setPublicKey(csr.getPublicKey("BC"));
    certGen.setSignatureAlgorithm(ALGORITHM_SHA256_RSA);
    certGen.addExtension(X509Extensions.AuthorityKeyIdentifier, false,
            new AuthorityKeyIdentifierStructure(rootCert.getPublicKey()));
    certGen.addExtension(X509Extensions.SubjectKeyIdentifier, false,
            new SubjectKeyIdentifierStructure(csr.getPublicKey("BC")));
    certGen.addExtension(X509Extensions.BasicConstraints, true,
            new BasicConstraints(false));
    certGen.addExtension(X509Extensions.KeyUsage, true, new KeyUsage(
            KeyUsage.digitalSignature | KeyUsage.keyEncipherment));

    X509Certificate issuedCert = certGen.generate(rootPrivateKeyEntry
            .getPrivateKey());
    return issuedCert;
}
 
開發者ID:servicecatalog,項目名稱:oscm,代碼行數:30,代碼來源:CertificateHandler.java

示例12: getExtensionOIDs

import org.bouncycastle.asn1.x509.X509Extensions; //導入依賴的package包/類
private Set getExtensionOIDs(
    boolean critical) 
{
    X509Extensions  extensions = cert.getAcinfo().getExtensions();

    if (extensions != null)
    {
        Set             set = new HashSet();
        Enumeration     e = extensions.oids();

        while (e.hasMoreElements())
        {
            DERObjectIdentifier oid = (DERObjectIdentifier)e.nextElement();
            X509Extension       ext = extensions.getExtension(oid);

            if (ext.isCritical() == critical)
            {
                set.add(oid.getId());
            }
        }

        return set;
    }

    return null;
}
 
開發者ID:thangbn,項目名稱:Direct-File-Downloader,代碼行數:27,代碼來源:X509V2AttributeCertificate.java

示例13: getExtensionOIDs

import org.bouncycastle.asn1.x509.X509Extensions; //導入依賴的package包/類
private Set getExtensionOIDs(boolean critical)
{
	if (this.getVersion() == 2)
	{
		HashSet         set = new HashSet();
		X509Extensions  extensions = c.getTBSCertList().getExtensions();
		Enumeration     e = extensions.oids();

		while (e.hasMoreElements())
		{
			DERObjectIdentifier oid = (DERObjectIdentifier)e.nextElement();
			X509Extension       ext = extensions.getExtension(oid);

			if (critical == ext.isCritical())
			{
				set.add(oid.getId());
			}
		}

		return set;
	}

	return null;
}
 
開發者ID:thangbn,項目名稱:Direct-File-Downloader,代碼行數:25,代碼來源:X509CRLObject.java

示例14: getExtensionOIDs

import org.bouncycastle.asn1.x509.X509Extensions; //導入依賴的package包/類
private Set getExtensionOIDs(boolean critical)
{
	X509Extensions extensions = c.getExtensions();

	if ( extensions != null )
	{
		HashSet			set = new HashSet();
		Enumeration		e = extensions.oids();

		while (e.hasMoreElements())
		{
			DERObjectIdentifier	oid = (DERObjectIdentifier)e.nextElement();
			X509Extension		ext = extensions.getExtension(oid);

			if (critical == ext.isCritical())
			{
				set.add(oid.getId());
			}
		}

		return set;
	}

	return null;
}
 
開發者ID:thangbn,項目名稱:Direct-File-Downloader,代碼行數:26,代碼來源:X509CRLEntryObject.java

示例15: getExtensionValue

import org.bouncycastle.asn1.x509.X509Extensions; //導入依賴的package包/類
public byte[] getExtensionValue(String oid)
{
	X509Extensions exts = c.getExtensions();

	if (exts != null)
	{
		X509Extension ext = exts.getExtension(new DERObjectIdentifier(oid));

		if (ext != null)
		{
			return ext.getValue().getOctets();
		}
	}

	return null;
}
 
開發者ID:thangbn,項目名稱:Direct-File-Downloader,代碼行數:17,代碼來源:X509CRLEntryObject.java


注:本文中的org.bouncycastle.asn1.x509.X509Extensions類示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。