📄 v3tbscertificategenerator.java
字号:
// 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: V3TBSCertificateGenerator.java
package jit.asn1.x509;
import jit.asn1.*;
// Referenced classes of package jit.asn1.x509:
// Time, TBSCertificateStructure, AlgorithmIdentifier, X509Name,
// SubjectPublicKeyInfo, X509Extensions
public class V3TBSCertificateGenerator
{
DERTaggedObject version;
DERInteger serialNumber;
AlgorithmIdentifier signature;
X509Name issuer;
Time startDate;
Time endDate;
X509Name subject;
SubjectPublicKeyInfo subjectPublicKeyInfo;
DERBitString issuerUniqueId;
DERBitString subjectUniqueId;
X509Extensions extensions;
public V3TBSCertificateGenerator()
{
version = new DERTaggedObject(0, new DERInteger(2));
}
public void setSerialNumber(DERInteger serialNumber)
{
this.serialNumber = serialNumber;
}
public void setSignature(AlgorithmIdentifier signature)
{
this.signature = signature;
}
public void setIssuer(X509Name issuer)
{
this.issuer = issuer;
}
public void setStartDate(DERUTCTime startDate)
{
this.startDate = new Time(startDate);
}
public void setStartDate(Time startDate)
{
this.startDate = startDate;
}
public void setEndDate(DERUTCTime endDate)
{
this.endDate = new Time(endDate);
}
public void setEndDate(Time endDate)
{
this.endDate = endDate;
}
public void setSubject(X509Name subject)
{
this.subject = subject;
}
public void setSubjectPublicKeyInfo(SubjectPublicKeyInfo pubKeyInfo)
{
subjectPublicKeyInfo = pubKeyInfo;
}
public void setIssuerUniqueID(DERBitString issuerUniqueId)
{
this.issuerUniqueId = issuerUniqueId;
}
public void setSubjectUniqueID(DERBitString subjectUniqueID)
{
subjectUniqueId = subjectUniqueID;
}
public void setExtensions(X509Extensions extensions)
{
this.extensions = extensions;
}
public TBSCertificateStructure generateTBSCertificate()
{
if(serialNumber == null || signature == null || issuer == null || startDate == null || endDate == null || subject == null || subjectPublicKeyInfo == null)
throw new IllegalStateException("not all mandatory fields set in V3 TBScertificate generator");
ASN1EncodableVector v = new ASN1EncodableVector();
v.add(version);
v.add(serialNumber);
v.add(signature);
v.add(issuer);
ASN1EncodableVector validity = new ASN1EncodableVector();
validity.add(startDate);
validity.add(endDate);
v.add(new DERSequence(validity));
v.add(subject);
v.add(subjectPublicKeyInfo);
if(issuerUniqueId != null)
v.add(new DERTaggedObject(false, 1, issuerUniqueId));
if(subjectUniqueId != null)
v.add(new DERTaggedObject(false, 2, subjectUniqueId));
if(extensions != null)
v.add(new DERTaggedObject(3, extensions));
return new TBSCertificateStructure(new DERSequence(v));
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -