当前位置: 首页>>代码示例>>Java>>正文


Java TBSCertificateStructure类代码示例

本文整理汇总了Java中org.bouncycastle.asn1.x509.TBSCertificateStructure的典型用法代码示例。如果您正苦于以下问题:Java TBSCertificateStructure类的具体用法?Java TBSCertificateStructure怎么用?Java TBSCertificateStructure使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。


TBSCertificateStructure类属于org.bouncycastle.asn1.x509包,在下文中一共展示了TBSCertificateStructure类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: getIssuerX509Principal

import org.bouncycastle.asn1.x509.TBSCertificateStructure; //导入依赖的package包/类
/**
 * return the issuer of the given cert as an X509PrincipalObject.
 */
public static X509Principal getIssuerX509Principal(
    X509Certificate cert)
    throws CertificateEncodingException
{
    try
    {
        TBSCertificateStructure tbsCert = TBSCertificateStructure.getInstance(
                ASN1Primitive.fromByteArray(cert.getTBSCertificate()));

        return new X509Principal(X509Name.getInstance(tbsCert.getIssuer()));
    }
    catch (IOException e)
    {
        throw new CertificateEncodingException(e.toString());
    }
}
 
开发者ID:Appdome,项目名称:ipack,代码行数:20,代码来源:PrincipalUtil.java

示例2: getSubjectX509Principal

import org.bouncycastle.asn1.x509.TBSCertificateStructure; //导入依赖的package包/类
/**
 * return the subject of the given cert as an X509PrincipalObject.
 */
public static X509Principal getSubjectX509Principal(
    X509Certificate cert)
    throws CertificateEncodingException
{
    try
    {
        TBSCertificateStructure tbsCert = TBSCertificateStructure.getInstance(
                ASN1Primitive.fromByteArray(cert.getTBSCertificate()));
        return new X509Principal(X509Name.getInstance(tbsCert.getSubject()));
    }
    catch (IOException e)
    {
        throw new CertificateEncodingException(e.toString());
    }
}
 
开发者ID:Appdome,项目名称:ipack,代码行数:19,代码来源:PrincipalUtil.java

示例3: computeRecipientInfo

import org.bouncycastle.asn1.x509.TBSCertificateStructure; //导入依赖的package包/类
private KeyTransRecipientInfo computeRecipientInfo(X509Certificate x509certificate, byte[] abyte0)
    throws GeneralSecurityException, IOException
{
    ASN1InputStream asn1inputstream = 
        new ASN1InputStream(new ByteArrayInputStream(x509certificate.getTBSCertificate()));
    TBSCertificateStructure tbscertificatestructure = 
        TBSCertificateStructure.getInstance(asn1inputstream.readObject());
    AlgorithmIdentifier algorithmidentifier = tbscertificatestructure.getSubjectPublicKeyInfo().getAlgorithm();
    IssuerAndSerialNumber issuerandserialnumber = 
        new IssuerAndSerialNumber(
            tbscertificatestructure.getIssuer(), 
            tbscertificatestructure.getSerialNumber().getValue());
    Cipher cipher = Cipher.getInstance(algorithmidentifier.getAlgorithm().getId());        
    cipher.init(1, x509certificate);
    DEROctetString deroctetstring = new DEROctetString(cipher.doFinal(abyte0));
    RecipientIdentifier recipId = new RecipientIdentifier(issuerandserialnumber);
    return new KeyTransRecipientInfo( recipId, algorithmidentifier, deroctetstring);
}
 
开发者ID:albfernandez,项目名称:itext2,代码行数:19,代码来源:PdfPublicKeySecurityHandler.java

示例4: getIssuerX509Principal

import org.bouncycastle.asn1.x509.TBSCertificateStructure; //导入依赖的package包/类
/**
 * return the issuer of the given cert as an X509PrincipalObject.
 */
