public class org.bouncycastle.eac.EACCertificateHolder
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.bouncycastle.eac.EACCertificateHolder
super_class: java.lang.Object
{
private org.bouncycastle.asn1.eac.CVCertificate cvCertificate;
descriptor: Lorg/bouncycastle/asn1/eac/CVCertificate;
flags: (0x0002) ACC_PRIVATE
private static org.bouncycastle.asn1.eac.CVCertificate parseBytes(byte[]);
descriptor: ([B)Lorg/bouncycastle/asn1/eac/CVCertificate;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=2, args_size=1
start local 0 0: aload 0
invokestatic org.bouncycastle.asn1.eac.CVCertificate.getInstance:(Ljava/lang/Object;)Lorg/bouncycastle/asn1/eac/CVCertificate;
1: areturn
2: StackMap locals:
StackMap stack: java.lang.ClassCastException
astore 1
start local 1 3: new org.bouncycastle.eac.EACIOException
dup
new java.lang.StringBuilder
dup
ldc "malformed data: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.ClassCastException.getMessage:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 1
invokespecial org.bouncycastle.eac.EACIOException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 1 4: StackMap locals:
StackMap stack: java.lang.IllegalArgumentException
astore 1
start local 1 5: new org.bouncycastle.eac.EACIOException
dup
new java.lang.StringBuilder
dup
ldc "malformed data: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.IllegalArgumentException.getMessage:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 1
invokespecial org.bouncycastle.eac.EACIOException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 1 6: StackMap locals:
StackMap stack: org.bouncycastle.asn1.ASN1ParsingException
astore 1
start local 1 7: aload 1
invokevirtual org.bouncycastle.asn1.ASN1ParsingException.getCause:()Ljava/lang/Throwable;
instanceof java.io.IOException
ifeq 9
8: aload 1
invokevirtual org.bouncycastle.asn1.ASN1ParsingException.getCause:()Ljava/lang/Throwable;
checkcast java.io.IOException
athrow
9: StackMap locals: org.bouncycastle.asn1.ASN1ParsingException
StackMap stack:
new org.bouncycastle.eac.EACIOException
dup
new java.lang.StringBuilder
dup
ldc "malformed data: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual org.bouncycastle.asn1.ASN1ParsingException.getMessage:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 1
invokespecial org.bouncycastle.eac.EACIOException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 certEncoding [B
3 4 1 e Ljava/lang/ClassCastException;
5 6 1 e Ljava/lang/IllegalArgumentException;
7 10 1 e Lorg/bouncycastle/asn1/ASN1ParsingException;
Exception table:
from to target type
0 1 2 Class java.lang.ClassCastException
0 1 4 Class java.lang.IllegalArgumentException
0 1 6 Class org.bouncycastle.asn1.ASN1ParsingException
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
certEncoding
public void <init>(byte[]);
descriptor: ([B)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokestatic org.bouncycastle.eac.EACCertificateHolder.parseBytes:([B)Lorg/bouncycastle/asn1/eac/CVCertificate;
invokespecial org.bouncycastle.eac.EACCertificateHolder.<init>:(Lorg/bouncycastle/asn1/eac/CVCertificate;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/bouncycastle/eac/EACCertificateHolder;
0 2 1 certEncoding [B
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
certEncoding
public void <init>(org.bouncycastle.asn1.eac.CVCertificate);
descriptor: (Lorg/bouncycastle/asn1/eac/CVCertificate;)V
flags: (0x0001) ACC_PUBLIC
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
putfield org.bouncycastle.eac.EACCertificateHolder.cvCertificate:Lorg/bouncycastle/asn1/eac/CVCertificate;
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/bouncycastle/eac/EACCertificateHolder;
0 3 1 cvCertificate Lorg/bouncycastle/asn1/eac/CVCertificate;
MethodParameters:
Name Flags
cvCertificate
public org.bouncycastle.asn1.eac.CVCertificate toASN1Structure();
descriptor: ()Lorg/bouncycastle/asn1/eac/CVCertificate;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.bouncycastle.eac.EACCertificateHolder.cvCertificate:Lorg/bouncycastle/asn1/eac/CVCertificate;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/bouncycastle/eac/EACCertificateHolder;
public org.bouncycastle.asn1.eac.PublicKeyDataObject getPublicKeyDataObject();
descriptor: ()Lorg/bouncycastle/asn1/eac/PublicKeyDataObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.bouncycastle.eac.EACCertificateHolder.cvCertificate:Lorg/bouncycastle/asn1/eac/CVCertificate;
invokevirtual org.bouncycastle.asn1.eac.CVCertificate.getBody:()Lorg/bouncycastle/asn1/eac/CertificateBody;
invokevirtual org.bouncycastle.asn1.eac.CertificateBody.getPublicKey:()Lorg/bouncycastle/asn1/eac/PublicKeyDataObject;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/bouncycastle/eac/EACCertificateHolder;
public boolean isSignatureValid(org.bouncycastle.eac.operator.EACSignatureVerifier);
descriptor: (Lorg/bouncycastle/eac/operator/EACSignatureVerifier;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: aload 1
invokeinterface org.bouncycastle.eac.operator.EACSignatureVerifier.getOutputStream:()Ljava/io/OutputStream;
astore 2
start local 2 1: aload 2
aload 0
getfield org.bouncycastle.eac.EACCertificateHolder.cvCertificate:Lorg/bouncycastle/asn1/eac/CVCertificate;
invokevirtual org.bouncycastle.asn1.eac.CVCertificate.getBody:()Lorg/bouncycastle/asn1/eac/CertificateBody;
ldc "DER"
invokevirtual org.bouncycastle.asn1.eac.CertificateBody.getEncoded:(Ljava/lang/String;)[B
invokevirtual java.io.OutputStream.write:([B)V
2: aload 2
invokevirtual java.io.OutputStream.close:()V
3: aload 1
aload 0
getfield org.bouncycastle.eac.EACCertificateHolder.cvCertificate:Lorg/bouncycastle/asn1/eac/CVCertificate;
invokevirtual org.bouncycastle.asn1.eac.CVCertificate.getSignature:()[B
invokeinterface org.bouncycastle.eac.operator.EACSignatureVerifier.verify:([B)Z
4: ireturn
end local 2 5: StackMap locals:
StackMap stack: java.lang.Exception
astore 2
start local 2 6: new org.bouncycastle.eac.EACException
dup
new java.lang.StringBuilder
dup
ldc "unable to process signature: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual java.lang.Exception.getMessage:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 2
invokespecial org.bouncycastle.eac.EACException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/bouncycastle/eac/EACCertificateHolder;
0 7 1 verifier Lorg/bouncycastle/eac/operator/EACSignatureVerifier;
1 5 2 vOut Ljava/io/OutputStream;
6 7 2 e Ljava/lang/Exception;
Exception table:
from to target type
0 4 5 Class java.lang.Exception
Exceptions:
throws org.bouncycastle.eac.EACException
MethodParameters:
Name Flags
verifier
}
SourceFile: "EACCertificateHolder.java"