x509certificatestructure.java

来自「进行与数字证书相关开发必须的java源码」· Java 代码 · 共 120 行

JAVA
120
字号
// Decompiled by Jad v1.5.7g. Copyright 2000 Pavel Kouznetsov.
// Jad home page: http://www.geocities.com/SiliconValley/Bridge/8617/jad.html
// Decompiler options: packimports(3) fieldsfirst ansi 
// Source File Name:   X509CertificateStructure.java

package jit.asn1.x509;

import jit.asn1.*;
import jit.asn1.pkcs.PKCSObjectIdentifiers;

// Referenced classes of package jit.asn1.x509:
//            X509ObjectIdentifiers, TBSCertificateStructure, AlgorithmIdentifier, X509Name, 
//            Time, SubjectPublicKeyInfo, X509Extensions

public class X509CertificateStructure
    implements DEREncodable, X509ObjectIdentifiers, PKCSObjectIdentifiers
{

    ASN1Sequence seq;
    TBSCertificateStructure tbsCert;
    AlgorithmIdentifier sigAlgId;
    DERBitString sig;

    public static X509CertificateStructure getInstance(ASN1TaggedObject obj, boolean explicit)
    {
        return getInstance(ASN1Sequence.getInstance(obj, explicit));
    }

    public static X509CertificateStructure getInstance(Object obj)
    {
        if(obj instanceof X509CertificateStructure)
            return (X509CertificateStructure)obj;
        if(obj instanceof ASN1Sequence)
            return new X509CertificateStructure((ASN1Sequence)obj);
        else
            throw new IllegalArgumentException("unknown object in factory");
    }

    public X509CertificateStructure(ASN1Sequence seq)
    {
        this.seq = seq;
        if(seq.size() == 3)
        {
            tbsCert = TBSCertificateStructure.getInstance(seq.getObjectAt(0));
            sigAlgId = AlgorithmIdentifier.getInstance(seq.getObjectAt(1));
            sig = (DERBitString)seq.getObjectAt(2);
        }
    }

    public TBSCertificateStructure getTBSCertificate()
    {
        return tbsCert;
    }

    public int getVersion()
    {
        return tbsCert.getVersion();
    }

    public DERInteger getSerialNumber()
    {
        return tbsCert.getSerialNumber();
    }

    public X509Name getIssuer()
    {
        return tbsCert.getIssuer();
    }

    public Time getStartDate()
    {
        return tbsCert.getStartDate();
    }

    public Time getEndDate()
    {
        return tbsCert.getEndDate();
    }

    public X509Name getSubject()
    {
        return tbsCert.getSubject();
    }

    public SubjectPublicKeyInfo getSubjectPublicKeyInfo()
    {
        return tbsCert.getSubjectPublicKeyInfo();
    }

    public X509Extensions getExtensions()
    {
        return tbsCert.getExtensions();
    }

    public DERBitString getIssuerUniqueId()
    {
        return tbsCert.getIssuerUniqueId();
    }

    public DERBitString getSubjectUniqueId()
    {
        return tbsCert.getSubjectUniqueId();
    }

    public AlgorithmIdentifier getSignatureAlgorithm()
    {
        return sigAlgId;
    }

    public DERBitString getSignature()
    {
        return sig;
    }

    public DERObject getDERObject()
    {
        return seq;
    }
}

⌨️ 快捷键说明

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