public static X509Principal getIssuerX509Principal(
    X509Certificate cert)
    throws CertificateEncodingException
{
    try
    {
        ByteArrayInputStream    bIn = new ByteArrayInputStream(
            cert.getTBSCertificate());
        ASN1InputStream         aIn = new ASN1InputStream(bIn);
        TBSCertificateStructure tbsCert = new TBSCertificateStructure(
                                        (ASN1Sequence)aIn.readObject());

        return new X509Principal(tbsCert.getIssuer());
    }
    catch (IOException e)
    {
        throw new CertificateEncodingException(e.toString());
    }
}
 
开发者ID:thangbn,项目名称:Direct-File-Downloader,代码行数:23,代码来源:PrincipalUtil.java

示例5: getSubjectX509Principal

import org.bouncycastle.asn1.x509.TBSCertificateStructure; //导入依赖的package包/类
/**
 * return the subject of the given cert as an X509PrincipalObject.
 */
public static X509Principal getSubjectX509Principal(
    X509Certificate cert)
    throws CertificateEncodingException
{
    try
    {
        ByteArrayInputStream    bIn = new ByteArrayInputStream(
            cert.getTBSCertificate());
        ASN1InputStream         aIn = new ASN1InputStream(bIn);
        TBSCertificateStructure tbsCert = new TBSCertificateStructure(
                                        (ASN1Sequence)aIn.readObject());

        return new X509Principal(tbsCert.getSubject());
    }
    catch (IOException e)
    {
        throw new CertificateEncodingException(e.toString());
    }
}
 
开发者ID:thangbn,项目名称:Direct-File-Downloader,代码行数:23,代码来源:PrincipalUtil.java

示例6: checkKeyUsage

import org.bouncycastle.asn1.x509.TBSCertificateStructure; //导入依赖的package包/类
protected void checkKeyUsage(TBSCertificateStructure issuer,
			 X509Certificate[] certPath,
			 int index) 
throws ProxyPathValidatorException, IOException {

logger.debug("enter: checkKeyUsage");

boolean[] issuerKeyUsage = getKeyUsage(issuer);
if (issuerKeyUsage != null) {
    if (!issuerKeyUsage[5]) {
	throw new ProxyPathValidatorException(
		ProxyPathValidatorException.FAILURE,
		certPath[index],
		"KeyUsage extension present but keyCertSign bit not asserted");
    }
}

logger.debug("exit: checkKeyUsage");
   }
 
开发者ID:NCIP,项目名称:cagrid-general,代码行数:20,代码来源:ProxyPathValidator.java

示例7: getCAPathConstraint

import org.bouncycastle.asn1.x509.TBSCertificateStructure; //导入依赖的package包/类
protected int getCAPathConstraint(TBSCertificateStructure crt) 
throws IOException {
X509Extensions extensions = crt.getExtensions();
if (extensions == null) {
    return -1;
}
X509Extension ext =
    extensions.getExtension(X509Extensions.BasicConstraints);
if (ext != null) {
    BasicConstraints basicExt = BouncyCastleUtil.getBasicConstraints(ext);
    if (basicExt.isCA()) {
	BigInteger pathLen = basicExt.getPathLenConstraint();
	return (pathLen == null) ? Integer.MAX_VALUE : pathLen.intValue();
    } else {
	return -1;
    }
}
return -1;
   }
 
开发者ID:NCIP,项目名称:cagrid-general,代码行数:20,代码来源:ProxyPathValidator.java

示例8: checkUnsupportedCriticalExtensions

