128 lines
4.2 KiB
Java
128 lines
4.2 KiB
Java
|
package org.bouncycastle.asn1.crmf;
|
||
|
|
||
|
import java.util.Enumeration;
|
||
|
import org.bouncycastle.asn1.ASN1Integer;
|
||
|
import org.bouncycastle.asn1.ASN1Object;
|
||
|
import org.bouncycastle.asn1.ASN1Primitive;
|
||
|
import org.bouncycastle.asn1.ASN1Sequence;
|
||
|
import org.bouncycastle.asn1.ASN1TaggedObject;
|
||
|
import org.bouncycastle.asn1.DERBitString;
|
||
|
import org.bouncycastle.asn1.x500.X500Name;
|
||
|
import org.bouncycastle.asn1.x509.AlgorithmIdentifier;
|
||
|
import org.bouncycastle.asn1.x509.Extensions;
|
||
|
import org.bouncycastle.asn1.x509.SubjectPublicKeyInfo;
|
||
|
|
||
|
/* loaded from: classes6.dex */
|
||
|
public class CertTemplate extends ASN1Object {
|
||
|
private Extensions extensions;
|
||
|
private X500Name issuer;
|
||
|
private DERBitString issuerUID;
|
||
|
private SubjectPublicKeyInfo publicKey;
|
||
|
private ASN1Sequence seq;
|
||
|
private ASN1Integer serialNumber;
|
||
|
private AlgorithmIdentifier signingAlg;
|
||
|
private X500Name subject;
|
||
|
private DERBitString subjectUID;
|
||
|
private OptionalValidity validity;
|
||
|
private ASN1Integer version;
|
||
|
|
||
|
@Override // org.bouncycastle.asn1.ASN1Object, org.bouncycastle.asn1.ASN1Encodable
|
||
|
public ASN1Primitive toASN1Primitive() {
|
||
|
return this.seq;
|
||
|
}
|
||
|
|
||
|
public int getVersion() {
|
||
|
return this.version.getValue().intValue();
|
||
|
}
|
||
|
|
||
|
public OptionalValidity getValidity() {
|
||
|
return this.validity;
|
||
|
}
|
||
|
|
||
|
public DERBitString getSubjectUID() {
|
||
|
return this.subjectUID;
|
||
|
}
|
||
|
|
||
|
public X500Name getSubject() {
|
||
|
return this.subject;
|
||
|
}
|
||
|
|
||
|
public AlgorithmIdentifier getSigningAlg() {
|
||
|
return this.signingAlg;
|
||
|
}
|
||
|
|
||
|
public ASN1Integer getSerialNumber() {
|
||
|
return this.serialNumber;
|
||
|
}
|
||
|
|
||
|
public SubjectPublicKeyInfo getPublicKey() {
|
||
|
return this.publicKey;
|
||
|
}
|
||
|
|
||
|
public DERBitString getIssuerUID() {
|
||
|
return this.issuerUID;
|
||
|
}
|
||
|
|
||
|
public X500Name getIssuer() {
|
||
|
return this.issuer;
|
||
|
}
|
||
|
|
||
|
public Extensions getExtensions() {
|
||
|
return this.extensions;
|
||
|
}
|
||
|
|
||
|
public static CertTemplate getInstance(Object obj) {
|
||
|
if (obj instanceof CertTemplate) {
|
||
|
return (CertTemplate) obj;
|
||
|
}
|
||
|
if (obj != null) {
|
||
|
return new CertTemplate(ASN1Sequence.getInstance(obj));
|
||
|
}
|
||
|
return null;
|
||
|
}
|
||
|
|
||
|
private CertTemplate(ASN1Sequence aSN1Sequence) {
|
||
|
this.seq = aSN1Sequence;
|
||
|
Enumeration objects = aSN1Sequence.getObjects();
|
||
|
while (objects.hasMoreElements()) {
|
||
|
ASN1TaggedObject aSN1TaggedObject = (ASN1TaggedObject) objects.nextElement();
|
||
|
switch (aSN1TaggedObject.getTagNo()) {
|
||
|
case 0:
|
||
|
this.version = ASN1Integer.getInstance(aSN1TaggedObject, false);
|
||
|
break;
|
||
|
case 1:
|
||
|
this.serialNumber = ASN1Integer.getInstance(aSN1TaggedObject, false);
|
||
|
break;
|
||
|
case 2:
|
||
|
this.signingAlg = AlgorithmIdentifier.getInstance(aSN1TaggedObject, false);
|
||
|
break;
|
||
|
case 3:
|
||
|
this.issuer = X500Name.getInstance(aSN1TaggedObject, true);
|
||
|
break;
|
||
|
case 4:
|
||
|
this.validity = OptionalValidity.getInstance(ASN1Sequence.getInstance(aSN1TaggedObject, false));
|
||
|
break;
|
||
|
case 5:
|
||
|
this.subject = X500Name.getInstance(aSN1TaggedObject, true);
|
||
|
break;
|
||
|
case 6:
|
||
|
this.publicKey = SubjectPublicKeyInfo.getInstance(aSN1TaggedObject, false);
|
||
|
break;
|
||
|
case 7:
|
||
|
this.issuerUID = DERBitString.getInstance(aSN1TaggedObject, false);
|
||
|
break;
|
||
|
case 8:
|
||
|
this.subjectUID = DERBitString.getInstance(aSN1TaggedObject, false);
|
||
|
break;
|
||
|
case 9:
|
||
|
this.extensions = Extensions.getInstance(aSN1TaggedObject, false);
|
||
|
break;
|
||
|
default:
|
||
|
StringBuilder sb = new StringBuilder("unknown tag: ");
|
||
|
sb.append(aSN1TaggedObject.getTagNo());
|
||
|
throw new IllegalArgumentException(sb.toString());
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|