public class org.bouncycastle.cert.AttributeCertificateHolder implements org.bouncycastle.util.Selector
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.bouncycastle.cert.AttributeCertificateHolder
super_class: java.lang.Object
{
private static org.bouncycastle.operator.DigestCalculatorProvider digestCalculatorProvider;
descriptor: Lorg/bouncycastle/operator/DigestCalculatorProvider;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
final org.bouncycastle.asn1.x509.Holder holder;
descriptor: Lorg/bouncycastle/asn1/x509/Holder;
flags: (0x0010) ACC_FINAL
void <init>(org.bouncycastle.asn1.ASN1Sequence);
descriptor: (Lorg/bouncycastle/asn1/ASN1Sequence;)V
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
invokestatic org.bouncycastle.asn1.x509.Holder.getInstance:(Ljava/lang/Object;)Lorg/bouncycastle/asn1/x509/Holder;
putfield org.bouncycastle.cert.AttributeCertificateHolder.holder:Lorg/bouncycastle/asn1/x509/Holder;
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/bouncycastle/cert/AttributeCertificateHolder;
0 3 1 seq Lorg/bouncycastle/asn1/ASN1Sequence;
MethodParameters:
Name Flags
seq
public void <init>(org.bouncycastle.asn1.x500.X500Name, java.math.BigInteger);
descriptor: (Lorg/bouncycastle/asn1/x500/X500Name;Ljava/math/BigInteger;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=9, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new org.bouncycastle.asn1.x509.Holder
dup
new org.bouncycastle.asn1.x509.IssuerSerial
dup
2: aload 0
aload 1
invokevirtual org.bouncycastle.cert.AttributeCertificateHolder.generateGeneralNames:(Lorg/bouncycastle/asn1/x500/X500Name;)Lorg/bouncycastle/asn1/x509/GeneralNames;
3: new org.bouncycastle.asn1.ASN1Integer
dup
aload 2
invokespecial org.bouncycastle.asn1.ASN1Integer.<init>:(Ljava/math/BigInteger;)V
invokespecial org.bouncycastle.asn1.x509.IssuerSerial.<init>:(Lorg/bouncycastle/asn1/x509/GeneralNames;Lorg/bouncycastle/asn1/ASN1Integer;)V
invokespecial org.bouncycastle.asn1.x509.Holder.<init>:(Lorg/bouncycastle/asn1/x509/IssuerSerial;)V
4: putfield org.bouncycastle.cert.AttributeCertificateHolder.holder:Lorg/bouncycastle/asn1/x509/Holder;
5: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/bouncycastle/cert/AttributeCertificateHolder;
0 6 1 issuerName Lorg/bouncycastle/asn1/x500/X500Name;
0 6 2 serialNumber Ljava/math/BigInteger;
MethodParameters:
Name Flags
issuerName
serialNumber
public void <init>(org.bouncycastle.cert.X509CertificateHolder);
descriptor: (Lorg/bouncycastle/cert/X509CertificateHolder;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=9, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new org.bouncycastle.asn1.x509.Holder
dup
new org.bouncycastle.asn1.x509.IssuerSerial
dup
aload 0
aload 1
invokevirtual org.bouncycastle.cert.X509CertificateHolder.getIssuer:()Lorg/bouncycastle/asn1/x500/X500Name;
invokevirtual org.bouncycastle.cert.AttributeCertificateHolder.generateGeneralNames:(Lorg/bouncycastle/asn1/x500/X500Name;)Lorg/bouncycastle/asn1/x509/GeneralNames;
2: new org.bouncycastle.asn1.ASN1Integer
dup
aload 1
invokevirtual org.bouncycastle.cert.X509CertificateHolder.getSerialNumber:()Ljava/math/BigInteger;
invokespecial org.bouncycastle.asn1.ASN1Integer.<init>:(Ljava/math/BigInteger;)V
invokespecial org.bouncycastle.asn1.x509.IssuerSerial.<init>:(Lorg/bouncycastle/asn1/x509/GeneralNames;Lorg/bouncycastle/asn1/ASN1Integer;)V
invokespecial org.bouncycastle.asn1.x509.Holder.<init>:(Lorg/bouncycastle/asn1/x509/IssuerSerial;)V
3: putfield org.bouncycastle.cert.AttributeCertificateHolder.holder:Lorg/bouncycastle/asn1/x509/Holder;
4: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/bouncycastle/cert/AttributeCertificateHolder;
0 5 1 cert Lorg/bouncycastle/cert/X509CertificateHolder;
MethodParameters:
Name Flags
cert
public void <init>(org.bouncycastle.asn1.x500.X500Name);
descriptor: (Lorg/bouncycastle/asn1/x500/X500Name;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new org.bouncycastle.asn1.x509.Holder
dup
aload 0
aload 1
invokevirtual org.bouncycastle.cert.AttributeCertificateHolder.generateGeneralNames:(Lorg/bouncycastle/asn1/x500/X500Name;)Lorg/bouncycastle/asn1/x509/GeneralNames;
invokespecial org.bouncycastle.asn1.x509.Holder.<init>:(Lorg/bouncycastle/asn1/x509/GeneralNames;)V
putfield org.bouncycastle.cert.AttributeCertificateHolder.holder:Lorg/bouncycastle/asn1/x509/Holder;
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/bouncycastle/cert/AttributeCertificateHolder;
0 3 1 principal Lorg/bouncycastle/asn1/x500/X500Name;
MethodParameters:
Name Flags
principal
public void <init>(int, org.bouncycastle.asn1.ASN1ObjectIdentifier, org.bouncycastle.asn1.ASN1ObjectIdentifier, byte[]);
descriptor: (ILorg/bouncycastle/asn1/ASN1ObjectIdentifier;Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;[B)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=10, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new org.bouncycastle.asn1.x509.Holder
dup
new org.bouncycastle.asn1.x509.ObjectDigestInfo
dup
iload 1
2: aload 3
new org.bouncycastle.asn1.x509.AlgorithmIdentifier
dup
aload 2
invokespecial org.bouncycastle.asn1.x509.AlgorithmIdentifier.<init>:(Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;)V
3: aload 4
invokestatic org.bouncycastle.util.Arrays.clone:([B)[B
invokespecial org.bouncycastle.asn1.x509.ObjectDigestInfo.<init>:(ILorg/bouncycastle/asn1/ASN1ObjectIdentifier;Lorg/bouncycastle/asn1/x509/AlgorithmIdentifier;[B)V
invokespecial org.bouncycastle.asn1.x509.Holder.<init>:(Lorg/bouncycastle/asn1/x509/ObjectDigestInfo;)V
4: putfield org.bouncycastle.cert.AttributeCertificateHolder.holder:Lorg/bouncycastle/asn1/x509/Holder;
5: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/bouncycastle/cert/AttributeCertificateHolder;
0 6 1 digestedObjectType I
0 6 2 digestAlgorithm Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
0 6 3 otherObjectTypeID Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
0 6 4 objectDigest [B
MethodParameters:
Name Flags
digestedObjectType
digestAlgorithm
otherObjectTypeID
objectDigest
public int getDigestedObjectType();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.bouncycastle.cert.AttributeCertificateHolder.holder:Lorg/bouncycastle/asn1/x509/Holder;
invokevirtual org.bouncycastle.asn1.x509.Holder.getObjectDigestInfo:()Lorg/bouncycastle/asn1/x509/ObjectDigestInfo;
ifnull 4
1: aload 0
getfield org.bouncycastle.cert.AttributeCertificateHolder.holder:Lorg/bouncycastle/asn1/x509/Holder;
invokevirtual org.bouncycastle.asn1.x509.Holder.getObjectDigestInfo:()Lorg/bouncycastle/asn1/x509/ObjectDigestInfo;
invokevirtual org.bouncycastle.asn1.x509.ObjectDigestInfo.getDigestedObjectType:()Lorg/bouncycastle/asn1/ASN1Enumerated;
2: invokevirtual org.bouncycastle.asn1.ASN1Enumerated.getValue:()Ljava/math/BigInteger;
invokevirtual java.math.BigInteger.intValue:()I
3: ireturn
4: StackMap locals:
StackMap stack:
iconst_m1
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/bouncycastle/cert/AttributeCertificateHolder;
public org.bouncycastle.asn1.x509.AlgorithmIdentifier getDigestAlgorithm();
descriptor: ()Lorg/bouncycastle/asn1/x509/AlgorithmIdentifier;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.bouncycastle.cert.AttributeCertificateHolder.holder:Lorg/bouncycastle/asn1/x509/Holder;
invokevirtual org.bouncycastle.asn1.x509.Holder.getObjectDigestInfo:()Lorg/bouncycastle/asn1/x509/ObjectDigestInfo;
ifnull 2
1: aload 0
getfield org.bouncycastle.cert.AttributeCertificateHolder.holder:Lorg/bouncycastle/asn1/x509/Holder;
invokevirtual org.bouncycastle.asn1.x509.Holder.getObjectDigestInfo:()Lorg/bouncycastle/asn1/x509/ObjectDigestInfo;
invokevirtual org.bouncycastle.asn1.x509.ObjectDigestInfo.getDigestAlgorithm:()Lorg/bouncycastle/asn1/x509/AlgorithmIdentifier;
areturn
2: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/bouncycastle/cert/AttributeCertificateHolder;
public byte[] getObjectDigest();
descriptor: ()[B
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.bouncycastle.cert.AttributeCertificateHolder.holder:Lorg/bouncycastle/asn1/x509/Holder;
invokevirtual org.bouncycastle.asn1.x509.Holder.getObjectDigestInfo:()Lorg/bouncycastle/asn1/x509/ObjectDigestInfo;
ifnull 2
1: aload 0
getfield org.bouncycastle.cert.AttributeCertificateHolder.holder:Lorg/bouncycastle/asn1/x509/Holder;
invokevirtual org.bouncycastle.asn1.x509.Holder.getObjectDigestInfo:()Lorg/bouncycastle/asn1/x509/ObjectDigestInfo;
invokevirtual org.bouncycastle.asn1.x509.ObjectDigestInfo.getObjectDigest:()Lorg/bouncycastle/asn1/DERBitString;
invokevirtual org.bouncycastle.asn1.DERBitString.getBytes:()[B
areturn
2: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/bouncycastle/cert/AttributeCertificateHolder;
public org.bouncycastle.asn1.ASN1ObjectIdentifier getOtherObjectTypeID();
descriptor: ()Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.bouncycastle.cert.AttributeCertificateHolder.holder:Lorg/bouncycastle/asn1/x509/Holder;
invokevirtual org.bouncycastle.asn1.x509.Holder.getObjectDigestInfo:()Lorg/bouncycastle/asn1/x509/ObjectDigestInfo;
ifnull 2
1: new org.bouncycastle.asn1.ASN1ObjectIdentifier
aload 0
getfield org.bouncycastle.cert.AttributeCertificateHolder.holder:Lorg/bouncycastle/asn1/x509/Holder;
invokevirtual org.bouncycastle.asn1.x509.Holder.getObjectDigestInfo:()Lorg/bouncycastle/asn1/x509/ObjectDigestInfo;
invokevirtual org.bouncycastle.asn1.x509.ObjectDigestInfo.getOtherObjectTypeID:()Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
invokevirtual org.bouncycastle.asn1.ASN1ObjectIdentifier.getId:()Ljava/lang/String;
invokespecial org.bouncycastle.asn1.ASN1ObjectIdentifier.<init>:(Ljava/lang/String;)V
2: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/bouncycastle/cert/AttributeCertificateHolder;
private org.bouncycastle.asn1.x509.GeneralNames generateGeneralNames(org.bouncycastle.asn1.x500.X500Name);
descriptor: (Lorg/bouncycastle/asn1/x500/X500Name;)Lorg/bouncycastle/asn1/x509/GeneralNames;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: new org.bouncycastle.asn1.x509.GeneralNames
dup
new org.bouncycastle.asn1.x509.GeneralName
dup
aload 1
invokespecial org.bouncycastle.asn1.x509.GeneralName.<init>:(Lorg/bouncycastle/asn1/x500/X500Name;)V
invokespecial org.bouncycastle.asn1.x509.GeneralNames.<init>:(Lorg/bouncycastle/asn1/x509/GeneralName;)V
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/bouncycastle/cert/AttributeCertificateHolder;
0 1 1 principal Lorg/bouncycastle/asn1/x500/X500Name;
MethodParameters:
Name Flags
principal
private boolean matchesDN(org.bouncycastle.asn1.x500.X500Name, org.bouncycastle.asn1.x509.GeneralNames);
descriptor: (Lorg/bouncycastle/asn1/x500/X500Name;Lorg/bouncycastle/asn1/x509/GeneralNames;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 2
invokevirtual org.bouncycastle.asn1.x509.GeneralNames.getNames:()[Lorg/bouncycastle/asn1/x509/GeneralName;
astore 3
start local 3 1: iconst_0
istore 4
start local 4 2: goto 8
3: StackMap locals: org.bouncycastle.asn1.x509.GeneralName[] int
StackMap stack:
aload 3
iload 4
aaload
astore 5
start local 5 4: aload 5
invokevirtual org.bouncycastle.asn1.x509.GeneralName.getTagNo:()I
iconst_4
if_icmpne 7
5: aload 5
invokevirtual org.bouncycastle.asn1.x509.GeneralName.getName:()Lorg/bouncycastle/asn1/ASN1Encodable;
invokestatic org.bouncycastle.asn1.x500.X500Name.getInstance:(Ljava/lang/Object;)Lorg/bouncycastle/asn1/x500/X500Name;
aload 1
invokevirtual org.bouncycastle.asn1.x500.X500Name.equals:(Ljava/lang/Object;)Z
ifeq 7
6: iconst_1
ireturn
end local 5 7: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
8: iload 4
aload 3
arraylength
if_icmpne 3
end local 4 9: iconst_0
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/bouncycastle/cert/AttributeCertificateHolder;
0 10 1 subject Lorg/bouncycastle/asn1/x500/X500Name;
0 10 2 targets Lorg/bouncycastle/asn1/x509/GeneralNames;
1 10 3 names [Lorg/bouncycastle/asn1/x509/GeneralName;
2 9 4 i I
4 7 5 gn Lorg/bouncycastle/asn1/x509/GeneralName;
MethodParameters:
Name Flags
subject
targets
private org.bouncycastle.asn1.x500.X500Name[] getPrincipals(org.bouncycastle.asn1.x509.GeneralName[]);
descriptor: ([Lorg/bouncycastle/asn1/x509/GeneralName;)[Lorg/bouncycastle/asn1/x500/X500Name;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: new java.util.ArrayList
dup
aload 1
arraylength
invokespecial java.util.ArrayList.<init>:(I)V
astore 2
start local 2 1: iconst_0
istore 3
start local 3 2: goto 6
3: StackMap locals: java.util.List int
StackMap stack:
aload 1
iload 3
aaload
invokevirtual org.bouncycastle.asn1.x509.GeneralName.getTagNo:()I
iconst_4
if_icmpne 5
4: aload 2
aload 1
iload 3
aaload
invokevirtual org.bouncycastle.asn1.x509.GeneralName.getName:()Lorg/bouncycastle/asn1/ASN1Encodable;
invokestatic org.bouncycastle.asn1.x500.X500Name.getInstance:(Ljava/lang/Object;)Lorg/bouncycastle/asn1/x500/X500Name;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
5: StackMap locals:
StackMap stack:
iinc 3 1
StackMap locals:
StackMap stack:
6: iload 3
aload 1
arraylength
if_icmpne 3
end local 3 7: aload 2
aload 2
invokeinterface java.util.List.size:()I
anewarray org.bouncycastle.asn1.x500.X500Name
invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
checkcast org.bouncycastle.asn1.x500.X500Name[]
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/bouncycastle/cert/AttributeCertificateHolder;
0 8 1 names [Lorg/bouncycastle/asn1/x509/GeneralName;
1 8 2 l Ljava/util/List;
2 7 3 i I
MethodParameters:
Name Flags
names
public org.bouncycastle.asn1.x500.X500Name[] getEntityNames();
descriptor: ()[Lorg/bouncycastle/asn1/x500/X500Name;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.bouncycastle.cert.AttributeCertificateHolder.holder:Lorg/bouncycastle/asn1/x509/Holder;
invokevirtual org.bouncycastle.asn1.x509.Holder.getEntityName:()Lorg/bouncycastle/asn1/x509/GeneralNames;
ifnull 2
1: aload 0
aload 0
getfield org.bouncycastle.cert.AttributeCertificateHolder.holder:Lorg/bouncycastle/asn1/x509/Holder;
invokevirtual org.bouncycastle.asn1.x509.Holder.getEntityName:()Lorg/bouncycastle/asn1/x509/GeneralNames;
invokevirtual org.bouncycastle.asn1.x509.GeneralNames.getNames:()[Lorg/bouncycastle/asn1/x509/GeneralName;
invokevirtual org.bouncycastle.cert.AttributeCertificateHolder.getPrincipals:([Lorg/bouncycastle/asn1/x509/GeneralName;)[Lorg/bouncycastle/asn1/x500/X500Name;
areturn
2: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/bouncycastle/cert/AttributeCertificateHolder;
public org.bouncycastle.asn1.x500.X500Name[] getIssuer();
descriptor: ()[Lorg/bouncycastle/asn1/x500/X500Name;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.bouncycastle.cert.AttributeCertificateHolder.holder:Lorg/bouncycastle/asn1/x509/Holder;
invokevirtual org.bouncycastle.asn1.x509.Holder.getBaseCertificateID:()Lorg/bouncycastle/asn1/x509/IssuerSerial;
ifnull 2
1: aload 0
aload 0
getfield org.bouncycastle.cert.AttributeCertificateHolder.holder:Lorg/bouncycastle/asn1/x509/Holder;
invokevirtual org.bouncycastle.asn1.x509.Holder.getBaseCertificateID:()Lorg/bouncycastle/asn1/x509/IssuerSerial;
invokevirtual org.bouncycastle.asn1.x509.IssuerSerial.getIssuer:()Lorg/bouncycastle/asn1/x509/GeneralNames;
invokevirtual org.bouncycastle.asn1.x509.GeneralNames.getNames:()[Lorg/bouncycastle/asn1/x509/GeneralName;
invokevirtual org.bouncycastle.cert.AttributeCertificateHolder.getPrincipals:([Lorg/bouncycastle/asn1/x509/GeneralName;)[Lorg/bouncycastle/asn1/x500/X500Name;
areturn
2: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/bouncycastle/cert/AttributeCertificateHolder;
public java.math.BigInteger getSerialNumber();
descriptor: ()Ljava/math/BigInteger;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.bouncycastle.cert.AttributeCertificateHolder.holder:Lorg/bouncycastle/asn1/x509/Holder;
invokevirtual org.bouncycastle.asn1.x509.Holder.getBaseCertificateID:()Lorg/bouncycastle/asn1/x509/IssuerSerial;
ifnull 2
1: aload 0
getfield org.bouncycastle.cert.AttributeCertificateHolder.holder:Lorg/bouncycastle/asn1/x509/Holder;
invokevirtual org.bouncycastle.asn1.x509.Holder.getBaseCertificateID:()Lorg/bouncycastle/asn1/x509/IssuerSerial;
invokevirtual org.bouncycastle.asn1.x509.IssuerSerial.getSerial:()Lorg/bouncycastle/asn1/ASN1Integer;
invokevirtual org.bouncycastle.asn1.ASN1Integer.getValue:()Ljava/math/BigInteger;
areturn
2: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/bouncycastle/cert/AttributeCertificateHolder;
public java.lang.Object clone();
descriptor: ()Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new org.bouncycastle.cert.AttributeCertificateHolder
dup
aload 0
getfield org.bouncycastle.cert.AttributeCertificateHolder.holder:Lorg/bouncycastle/asn1/x509/Holder;
invokevirtual org.bouncycastle.asn1.x509.Holder.toASN1Primitive:()Lorg/bouncycastle/asn1/ASN1Primitive;
checkcast org.bouncycastle.asn1.ASN1Sequence
invokespecial org.bouncycastle.cert.AttributeCertificateHolder.<init>:(Lorg/bouncycastle/asn1/ASN1Sequence;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/bouncycastle/cert/AttributeCertificateHolder;
public boolean match(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=5, args_size=2
start local 0 start local 1 0: aload 1
instanceof org.bouncycastle.cert.X509CertificateHolder
ifne 2
1: iconst_0
ireturn
2: StackMap locals:
StackMap stack:
aload 1
checkcast org.bouncycastle.cert.X509CertificateHolder
astore 2
start local 2 3: aload 0
getfield org.bouncycastle.cert.AttributeCertificateHolder.holder:Lorg/bouncycastle/asn1/x509/Holder;
invokevirtual org.bouncycastle.asn1.x509.Holder.getBaseCertificateID:()Lorg/bouncycastle/asn1/x509/IssuerSerial;
ifnull 8
4: aload 0
getfield org.bouncycastle.cert.AttributeCertificateHolder.holder:Lorg/bouncycastle/asn1/x509/Holder;
invokevirtual org.bouncycastle.asn1.x509.Holder.getBaseCertificateID:()Lorg/bouncycastle/asn1/x509/IssuerSerial;
invokevirtual org.bouncycastle.asn1.x509.IssuerSerial.getSerial:()Lorg/bouncycastle/asn1/ASN1Integer;
invokevirtual org.bouncycastle.asn1.ASN1Integer.getValue:()Ljava/math/BigInteger;
aload 2
invokevirtual org.bouncycastle.cert.X509CertificateHolder.getSerialNumber:()Ljava/math/BigInteger;
invokevirtual java.math.BigInteger.equals:(Ljava/lang/Object;)Z
ifeq 7
5: aload 0
aload 2
invokevirtual org.bouncycastle.cert.X509CertificateHolder.getIssuer:()Lorg/bouncycastle/asn1/x500/X500Name;
aload 0
getfield org.bouncycastle.cert.AttributeCertificateHolder.holder:Lorg/bouncycastle/asn1/x509/Holder;
invokevirtual org.bouncycastle.asn1.x509.Holder.getBaseCertificateID:()Lorg/bouncycastle/asn1/x509/IssuerSerial;
invokevirtual org.bouncycastle.asn1.x509.IssuerSerial.getIssuer:()Lorg/bouncycastle/asn1/x509/GeneralNames;
invokevirtual org.bouncycastle.cert.AttributeCertificateHolder.matchesDN:(Lorg/bouncycastle/asn1/x500/X500Name;Lorg/bouncycastle/asn1/x509/GeneralNames;)Z
ifeq 7
6: iconst_1
ireturn
StackMap locals: org.bouncycastle.cert.X509CertificateHolder
StackMap stack:
7: iconst_0
ireturn
8: StackMap locals:
StackMap stack:
aload 0
getfield org.bouncycastle.cert.AttributeCertificateHolder.holder:Lorg/bouncycastle/asn1/x509/Holder;
invokevirtual org.bouncycastle.asn1.x509.Holder.getEntityName:()Lorg/bouncycastle/asn1/x509/GeneralNames;
ifnull 14
9: aload 0
aload 2
invokevirtual org.bouncycastle.cert.X509CertificateHolder.getSubject:()Lorg/bouncycastle/asn1/x500/X500Name;
10: aload 0
getfield org.bouncycastle.cert.AttributeCertificateHolder.holder:Lorg/bouncycastle/asn1/x509/Holder;
invokevirtual org.bouncycastle.asn1.x509.Holder.getEntityName:()Lorg/bouncycastle/asn1/x509/GeneralNames;
11: invokevirtual org.bouncycastle.cert.AttributeCertificateHolder.matchesDN:(Lorg/bouncycastle/asn1/x500/X500Name;Lorg/bouncycastle/asn1/x509/GeneralNames;)Z
12: ifeq 14
13: iconst_1
ireturn
14: StackMap locals:
StackMap stack:
aload 0
getfield org.bouncycastle.cert.AttributeCertificateHolder.holder:Lorg/bouncycastle/asn1/x509/Holder;
invokevirtual org.bouncycastle.asn1.x509.Holder.getObjectDigestInfo:()Lorg/bouncycastle/asn1/x509/ObjectDigestInfo;
ifnull 26
15: getstatic org.bouncycastle.cert.AttributeCertificateHolder.digestCalculatorProvider:Lorg/bouncycastle/operator/DigestCalculatorProvider;
aload 0
getfield org.bouncycastle.cert.AttributeCertificateHolder.holder:Lorg/bouncycastle/asn1/x509/Holder;
invokevirtual org.bouncycastle.asn1.x509.Holder.getObjectDigestInfo:()Lorg/bouncycastle/asn1/x509/ObjectDigestInfo;
invokevirtual org.bouncycastle.asn1.x509.ObjectDigestInfo.getDigestAlgorithm:()Lorg/bouncycastle/asn1/x509/AlgorithmIdentifier;
invokeinterface org.bouncycastle.operator.DigestCalculatorProvider.get:(Lorg/bouncycastle/asn1/x509/AlgorithmIdentifier;)Lorg/bouncycastle/operator/DigestCalculator;
astore 3
start local 3 16: aload 3
invokeinterface org.bouncycastle.operator.DigestCalculator.getOutputStream:()Ljava/io/OutputStream;
astore 4
start local 4 17: aload 0
invokevirtual org.bouncycastle.cert.AttributeCertificateHolder.getDigestedObjectType:()I
tableswitch { // 0 - 1
0: 18
1: 20
default: 21
}
18: StackMap locals: org.bouncycastle.operator.DigestCalculator java.io.OutputStream
StackMap stack:
aload 4
aload 2
invokevirtual org.bouncycastle.cert.X509CertificateHolder.getSubjectPublicKeyInfo:()Lorg/bouncycastle/asn1/x509/SubjectPublicKeyInfo;
invokevirtual org.bouncycastle.asn1.x509.SubjectPublicKeyInfo.getEncoded:()[B
invokevirtual java.io.OutputStream.write:([B)V
19: goto 21
20: StackMap locals:
StackMap stack:
aload 4
aload 2
invokevirtual org.bouncycastle.cert.X509CertificateHolder.getEncoded:()[B
invokevirtual java.io.OutputStream.write:([B)V
21: StackMap locals:
StackMap stack:
aload 4
invokevirtual java.io.OutputStream.close:()V
22: aload 3
invokeinterface org.bouncycastle.operator.DigestCalculator.getDigest:()[B
aload 0
invokevirtual org.bouncycastle.cert.AttributeCertificateHolder.getObjectDigest:()[B
invokestatic org.bouncycastle.util.Arrays.areEqual:([B[B)Z
ifne 26
23: iconst_0
ireturn
end local 4 end local 3 24: StackMap locals: org.bouncycastle.cert.AttributeCertificateHolder java.lang.Object org.bouncycastle.cert.X509CertificateHolder
StackMap stack: java.lang.Exception
pop
25: iconst_0
ireturn
26: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 27 0 this Lorg/bouncycastle/cert/AttributeCertificateHolder;
0 27 1 obj Ljava/lang/Object;
3 27 2 x509Cert Lorg/bouncycastle/cert/X509CertificateHolder;
16 24 3 digCalc Lorg/bouncycastle/operator/DigestCalculator;
17 24 4 digOut Ljava/io/OutputStream;
Exception table:
from to target type
15 23 24 Class java.lang.Exception
MethodParameters:
Name Flags
obj
public boolean equals(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 1
aload 0
if_acmpne 2
1: iconst_1
ireturn
2: StackMap locals:
StackMap stack:
aload 1
instanceof org.bouncycastle.cert.AttributeCertificateHolder
ifne 4
3: iconst_0
ireturn
4: StackMap locals:
StackMap stack:
aload 1
checkcast org.bouncycastle.cert.AttributeCertificateHolder
astore 2
start local 2 5: aload 0
getfield org.bouncycastle.cert.AttributeCertificateHolder.holder:Lorg/bouncycastle/asn1/x509/Holder;
aload 2
getfield org.bouncycastle.cert.AttributeCertificateHolder.holder:Lorg/bouncycastle/asn1/x509/Holder;
invokevirtual org.bouncycastle.asn1.x509.Holder.equals:(Ljava/lang/Object;)Z
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/bouncycastle/cert/AttributeCertificateHolder;
0 6 1 obj Ljava/lang/Object;
5 6 2 other Lorg/bouncycastle/cert/AttributeCertificateHolder;
MethodParameters:
Name Flags
obj
public int hashCode();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.bouncycastle.cert.AttributeCertificateHolder.holder:Lorg/bouncycastle/asn1/x509/Holder;
invokevirtual org.bouncycastle.asn1.x509.Holder.hashCode:()I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/bouncycastle/cert/AttributeCertificateHolder;
public static void setDigestCalculatorProvider(org.bouncycastle.operator.DigestCalculatorProvider);
descriptor: (Lorg/bouncycastle/operator/DigestCalculatorProvider;)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
putstatic org.bouncycastle.cert.AttributeCertificateHolder.digestCalculatorProvider:Lorg/bouncycastle/operator/DigestCalculatorProvider;
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 digCalcProvider Lorg/bouncycastle/operator/DigestCalculatorProvider;
MethodParameters:
Name Flags
digCalcProvider
}
SourceFile: "AttributeCertificateHolder.java"