import org.bouncycastle.asn1.x509.TBSCertificateStructure; //导入依赖的package包/类
protected void checkUnsupportedCriticalExtensions(TBSCertificateStructure crt, int certType,
	X509Certificate checkedProxy) throws ProxyPathValidatorException {

	logger.debug("enter: checkUnsupportedCriticalExtensions");

	X509Extensions extensions = crt.getExtensions();
	if (extensions != null) {
		Enumeration e = extensions.oids();
		while (e.hasMoreElements()) {
			DERObjectIdentifier oid = (DERObjectIdentifier) e.nextElement();
			X509Extension ext = extensions.getExtension(oid);
			if (ext.isCritical()) {
				if (oid.equals(X509Extensions.BasicConstraints) || oid.equals(X509Extensions.KeyUsage)
					|| (oid.equals(ProxyCertInfo.OID) && CertUtil.isGsi4Proxy(certType))
					|| (oid.equals(ProxyCertInfo.OLD_OID) && CertUtil.isGsi3Proxy(certType))) {
				} else {
					throw new ProxyPathValidatorException(ProxyPathValidatorException.UNSUPPORTED_EXTENSION,
						checkedProxy, "Unsuppored critical exception : " + oid.getId());
				}
			}
		}
	}

	logger.debug("exit: checkUnsupportedCriticalExtensions");
}
 
开发者ID:NCIP,项目名称:cagrid-core,代码行数:26,代码来源:ProxyPathValidator.java

示例9: getCAPathConstraint

import org.bouncycastle.asn1.x509.TBSCertificateStructure; //导入依赖的package包/类
protected int getCAPathConstraint(TBSCertificateStructure crt) throws IOException {
	X509Extensions extensions = crt.getExtensions();
	if (extensions == null) {
		return -1;
	}
	X509Extension ext = extensions.getExtension(X509Extensions.BasicConstraints);
	if (ext != null) {
		BasicConstraints basicExt = BouncyCastleUtil.getBasicConstraints(ext);
		if (basicExt.isCA()) {
			BigInteger pathLen = basicExt.getPathLenConstraint();
			return (pathLen == null) ? Integer.MAX_VALUE : pathLen.intValue();
		} else {
			return -1;
		}
	}
	return -1;
}
 
开发者ID:NCIP,项目名称:cagrid-core,代码行数:18,代码来源:ProxyPathValidator.java

示例10: getTBSCertificateStructure

import org.bouncycastle.asn1.x509.TBSCertificateStructure; //导入依赖的package包/类
static TBSCertificateStructure getTBSCertificateStructure(
    X509Certificate cert)
{
    try
    {
        return TBSCertificateStructure.getInstance(
            ASN1Primitive.fromByteArray(cert.getTBSCertificate()));
    }
    catch (Exception e)
    {
        throw new IllegalArgumentException(
            "can't extract TBS structure from this cert");
    }
}
 
开发者ID:credentials,项目名称:irma_future_id,代码行数:15,代码来源:CMSUtils.java

示例11: checkUnsupportedCriticalExtensions

import org.bouncycastle.asn1.x509.TBSCertificateStructure; //导入依赖的package包/类
protected void checkUnsupportedCriticalExtensions(TBSCertificateStructure crt,
					      int certType,
					      X509Certificate checkedProxy) 
throws ProxyPathValidatorException {

logger.debug("enter: checkUnsupportedCriticalExtensions");

X509Extensions extensions = crt.getExtensions();
if (extensions != null) {
    Enumeration e = extensions.oids();
    while (e.hasMoreElements()) {
	DERObjectIdentifier oid = (DERObjectIdentifier)e.nextElement();
	X509Extension ext = extensions.getExtension(oid);
	if (ext.isCritical()) {
	    if (oid.equals(X509Extensions.BasicConstraints) ||
		oid.equals(X509Extensions.KeyUsage) ||
		(oid.equals(ProxyCertInfo.OID) && 
                        CertUtil.isGsi4Proxy(certType)) ||
		(oid.equals(ProxyCertInfo.OLD_OID) && 
                        CertUtil.isGsi3Proxy(certType))) {
	    } else {
		throw new ProxyPathValidatorException(
		      ProxyPathValidatorException
                             .UNSUPPORTED_EXTENSION,
		      checkedProxy,
		      "Unsuppored critical exception : " 
                             + oid.getId());
	    }
	}
    }
}

logger.debug("exit: checkUnsupportedCriticalExtensions");
   }
 
开发者ID:NCIP,项目名称:cagrid-general,代码行数:35,代码来源:ProxyPathValidator.java

示例12: getProxyCertInfo

import org.bouncycastle.asn1.x509.TBSCertificateStructure; //导入依赖的package包/类
protected ProxyCertInfo getProxyCertInfo(TBSCertificateStructure crt) 
throws IOException {
X509Extensions extensions = crt.getExtensions();
if (extensions == null) {
    return null;
}
X509Extension ext = 
    extensions.getExtension(ProxyCertInfo.OID);
       if (ext == null) {
           ext = extensions.getExtension(ProxyCertInfo.OLD_OID);
       }
return (ext != null) ? BouncyCastleUtil.getProxyCertInfo(ext) : null;
   }
 
开发者ID:NCIP,项目名称:cagrid-general,代码行数:14,代码来源:ProxyPathValidator.java

示例13: getKeyUsage

import org.bouncycastle.asn1.x509.TBSCertificateStructure; //导入依赖的package包/类
protected boolean[] getKeyUsage(TBSCertificateStructure crt) 
throws IOException {
X509Extensions extensions = crt.getExtensions();
if (extensions == null) {
    return null;
}
X509Extension ext =
    extensions.getExtension(X509Extensions.KeyUsage);
return (ext != null) ? BouncyCastleUtil.getKeyUsage(ext) : null;
   }
 
开发者ID:NCIP,项目名称:cagrid-general,代码行数:11,代码来源:ProxyPathValidator.java

示例14: checkRestrictedProxy

import org.bouncycastle.asn1.x509.TBSCertificateStructure; //导入依赖的package包/类
protected void checkRestrictedProxy(TBSCertificateStructure proxy, X509Certificate[] certPath, int index)
	throws ProxyPathValidatorException, IOException {

	logger.debug("enter: checkRestrictedProxy");

	ProxyCertInfo info = getProxyCertInfo(proxy);

	// just a sanity check
	if (info == null) {
		throw new ProxyPathValidatorException(ProxyPathValidatorException.FAILURE, certPath[index],
			"Could not retreive ProxyCertInfo extension");
	}

	ProxyPolicy policy = info.getProxyPolicy();

	// another sanity check
	if (policy == null) {
		throw new ProxyPathValidatorException(ProxyPathValidatorException.FAILURE, certPath[index],
			"Could not retreive ProxyPolicy from ProxyCertInfo extension");
	}

	String pl = policy.getPolicyLanguage().getId();

	ProxyPolicyHandler handler = getProxyPolicyHandler(pl);

	if (handler == null) {
		throw new ProxyPathValidatorException(ProxyPathValidatorException.UNKNOWN_POLICY, certPath[index],
			"Unknown policy: " + pl);
	}

	handler.validate(info, certPath, index);

	logger.debug("exit: checkRestrictedProxy");

}
 
开发者ID:NCIP,项目名称:cagrid-core,代码行数:36,代码来源:ProxyPathValidator.java

示例15: checkKeyUsage

import org.bouncycastle.asn1.x509.TBSCertificateStructure; //导入依赖的package包/类
protected void checkKeyUsage(TBSCertificateStructure issuer, X509Certificate[] certPath, int index)
	throws ProxyPathValidatorException, IOException {

	logger.debug("enter: checkKeyUsage");

	boolean[] issuerKeyUsage = getKeyUsage(issuer);
	if (issuerKeyUsage != null) {
		if (!issuerKeyUsage[5]) {
			throw new ProxyPathValidatorException(ProxyPathValidatorException.FAILURE, certPath[index],
				"KeyUsage extension present but keyCertSign bit not asserted");
		}
	}

	logger.debug("exit: checkKeyUsage");
}
 
开发者ID:NCIP,项目名称:cagrid-core,代码行数:16,代码来源:ProxyPathValidator.java


注:本文中的org.bouncycastle.asn1.x509.TBSCertificateStructure类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。