⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 signingcertificate.java

📁 内容:基于jdk1.4的加密算法的具体实现
💻 JAVA
字号:
package org.bouncycastle.asn1.ess;import org.bouncycastle.asn1.ASN1Encodable;import org.bouncycastle.asn1.ASN1EncodableVector;import org.bouncycastle.asn1.ASN1Sequence;import org.bouncycastle.asn1.DERObject;import org.bouncycastle.asn1.DERSequence;import org.bouncycastle.asn1.x509.PolicyInformation;public class SigningCertificate    extends ASN1Encodable{    ASN1Sequence certs;    ASN1Sequence policies;    public static SigningCertificate getInstance(Object o)    {        if (o == null || o instanceof SigningCertificate)        {            return (SigningCertificate) o;        }        else if (o instanceof ASN1Sequence)        {            return new SigningCertificate((ASN1Sequence) o);        }        throw new IllegalArgumentException(                "unknown object in 'SigningCertificate' factory : "                        + o.getClass().getName() + ".");    }    /**     * constructeurs     */    public SigningCertificate(ASN1Sequence seq)    {        this.certs = (ASN1Sequence)seq.getObjectAt(0);                if (seq.size() > 1)        {            this.policies = (ASN1Sequence)seq.getObjectAt(1);        }    }    public SigningCertificate(        ESSCertID essCertID)    {        certs = new DERSequence(essCertID);    }    public ESSCertID[] getCerts()    {        ESSCertID[] cs = new ESSCertID[certs.size()];                for (int i = 0; i != certs.size(); i++)        {            cs[i] = ESSCertID.getInstance(certs.getObjectAt(i));        }                return cs;    }        public PolicyInformation[] getPolicies()    {        if (policies == null)        {            return null;        }                PolicyInformation[] ps = new PolicyInformation[policies.size()];                for (int i = 0; i != policies.size(); i++)        {            ps[i] = PolicyInformation.getInstance(policies.getObjectAt(i));        }                return ps;    }        /**     * The definition of SigningCertificate is     * <pre>     * SigningCertificate ::=  SEQUENCE {     *      certs        SEQUENCE OF ESSCertID,     *      policies     SEQUENCE OF PolicyInformation OPTIONAL     * }     * </pre>     * id-aa-signingCertificate OBJECT IDENTIFIER ::= { iso(1)     *  member-body(2) us(840) rsadsi(113549) pkcs(1) pkcs9(9)     *  smime(16) id-aa(2) 12 }     */    public DERObject toASN1Object()    {        ASN1EncodableVector v = new ASN1EncodableVector();        v.add(certs);                if (policies != null)        {            v.add(policies);        }                return new DERSequence(v);    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -