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

📄 oobcerthash.java

📁 kmlnjlkj nlkjlkjkljl okopokipoipo oipipipo i
💻 JAVA
字号:
package org.bouncycastle.asn1.cmp;import org.bouncycastle.asn1.ASN1Encodable;import org.bouncycastle.asn1.ASN1EncodableVector;import org.bouncycastle.asn1.ASN1Sequence;import org.bouncycastle.asn1.ASN1TaggedObject;import org.bouncycastle.asn1.DERBitString;import org.bouncycastle.asn1.DERObject;import org.bouncycastle.asn1.DERSequence;import org.bouncycastle.asn1.DERTaggedObject;import org.bouncycastle.asn1.crmf.CertId;import org.bouncycastle.asn1.x509.AlgorithmIdentifier;public class OOBCertHash    extends ASN1Encodable{    private AlgorithmIdentifier hashAlg;    private CertId certId;    private DERBitString  hashVal;    private OOBCertHash(ASN1Sequence seq)    {        int index = seq.size() - 1;        hashVal = DERBitString.getInstance(seq.getObjectAt(index--));        for (int i = index; i >= 0; i--)        {            ASN1TaggedObject tObj = (ASN1TaggedObject)seq.getObjectAt(i);            if (tObj.getTagNo() == 0)            {                hashAlg = AlgorithmIdentifier.getInstance(tObj, true);            }            else            {                certId = CertId.getInstance(tObj, true);            }        }    }    public static OOBCertHash getInstance(Object o)    {        if (o instanceof OOBCertHash)        {            return (OOBCertHash)o;        }        if (o instanceof ASN1Sequence)        {            return new OOBCertHash((ASN1Sequence)o);        }        throw new IllegalArgumentException("Invalid object: " + o.getClass().getName());    }    public AlgorithmIdentifier getHashAlg()    {        return hashAlg;    }    public CertId getCertId()    {        return certId;    }    /**     * <pre>     * OOBCertHash ::= SEQUENCE {     *                      hashAlg     [0] AlgorithmIdentifier     OPTIONAL,     *                      certId      [1] CertId                  OPTIONAL,     *                      hashVal         BIT STRING     *                      -- hashVal is calculated over the DER encoding of the     *                      -- self-signed certificate with the identifier certID.     *       }     * </pre>     * @return a basic ASN.1 object representation.     */    public DERObject toASN1Object()    {        ASN1EncodableVector v = new ASN1EncodableVector();        addOptional(v, 0, hashAlg);        addOptional(v, 1, certId);        v.add(hashVal);        return new DERSequence(v);    }    private void addOptional(ASN1EncodableVector v, int tagNo, ASN1Encodable obj)    {        if (obj != null)        {            v.add(new DERTaggedObject(true, tagNo, obj));        }    }}

⌨️ 快捷键说明

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