public class sun.security.x509.X509CertImpl extends java.security.cert.X509Certificate implements sun.security.util.DerEncoder
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: sun.security.x509.X509CertImpl
super_class: java.security.cert.X509Certificate
{
private static final long serialVersionUID;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: -3457612960190864406
private static final char DOT;
descriptor: C
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 46
public static final java.lang.String NAME;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "x509"
public static final java.lang.String INFO;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "info"
public static final java.lang.String ALG_ID;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "algorithm"
public static final java.lang.String SIGNATURE;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "signature"
public static final java.lang.String SIGNED_CERT;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "signed_cert"
public static final java.lang.String SUBJECT_DN;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "x509.info.subject.dname"
public static final java.lang.String ISSUER_DN;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "x509.info.issuer.dname"
public static final java.lang.String SERIAL_ID;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "x509.info.serialNumber.number"
public static final java.lang.String PUBLIC_KEY;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "x509.info.key.value"
public static final java.lang.String VERSION;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "x509.info.version.number"
public static final java.lang.String SIG_ALG;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "x509.algorithm"
public static final java.lang.String SIG;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "x509.signature"
private boolean readOnly;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private byte[] signedCert;
descriptor: [B
flags: (0x0002) ACC_PRIVATE
protected sun.security.x509.X509CertInfo info;
descriptor: Lsun/security/x509/X509CertInfo;
flags: (0x0004) ACC_PROTECTED
protected sun.security.x509.AlgorithmId algId;
descriptor: Lsun/security/x509/AlgorithmId;
flags: (0x0004) ACC_PROTECTED
protected byte[] signature;
descriptor: [B
flags: (0x0004) ACC_PROTECTED
private static final int NUM_STANDARD_KEY_USAGE;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 9
private java.util.Collection<java.util.List<?>> subjectAlternativeNames;
descriptor: Ljava/util/Collection;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/Collection<Ljava/util/List<*>;>;
private java.util.Collection<java.util.List<?>> issuerAlternativeNames;
descriptor: Ljava/util/Collection;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/Collection<Ljava/util/List<*>;>;
private java.util.List<java.lang.String> extKeyUsage;
descriptor: Ljava/util/List;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/List<Ljava/lang/String;>;
private java.util.Set<sun.security.x509.AccessDescription> authInfoAccess;
descriptor: Ljava/util/Set;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/Set<Lsun/security/x509/AccessDescription;>;
private java.security.PublicKey verifiedPublicKey;
descriptor: Ljava/security/PublicKey;
flags: (0x0002) ACC_PRIVATE
private java.lang.String verifiedProvider;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private boolean verificationResult;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private java.util.concurrent.ConcurrentHashMap<java.lang.String, java.lang.String> fingerprints;
descriptor: Ljava/util/concurrent/ConcurrentHashMap;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/concurrent/ConcurrentHashMap<Ljava/lang/String;Ljava/lang/String;>;
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.security.cert.X509Certificate.<init>:()V
1: aload 0
iconst_0
putfield sun.security.x509.X509CertImpl.readOnly:Z
2: aload 0
aconst_null
putfield sun.security.x509.X509CertImpl.signedCert:[B
3: aload 0
aconst_null
putfield sun.security.x509.X509CertImpl.info:Lsun/security/x509/X509CertInfo;
4: aload 0
aconst_null
putfield sun.security.x509.X509CertImpl.algId:Lsun/security/x509/AlgorithmId;
5: aload 0
aconst_null
putfield sun.security.x509.X509CertImpl.signature:[B
6: aload 0
7: new java.util.concurrent.ConcurrentHashMap
dup
iconst_2
invokespecial java.util.concurrent.ConcurrentHashMap.<init>:(I)V
putfield sun.security.x509.X509CertImpl.fingerprints:Ljava/util/concurrent/ConcurrentHashMap;
8: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lsun/security/x509/X509CertImpl;
public void <init>(byte[]);
descriptor: ([B)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.security.cert.X509Certificate.<init>:()V
1: aload 0
iconst_0
putfield sun.security.x509.X509CertImpl.readOnly:Z
2: aload 0
aconst_null
putfield sun.security.x509.X509CertImpl.signedCert:[B
3: aload 0
aconst_null
putfield sun.security.x509.X509CertImpl.info:Lsun/security/x509/X509CertInfo;
4: aload 0
aconst_null
putfield sun.security.x509.X509CertImpl.algId:Lsun/security/x509/AlgorithmId;
5: aload 0
aconst_null
putfield sun.security.x509.X509CertImpl.signature:[B
6: aload 0
7: new java.util.concurrent.ConcurrentHashMap
dup
iconst_2
invokespecial java.util.concurrent.ConcurrentHashMap.<init>:(I)V
putfield sun.security.x509.X509CertImpl.fingerprints:Ljava/util/concurrent/ConcurrentHashMap;
8: aload 0
new sun.security.util.DerValue
dup
aload 1
invokespecial sun.security.util.DerValue.<init>:([B)V
invokevirtual sun.security.x509.X509CertImpl.parse:(Lsun/security/util/DerValue;)V
9: goto 13
StackMap locals: sun.security.x509.X509CertImpl byte[]
StackMap stack: java.io.IOException
10: astore 2
start local 2 11: aload 0
aconst_null
putfield sun.security.x509.X509CertImpl.signedCert:[B
12: new java.security.cert.CertificateException
dup
new java.lang.StringBuilder
dup
ldc "Unable to initialize, "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 2
invokespecial java.security.cert.CertificateException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 2 13: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lsun/security/x509/X509CertImpl;
0 14 1 certData [B
11 13 2 e Ljava/io/IOException;
Exception table:
from to target type
8 9 10 Class java.io.IOException
Exceptions:
throws java.security.cert.CertificateException
MethodParameters:
Name Flags
certData
public void <init>(java.io.InputStream);
descriptor: (Ljava/io/InputStream;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.security.cert.X509Certificate.<init>:()V
1: aload 0
iconst_0
putfield sun.security.x509.X509CertImpl.readOnly:Z
2: aload 0
aconst_null
putfield sun.security.x509.X509CertImpl.signedCert:[B
3: aload 0
aconst_null
putfield sun.security.x509.X509CertImpl.info:Lsun/security/x509/X509CertInfo;
4: aload 0
aconst_null
putfield sun.security.x509.X509CertImpl.algId:Lsun/security/x509/AlgorithmId;
5: aload 0
aconst_null
putfield sun.security.x509.X509CertImpl.signature:[B
6: aload 0
7: new java.util.concurrent.ConcurrentHashMap
dup
iconst_2
invokespecial java.util.concurrent.ConcurrentHashMap.<init>:(I)V
putfield sun.security.x509.X509CertImpl.fingerprints:Ljava/util/concurrent/ConcurrentHashMap;
8: aconst_null
astore 2
start local 2 9: new java.io.BufferedInputStream
dup
aload 1
invokespecial java.io.BufferedInputStream.<init>:(Ljava/io/InputStream;)V
astore 3
start local 3 10: aload 3
ldc 2147483647
invokevirtual java.io.BufferedInputStream.mark:(I)V
11: aload 0
aload 3
invokevirtual sun.security.x509.X509CertImpl.readRFC1421Cert:(Ljava/io/InputStream;)Lsun/security/util/DerValue;
astore 2
12: goto 21
StackMap locals: sun.security.x509.X509CertImpl java.io.InputStream sun.security.util.DerValue java.io.BufferedInputStream
StackMap stack: java.io.IOException
13: pop
14: aload 3
invokevirtual java.io.BufferedInputStream.reset:()V
15: new sun.security.util.DerValue
dup
aload 3
invokespecial sun.security.util.DerValue.<init>:(Ljava/io/InputStream;)V
astore 2
16: goto 21
StackMap locals:
StackMap stack: java.io.IOException
17: astore 4
start local 4 18: new java.security.cert.CertificateException
dup
new java.lang.StringBuilder
dup
ldc "Input stream must be either DER-encoded bytes or RFC1421 hex-encoded DER-encoded bytes: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
19: aload 4
invokevirtual java.io.IOException.getMessage:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 4
20: invokespecial java.security.cert.CertificateException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 4 21: StackMap locals:
StackMap stack:
aload 0
aload 2
invokevirtual sun.security.x509.X509CertImpl.parse:(Lsun/security/util/DerValue;)V
22: goto 28
StackMap locals:
StackMap stack: java.io.IOException
23: astore 4
start local 4 24: aload 0
aconst_null
putfield sun.security.x509.X509CertImpl.signedCert:[B
25: new java.security.cert.CertificateException
dup
new java.lang.StringBuilder
dup
ldc "Unable to parse DER value of certificate, "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
26: aload 4
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 4
27: invokespecial java.security.cert.CertificateException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 4 28: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 29 0 this Lsun/security/x509/X509CertImpl;
0 29 1 in Ljava/io/InputStream;
9 29 2 der Lsun/security/util/DerValue;
10 29 3 inBuffered Ljava/io/BufferedInputStream;
18 21 4 ioe1 Ljava/io/IOException;
24 28 4 ioe Ljava/io/IOException;
Exception table:
from to target type
10 12 13 Class java.io.IOException
14 16 17 Class java.io.IOException
21 22 23 Class java.io.IOException
Exceptions:
throws java.security.cert.CertificateException
MethodParameters:
Name Flags
in
private sun.security.util.DerValue readRFC1421Cert(java.io.InputStream);
descriptor: (Ljava/io/InputStream;)Lsun/security/util/DerValue;
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=7, args_size=2
start local 0 start local 1 0: aconst_null
astore 2
start local 2 1: aconst_null
astore 3
start local 3 2: new java.io.BufferedReader
dup
new java.io.InputStreamReader
dup
aload 1
getstatic java.nio.charset.StandardCharsets.US_ASCII:Ljava/nio/charset/Charset;
invokespecial java.io.InputStreamReader.<init>:(Ljava/io/InputStream;Ljava/nio/charset/Charset;)V
invokespecial java.io.BufferedReader.<init>:(Ljava/io/Reader;)V
3: astore 4
start local 4 4: aload 4
invokevirtual java.io.BufferedReader.readLine:()Ljava/lang/String;
astore 3
5: goto 10
StackMap locals: sun.security.x509.X509CertImpl java.io.InputStream sun.security.util.DerValue java.lang.String java.io.BufferedReader
StackMap stack: java.io.IOException
6: astore 5
start local 5 7: new java.io.IOException
dup
new java.lang.StringBuilder
dup
ldc "Unable to read InputStream: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
8: aload 5
invokevirtual java.io.IOException.getMessage:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
9: invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
athrow
end local 5 10: StackMap locals:
StackMap stack:
aload 3
ldc "-----BEGIN CERTIFICATE-----"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 23
11: new java.io.ByteArrayOutputStream
dup
invokespecial java.io.ByteArrayOutputStream.<init>:()V
astore 5
start local 5 12: goto 17
13: StackMap locals: java.io.ByteArrayOutputStream
StackMap stack:
aload 3
ldc "-----END CERTIFICATE-----"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 16
14: new sun.security.util.DerValue
dup
aload 5
invokevirtual java.io.ByteArrayOutputStream.toByteArray:()[B
invokespecial sun.security.util.DerValue.<init>:([B)V
astore 2
15: goto 24
16: StackMap locals:
StackMap stack:
aload 5
aload 3
invokestatic sun.security.util.Pem.decode:(Ljava/lang/String;)[B
invokevirtual java.io.ByteArrayOutputStream.write:([B)V
17: StackMap locals:
StackMap stack:
aload 4
invokevirtual java.io.BufferedReader.readLine:()Ljava/lang/String;
dup
astore 3
ifnonnull 13
18: goto 24
StackMap locals:
StackMap stack: java.io.IOException
19: astore 6
start local 6 20: new java.io.IOException
dup
new java.lang.StringBuilder
dup
ldc "Unable to read InputStream: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
21: aload 6
invokevirtual java.io.IOException.getMessage:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
22: invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
athrow
end local 6 end local 5 23: StackMap locals:
StackMap stack:
new java.io.IOException
dup
ldc "InputStream is not RFC1421 hex-encoded DER bytes"
invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
athrow
24: StackMap locals:
StackMap stack:
aload 2
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 25 0 this Lsun/security/x509/X509CertImpl;
0 25 1 in Ljava/io/InputStream;
1 25 2 der Lsun/security/util/DerValue;
2 25 3 line Ljava/lang/String;
4 25 4 certBufferedReader Ljava/io/BufferedReader;
7 10 5 ioe1 Ljava/io/IOException;
12 23 5 decstream Ljava/io/ByteArrayOutputStream;
20 23 6 ioe2 Ljava/io/IOException;
Exception table:
from to target type
4 5 6 Class java.io.IOException
12 18 19 Class java.io.IOException
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
in
public void <init>(sun.security.x509.X509CertInfo);
descriptor: (Lsun/security/x509/X509CertInfo;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.security.cert.X509Certificate.<init>:()V
1: aload 0
iconst_0
putfield sun.security.x509.X509CertImpl.readOnly:Z
2: aload 0
aconst_null
putfield sun.security.x509.X509CertImpl.signedCert:[B
3: aload 0
aconst_null
putfield sun.security.x509.X509CertImpl.info:Lsun/security/x509/X509CertInfo;
4: aload 0
aconst_null
putfield sun.security.x509.X509CertImpl.algId:Lsun/security/x509/AlgorithmId;
5: aload 0
aconst_null
putfield sun.security.x509.X509CertImpl.signature:[B
6: aload 0
7: new java.util.concurrent.ConcurrentHashMap
dup
iconst_2
invokespecial java.util.concurrent.ConcurrentHashMap.<init>:(I)V
putfield sun.security.x509.X509CertImpl.fingerprints:Ljava/util/concurrent/ConcurrentHashMap;
8: aload 0
aload 1
putfield sun.security.x509.X509CertImpl.info:Lsun/security/x509/X509CertInfo;
9: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lsun/security/x509/X509CertImpl;
0 10 1 certInfo Lsun/security/x509/X509CertInfo;
MethodParameters:
Name Flags
certInfo
public void <init>(sun.security.util.DerValue);
descriptor: (Lsun/security/util/DerValue;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.security.cert.X509Certificate.<init>:()V
1: aload 0
iconst_0
putfield sun.security.x509.X509CertImpl.readOnly:Z
2: aload 0
aconst_null
putfield sun.security.x509.X509CertImpl.signedCert:[B
3: aload 0
aconst_null
putfield sun.security.x509.X509CertImpl.info:Lsun/security/x509/X509CertInfo;
4: aload 0
aconst_null
putfield sun.security.x509.X509CertImpl.algId:Lsun/security/x509/AlgorithmId;
5: aload 0
aconst_null
putfield sun.security.x509.X509CertImpl.signature:[B
6: aload 0
7: new java.util.concurrent.ConcurrentHashMap
dup
iconst_2
invokespecial java.util.concurrent.ConcurrentHashMap.<init>:(I)V
putfield sun.security.x509.X509CertImpl.fingerprints:Ljava/util/concurrent/ConcurrentHashMap;
8: aload 0
aload 1
invokevirtual sun.security.x509.X509CertImpl.parse:(Lsun/security/util/DerValue;)V
9: goto 13
StackMap locals: sun.security.x509.X509CertImpl sun.security.util.DerValue
StackMap stack: java.io.IOException
10: astore 2
start local 2 11: aload 0
aconst_null
putfield sun.security.x509.X509CertImpl.signedCert:[B
12: new java.security.cert.CertificateException
dup
new java.lang.StringBuilder
dup
ldc "Unable to initialize, "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 2
invokespecial java.security.cert.CertificateException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 2 13: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lsun/security/x509/X509CertImpl;
0 14 1 derVal Lsun/security/util/DerValue;
11 13 2 e Ljava/io/IOException;
Exception table:
from to target type
8 9 10 Class java.io.IOException
Exceptions:
throws java.security.cert.CertificateException
MethodParameters:
Name Flags
derVal
public void encode(java.io.OutputStream);
descriptor: (Ljava/io/OutputStream;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield sun.security.x509.X509CertImpl.signedCert:[B
ifnonnull 4
1: new java.security.cert.CertificateEncodingException
dup
2: ldc "Null certificate to encode"
3: invokespecial java.security.cert.CertificateEncodingException.<init>:(Ljava/lang/String;)V
athrow
4: StackMap locals:
StackMap stack:
aload 1
aload 0
getfield sun.security.x509.X509CertImpl.signedCert:[B
invokevirtual byte[].clone:()Ljava/lang/Object;
checkcast byte[]
invokevirtual java.io.OutputStream.write:([B)V
5: goto 8
StackMap locals:
StackMap stack: java.io.IOException
6: astore 2
start local 2 7: new java.security.cert.CertificateEncodingException
dup
aload 2
invokevirtual java.io.IOException.toString:()Ljava/lang/String;
invokespecial java.security.cert.CertificateEncodingException.<init>:(Ljava/lang/String;)V
athrow
end local 2 8: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lsun/security/x509/X509CertImpl;
0 9 1 out Ljava/io/OutputStream;
7 8 2 e Ljava/io/IOException;
Exception table:
from to target type
4 5 6 Class java.io.IOException
Exceptions:
throws java.security.cert.CertificateEncodingException
MethodParameters:
Name Flags
out
public void derEncode(java.io.OutputStream);
descriptor: (Ljava/io/OutputStream;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield sun.security.x509.X509CertImpl.signedCert:[B
ifnonnull 2
1: new java.io.IOException
dup
ldc "Null certificate to encode"
invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 1
aload 0
getfield sun.security.x509.X509CertImpl.signedCert:[B
invokevirtual byte[].clone:()Ljava/lang/Object;
checkcast byte[]
invokevirtual java.io.OutputStream.write:([B)V
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lsun/security/x509/X509CertImpl;
0 4 1 out Ljava/io/OutputStream;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
out
public byte[] getEncoded();
descriptor: ()[B
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual sun.security.x509.X509CertImpl.getEncodedInternal:()[B
invokevirtual byte[].clone:()Ljava/lang/Object;
checkcast byte[]
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/security/x509/X509CertImpl;
Exceptions:
throws java.security.cert.CertificateEncodingException
public byte[] getEncodedInternal();
descriptor: ()[B
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.security.x509.X509CertImpl.signedCert:[B
ifnonnull 4
1: new java.security.cert.CertificateEncodingException
dup
2: ldc "Null certificate to encode"
3: invokespecial java.security.cert.CertificateEncodingException.<init>:(Ljava/lang/String;)V
athrow
4: StackMap locals:
StackMap stack:
aload 0
getfield sun.security.x509.X509CertImpl.signedCert:[B
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lsun/security/x509/X509CertImpl;
Exceptions:
throws java.security.cert.CertificateEncodingException
public void verify(java.security.PublicKey);
descriptor: (Ljava/security/PublicKey;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
ldc ""
invokevirtual sun.security.x509.X509CertImpl.verify:(Ljava/security/PublicKey;Ljava/lang/String;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/security/x509/X509CertImpl;
0 2 1 key Ljava/security/PublicKey;
Exceptions:
throws java.security.cert.CertificateException, java.security.NoSuchAlgorithmException, java.security.InvalidKeyException, java.security.NoSuchProviderException, java.security.SignatureException
MethodParameters:
Name Flags
key
public synchronized void verify(java.security.PublicKey, java.lang.String);
descriptor: (Ljava/security/PublicKey;Ljava/lang/String;)V
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=4, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 2
ifnonnull 2
1: ldc ""
astore 2
2: StackMap locals:
StackMap stack:
aload 0
getfield sun.security.x509.X509CertImpl.verifiedPublicKey:Ljava/security/PublicKey;
ifnull 7
aload 0
getfield sun.security.x509.X509CertImpl.verifiedPublicKey:Ljava/security/PublicKey;
aload 1
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifeq 7
3: aload 2
aload 0
getfield sun.security.x509.X509CertImpl.verifiedProvider:Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 7
4: aload 0
getfield sun.security.x509.X509CertImpl.verificationResult:Z
ifeq 6
5: return
6: StackMap locals:
StackMap stack:
new java.security.SignatureException
dup
ldc "Signature does not match."
invokespecial java.security.SignatureException.<init>:(Ljava/lang/String;)V
athrow
7: StackMap locals:
StackMap stack:
aload 0
getfield sun.security.x509.X509CertImpl.signedCert:[B
ifnonnull 9
8: new java.security.cert.CertificateEncodingException
dup
ldc "Uninitialized certificate"
invokespecial java.security.cert.CertificateEncodingException.<init>:(Ljava/lang/String;)V
athrow
9: StackMap locals:
StackMap stack:
aconst_null
astore 3
start local 3 10: aload 0
getfield sun.security.x509.X509CertImpl.algId:Lsun/security/x509/AlgorithmId;
invokevirtual sun.security.x509.AlgorithmId.getName:()Ljava/lang/String;
astore 4
start local 4 11: aload 2
invokevirtual java.lang.String.isEmpty:()Z
ifeq 14
12: aload 4
invokestatic java.security.Signature.getInstance:(Ljava/lang/String;)Ljava/security/Signature;
astore 3
13: goto 15
14: StackMap locals: java.security.Signature java.lang.String
StackMap stack:
aload 4
aload 2
invokestatic java.security.Signature.getInstance:(Ljava/lang/String;Ljava/lang/String;)Ljava/security/Signature;
astore 3
15: StackMap locals:
StackMap stack:
aload 3
aload 1
16: aload 4
aload 0
invokevirtual sun.security.x509.X509CertImpl.getSigAlgParams:()[B
invokestatic sun.security.util.SignatureUtil.getParamSpec:(Ljava/lang/String;[B)Ljava/security/spec/AlgorithmParameterSpec;
17: invokestatic sun.security.util.SignatureUtil.initVerifyWithParam:(Ljava/security/Signature;Ljava/security/PublicKey;Ljava/security/spec/AlgorithmParameterSpec;)V
18: goto 23
StackMap locals:
StackMap stack: java.security.ProviderException
19: astore 5
start local 5 20: new java.security.cert.CertificateException
dup
aload 5
invokevirtual java.security.ProviderException.getMessage:()Ljava/lang/String;
aload 5
invokevirtual java.security.ProviderException.getCause:()Ljava/lang/Throwable;
invokespecial java.security.cert.CertificateException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 5 21: StackMap locals:
StackMap stack: java.security.InvalidAlgorithmParameterException
astore 5
start local 5 22: new java.security.cert.CertificateException
dup
aload 5
invokespecial java.security.cert.CertificateException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 5 23: StackMap locals:
StackMap stack:
aload 0
getfield sun.security.x509.X509CertImpl.info:Lsun/security/x509/X509CertInfo;
invokevirtual sun.security.x509.X509CertInfo.getEncodedInfo:()[B
astore 5
start local 5 24: aload 3
aload 5
iconst_0
aload 5
arraylength
invokevirtual java.security.Signature.update:([BII)V
25: aload 0
aload 3
aload 0
getfield sun.security.x509.X509CertImpl.signature:[B
invokevirtual java.security.Signature.verify:([B)Z
putfield sun.security.x509.X509CertImpl.verificationResult:Z
26: aload 0
aload 1
putfield sun.security.x509.X509CertImpl.verifiedPublicKey:Ljava/security/PublicKey;
27: aload 0
aload 2
putfield sun.security.x509.X509CertImpl.verifiedProvider:Ljava/lang/String;
28: aload 0
getfield sun.security.x509.X509CertImpl.verificationResult:Z
ifne 30
29: new java.security.SignatureException
dup
ldc "Signature does not match."
invokespecial java.security.SignatureException.<init>:(Ljava/lang/String;)V
athrow
30: StackMap locals: byte[]
StackMap stack:
return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 31 0 this Lsun/security/x509/X509CertImpl;
0 31 1 key Ljava/security/PublicKey;
0 31 2 sigProvider Ljava/lang/String;
10 31 3 sigVerf Ljava/security/Signature;
11 31 4 sigName Ljava/lang/String;
20 21 5 e Ljava/security/ProviderException;
22 23 5 e Ljava/security/InvalidAlgorithmParameterException;
24 31 5 rawCert [B
Exception table:
from to target type
15 18 19 Class java.security.ProviderException
15 18 21 Class java.security.InvalidAlgorithmParameterException
Exceptions:
throws java.security.cert.CertificateException, java.security.NoSuchAlgorithmException, java.security.InvalidKeyException, java.security.NoSuchProviderException, java.security.SignatureException
MethodParameters:
Name Flags
key
sigProvider
public synchronized void verify(java.security.PublicKey, java.security.Provider);
descriptor: (Ljava/security/PublicKey;Ljava/security/Provider;)V
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=4, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield sun.security.x509.X509CertImpl.signedCert:[B
ifnonnull 2
1: new java.security.cert.CertificateEncodingException
dup
ldc "Uninitialized certificate"
invokespecial java.security.cert.CertificateEncodingException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aconst_null
astore 3
start local 3 3: aload 0
getfield sun.security.x509.X509CertImpl.algId:Lsun/security/x509/AlgorithmId;
invokevirtual sun.security.x509.AlgorithmId.getName:()Ljava/lang/String;
astore 4
start local 4 4: aload 2
ifnonnull 7
5: aload 4
invokestatic java.security.Signature.getInstance:(Ljava/lang/String;)Ljava/security/Signature;
astore 3
6: goto 8
7: StackMap locals: java.security.Signature java.lang.String
StackMap stack:
aload 4
aload 2
invokestatic java.security.Signature.getInstance:(Ljava/lang/String;Ljava/security/Provider;)Ljava/security/Signature;
astore 3
8: StackMap locals:
StackMap stack:
aload 3
aload 1
9: aload 4
aload 0
invokevirtual sun.security.x509.X509CertImpl.getSigAlgParams:()[B
invokestatic sun.security.util.SignatureUtil.getParamSpec:(Ljava/lang/String;[B)Ljava/security/spec/AlgorithmParameterSpec;
10: invokestatic sun.security.util.SignatureUtil.initVerifyWithParam:(Ljava/security/Signature;Ljava/security/PublicKey;Ljava/security/spec/AlgorithmParameterSpec;)V
11: goto 16
StackMap locals:
StackMap stack: java.security.ProviderException
12: astore 5
start local 5 13: new java.security.cert.CertificateException
dup
aload 5
invokevirtual java.security.ProviderException.getMessage:()Ljava/lang/String;
aload 5
invokevirtual java.security.ProviderException.getCause:()Ljava/lang/Throwable;
invokespecial java.security.cert.CertificateException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 5 14: StackMap locals:
StackMap stack: java.security.InvalidAlgorithmParameterException
astore 5
start local 5 15: new java.security.cert.CertificateException
dup
aload 5
invokespecial java.security.cert.CertificateException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 5 16: StackMap locals:
StackMap stack:
aload 0
getfield sun.security.x509.X509CertImpl.info:Lsun/security/x509/X509CertInfo;
invokevirtual sun.security.x509.X509CertInfo.getEncodedInfo:()[B
astore 5
start local 5 17: aload 3
aload 5
iconst_0
aload 5
arraylength
invokevirtual java.security.Signature.update:([BII)V
18: aload 0
aload 3
aload 0
getfield sun.security.x509.X509CertImpl.signature:[B
invokevirtual java.security.Signature.verify:([B)Z
putfield sun.security.x509.X509CertImpl.verificationResult:Z
19: aload 0
aload 1
putfield sun.security.x509.X509CertImpl.verifiedPublicKey:Ljava/security/PublicKey;
20: aload 0
getfield sun.security.x509.X509CertImpl.verificationResult:Z
ifne 22
21: new java.security.SignatureException
dup
ldc "Signature does not match."
invokespecial java.security.SignatureException.<init>:(Ljava/lang/String;)V
athrow
22: StackMap locals: byte[]
StackMap stack:
return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 23 0 this Lsun/security/x509/X509CertImpl;
0 23 1 key Ljava/security/PublicKey;
0 23 2 sigProvider Ljava/security/Provider;
3 23 3 sigVerf Ljava/security/Signature;
4 23 4 sigName Ljava/lang/String;
13 14 5 e Ljava/security/ProviderException;
15 16 5 e Ljava/security/InvalidAlgorithmParameterException;
17 23 5 rawCert [B
Exception table:
from to target type
8 11 12 Class java.security.ProviderException
8 11 14 Class java.security.InvalidAlgorithmParameterException
Exceptions:
throws java.security.cert.CertificateException, java.security.NoSuchAlgorithmException, java.security.InvalidKeyException, java.security.SignatureException
MethodParameters:
Name Flags
key
sigProvider
public void sign(java.security.PrivateKey, java.lang.String);
descriptor: (Ljava/security/PrivateKey;Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
aconst_null
invokevirtual sun.security.x509.X509CertImpl.sign:(Ljava/security/PrivateKey;Ljava/lang/String;Ljava/lang/String;)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/security/x509/X509CertImpl;
0 2 1 key Ljava/security/PrivateKey;
0 2 2 algorithm Ljava/lang/String;
Exceptions:
throws java.security.cert.CertificateException, java.security.NoSuchAlgorithmException, java.security.InvalidKeyException, java.security.NoSuchProviderException, java.security.SignatureException
MethodParameters:
Name Flags
key
algorithm
public void sign(java.security.PrivateKey, java.lang.String, java.lang.String);
descriptor: (Ljava/security/PrivateKey;Ljava/lang/String;Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=8, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield sun.security.x509.X509CertImpl.readOnly:Z
ifeq 4
1: new java.security.cert.CertificateEncodingException
dup
2: ldc "cannot over-write existing certificate"
3: invokespecial java.security.cert.CertificateEncodingException.<init>:(Ljava/lang/String;)V
athrow
4: StackMap locals:
StackMap stack:
aload 2
aload 1
aload 3
5: invokestatic sun.security.util.SignatureUtil.fromKey:(Ljava/lang/String;Ljava/security/Key;Ljava/lang/String;)Ljava/security/Signature;
astore 4
start local 4 6: aload 0
aload 4
aload 1
invokestatic sun.security.util.SignatureUtil.fromSignature:(Ljava/security/Signature;Ljava/security/PrivateKey;)Lsun/security/x509/AlgorithmId;
putfield sun.security.x509.X509CertImpl.algId:Lsun/security/x509/AlgorithmId;
7: new sun.security.util.DerOutputStream
dup
invokespecial sun.security.util.DerOutputStream.<init>:()V
astore 5
start local 5 8: new sun.security.util.DerOutputStream
dup
invokespecial sun.security.util.DerOutputStream.<init>:()V
astore 6
start local 6 9: aload 0
getfield sun.security.x509.X509CertImpl.info:Lsun/security/x509/X509CertInfo;
ldc "algorithmID"
10: new sun.security.x509.CertificateAlgorithmId
dup
aload 0
getfield sun.security.x509.X509CertImpl.algId:Lsun/security/x509/AlgorithmId;
invokespecial sun.security.x509.CertificateAlgorithmId.<init>:(Lsun/security/x509/AlgorithmId;)V
11: invokevirtual sun.security.x509.X509CertInfo.set:(Ljava/lang/String;Ljava/lang/Object;)V
12: aload 0
getfield sun.security.x509.X509CertImpl.info:Lsun/security/x509/X509CertInfo;
aload 6
invokevirtual sun.security.x509.X509CertInfo.encode:(Ljava/io/OutputStream;)V
13: aload 6
invokevirtual sun.security.util.DerOutputStream.toByteArray:()[B
astore 7
start local 7 14: aload 0
getfield sun.security.x509.X509CertImpl.algId:Lsun/security/x509/AlgorithmId;
aload 6
invokevirtual sun.security.x509.AlgorithmId.encode:(Lsun/security/util/DerOutputStream;)V
15: aload 4
aload 7
iconst_0
aload 7
arraylength
invokevirtual java.security.Signature.update:([BII)V
16: aload 0
aload 4
invokevirtual java.security.Signature.sign:()[B
putfield sun.security.x509.X509CertImpl.signature:[B
17: aload 6
aload 0
getfield sun.security.x509.X509CertImpl.signature:[B
invokevirtual sun.security.util.DerOutputStream.putBitString:([B)V
18: aload 5
bipush 48
aload 6
invokevirtual sun.security.util.DerOutputStream.write:(BLsun/security/util/DerOutputStream;)V
19: aload 0
aload 5
invokevirtual sun.security.util.DerOutputStream.toByteArray:()[B
putfield sun.security.x509.X509CertImpl.signedCert:[B
20: aload 0
iconst_1
putfield sun.security.x509.X509CertImpl.readOnly:Z
end local 7 end local 6 end local 5 end local 4 21: goto 24
StackMap locals:
StackMap stack: java.io.IOException
22: astore 4
start local 4 23: new java.security.cert.CertificateEncodingException
dup
aload 4
invokevirtual java.io.IOException.toString:()Ljava/lang/String;
invokespecial java.security.cert.CertificateEncodingException.<init>:(Ljava/lang/String;)V
athrow
end local 4 24: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 25 0 this Lsun/security/x509/X509CertImpl;
0 25 1 key Ljava/security/PrivateKey;
0 25 2 algorithm Ljava/lang/String;
0 25 3 provider Ljava/lang/String;
6 21 4 sigEngine Ljava/security/Signature;
8 21 5 out Lsun/security/util/DerOutputStream;
9 21 6 tmp Lsun/security/util/DerOutputStream;
14 21 7 rawCert [B
23 24 4 e Ljava/io/IOException;
Exception table:
from to target type
0 21 22 Class java.io.IOException
Exceptions:
throws java.security.cert.CertificateException, java.security.NoSuchAlgorithmException, java.security.InvalidKeyException, java.security.NoSuchProviderException, java.security.SignatureException
MethodParameters:
Name Flags
key
algorithm
provider
public void checkValidity();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: new java.util.Date
dup
invokespecial java.util.Date.<init>:()V
astore 1
start local 1 1: aload 0
aload 1
invokevirtual sun.security.x509.X509CertImpl.checkValidity:(Ljava/util/Date;)V
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/security/x509/X509CertImpl;
1 3 1 date Ljava/util/Date;
Exceptions:
throws java.security.cert.CertificateExpiredException, java.security.cert.CertificateNotYetValidException
public void checkValidity(java.util.Date);
descriptor: (Ljava/util/Date;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aconst_null
astore 2
start local 2 1: aload 0
getfield sun.security.x509.X509CertImpl.info:Lsun/security/x509/X509CertInfo;
ldc "validity"
invokevirtual sun.security.x509.X509CertInfo.get:(Ljava/lang/String;)Ljava/lang/Object;
checkcast sun.security.x509.CertificateValidity
astore 2
2: goto 5
StackMap locals: sun.security.x509.X509CertImpl java.util.Date sun.security.x509.CertificateValidity
StackMap stack: java.lang.Exception
3: pop
4: new java.security.cert.CertificateNotYetValidException
dup
ldc "Incorrect validity period"
invokespecial java.security.cert.CertificateNotYetValidException.<init>:(Ljava/lang/String;)V
athrow
5: StackMap locals:
StackMap stack:
aload 2
ifnonnull 7
6: new java.security.cert.CertificateNotYetValidException
dup
ldc "Null validity period"
invokespecial java.security.cert.CertificateNotYetValidException.<init>:(Ljava/lang/String;)V
athrow
7: StackMap locals:
StackMap stack:
aload 2
aload 1
invokevirtual sun.security.x509.CertificateValidity.valid:(Ljava/util/Date;)V
8: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lsun/security/x509/X509CertImpl;
0 9 1 date Ljava/util/Date;
1 9 2 interval Lsun/security/x509/CertificateValidity;
Exception table:
from to target type
1 2 3 Class java.lang.Exception
Exceptions:
throws java.security.cert.CertificateExpiredException, java.security.cert.CertificateNotYetValidException
MethodParameters:
Name Flags
date
public java.lang.Object get(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=2
start local 0 start local 1 0: new sun.security.x509.X509AttributeName
dup
aload 1
invokespecial sun.security.x509.X509AttributeName.<init>:(Ljava/lang/String;)V
astore 2
start local 2 1: aload 2
invokevirtual sun.security.x509.X509AttributeName.getPrefix:()Ljava/lang/String;
astore 3
start local 3 2: aload 3
ldc "x509"
invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
ifne 6
3: new java.security.cert.CertificateParsingException
dup
new java.lang.StringBuilder
dup
ldc "Invalid root of attribute name, expected [x509], received ["
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
4: aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "]"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
5: invokespecial java.security.cert.CertificateParsingException.<init>:(Ljava/lang/String;)V
athrow
6: StackMap locals: sun.security.x509.X509AttributeName java.lang.String
StackMap stack:
new sun.security.x509.X509AttributeName
dup
aload 2
invokevirtual sun.security.x509.X509AttributeName.getSuffix:()Ljava/lang/String;
invokespecial sun.security.x509.X509AttributeName.<init>:(Ljava/lang/String;)V
astore 2
7: aload 2
invokevirtual sun.security.x509.X509AttributeName.getPrefix:()Ljava/lang/String;
astore 3
8: aload 3
ldc "info"
invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
ifeq 19
9: aload 0
getfield sun.security.x509.X509CertImpl.info:Lsun/security/x509/X509CertInfo;
ifnonnull 11
10: aconst_null
areturn
11: StackMap locals:
StackMap stack:
aload 2
invokevirtual sun.security.x509.X509AttributeName.getSuffix:()Ljava/lang/String;
ifnull 18
12: aload 0
getfield sun.security.x509.X509CertImpl.info:Lsun/security/x509/X509CertInfo;
aload 2
invokevirtual sun.security.x509.X509AttributeName.getSuffix:()Ljava/lang/String;
invokevirtual sun.security.x509.X509CertInfo.get:(Ljava/lang/String;)Ljava/lang/Object;
13: areturn
14: StackMap locals:
StackMap stack: java.io.IOException
astore 4
start local 4 15: new java.security.cert.CertificateParsingException
dup
aload 4
invokevirtual java.io.IOException.toString:()Ljava/lang/String;
invokespecial java.security.cert.CertificateParsingException.<init>:(Ljava/lang/String;)V
athrow
end local 4 16: StackMap locals:
StackMap stack: java.security.cert.CertificateException
astore 4
start local 4 17: new java.security.cert.CertificateParsingException
dup
aload 4
invokevirtual java.security.cert.CertificateException.toString:()Ljava/lang/String;
invokespecial java.security.cert.CertificateParsingException.<init>:(Ljava/lang/String;)V
athrow
end local 4 18: StackMap locals:
StackMap stack:
aload 0
getfield sun.security.x509.X509CertImpl.info:Lsun/security/x509/X509CertInfo;
areturn
19: StackMap locals:
StackMap stack:
aload 3
ldc "algorithm"
invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
ifeq 21
20: aload 0
getfield sun.security.x509.X509CertImpl.algId:Lsun/security/x509/AlgorithmId;
areturn
21: StackMap locals:
StackMap stack:
aload 3
ldc "signature"
invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
ifeq 25
22: aload 0
getfield sun.security.x509.X509CertImpl.signature:[B
ifnull 24
23: aload 0
getfield sun.security.x509.X509CertImpl.signature:[B
invokevirtual byte[].clone:()Ljava/lang/Object;
areturn
24: StackMap locals:
StackMap stack:
aconst_null
areturn
25: StackMap locals:
StackMap stack:
aload 3
ldc "signed_cert"
invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
ifeq 29
26: aload 0
getfield sun.security.x509.X509CertImpl.signedCert:[B
ifnull 28
27: aload 0
getfield sun.security.x509.X509CertImpl.signedCert:[B
invokevirtual byte[].clone:()Ljava/lang/Object;
areturn
28: StackMap locals:
StackMap stack:
aconst_null
areturn
29: StackMap locals:
StackMap stack:
new java.security.cert.CertificateParsingException
dup
new java.lang.StringBuilder
dup
ldc "Attribute name not recognized or get() not allowed for the same: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
30: aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
31: invokespecial java.security.cert.CertificateParsingException.<init>:(Ljava/lang/String;)V
athrow
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 32 0 this Lsun/security/x509/X509CertImpl;
0 32 1 name Ljava/lang/String;
1 32 2 attr Lsun/security/x509/X509AttributeName;
2 32 3 id Ljava/lang/String;
15 16 4 e Ljava/io/IOException;
17 18 4 e Ljava/security/cert/CertificateException;
Exception table:
from to target type
12 13 14 Class java.io.IOException
12 13 16 Class java.security.cert.CertificateException
Exceptions:
throws java.security.cert.CertificateParsingException
MethodParameters:
Name Flags
name
public void set(java.lang.String, java.lang.Object);
descriptor: (Ljava/lang/String;Ljava/lang/Object;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield sun.security.x509.X509CertImpl.readOnly:Z
ifeq 2
1: new java.security.cert.CertificateException
dup
ldc "cannot over-write existing certificate"
invokespecial java.security.cert.CertificateException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
new sun.security.x509.X509AttributeName
dup
aload 1
invokespecial sun.security.x509.X509AttributeName.<init>:(Ljava/lang/String;)V
astore 3
start local 3 3: aload 3
invokevirtual sun.security.x509.X509AttributeName.getPrefix:()Ljava/lang/String;
astore 4
start local 4 4: aload 4
ldc "x509"
invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
ifne 8
5: new java.security.cert.CertificateException
dup
new java.lang.StringBuilder
dup
ldc "Invalid root of attribute name, expected [x509], received "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
6: aload 4
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
7: invokespecial java.security.cert.CertificateException.<init>:(Ljava/lang/String;)V
athrow
8: StackMap locals: sun.security.x509.X509AttributeName java.lang.String
StackMap stack:
new sun.security.x509.X509AttributeName
dup
aload 3
invokevirtual sun.security.x509.X509AttributeName.getSuffix:()Ljava/lang/String;
invokespecial sun.security.x509.X509AttributeName.<init>:(Ljava/lang/String;)V
astore 3
9: aload 3
invokevirtual sun.security.x509.X509AttributeName.getPrefix:()Ljava/lang/String;
astore 4
10: aload 4
ldc "info"
invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
ifeq 20
11: aload 3
invokevirtual sun.security.x509.X509AttributeName.getSuffix:()Ljava/lang/String;
ifnonnull 17
12: aload 2
instanceof sun.security.x509.X509CertInfo
ifne 14
13: new java.security.cert.CertificateException
dup
ldc "Attribute value should be of type X509CertInfo."
invokespecial java.security.cert.CertificateException.<init>:(Ljava/lang/String;)V
athrow
14: StackMap locals:
StackMap stack:
aload 0
aload 2
checkcast sun.security.x509.X509CertInfo
putfield sun.security.x509.X509CertImpl.info:Lsun/security/x509/X509CertInfo;
15: aload 0
aconst_null
putfield sun.security.x509.X509CertImpl.signedCert:[B
16: goto 23
17: StackMap locals:
StackMap stack:
aload 0
getfield sun.security.x509.X509CertImpl.info:Lsun/security/x509/X509CertInfo;
aload 3
invokevirtual sun.security.x509.X509AttributeName.getSuffix:()Ljava/lang/String;
aload 2
invokevirtual sun.security.x509.X509CertInfo.set:(Ljava/lang/String;Ljava/lang/Object;)V
18: aload 0
aconst_null
putfield sun.security.x509.X509CertImpl.signedCert:[B
19: goto 23
20: StackMap locals:
StackMap stack:
new java.security.cert.CertificateException
dup
new java.lang.StringBuilder
dup
ldc "Attribute name not recognized or set() not allowed for the same: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
21: aload 4
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
22: invokespecial java.security.cert.CertificateException.<init>:(Ljava/lang/String;)V
athrow
23: StackMap locals:
StackMap stack:
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 24 0 this Lsun/security/x509/X509CertImpl;
0 24 1 name Ljava/lang/String;
0 24 2 obj Ljava/lang/Object;
3 24 3 attr Lsun/security/x509/X509AttributeName;
4 24 4 id Ljava/lang/String;
Exceptions:
throws java.security.cert.CertificateException, java.io.IOException
MethodParameters:
Name Flags
name
obj
public void delete(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield sun.security.x509.X509CertImpl.readOnly:Z
ifeq 2
1: new java.security.cert.CertificateException
dup
ldc "cannot over-write existing certificate"
invokespecial java.security.cert.CertificateException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
new sun.security.x509.X509AttributeName
dup
aload 1
invokespecial sun.security.x509.X509AttributeName.<init>:(Ljava/lang/String;)V
astore 2
start local 2 3: aload 2
invokevirtual sun.security.x509.X509AttributeName.getPrefix:()Ljava/lang/String;
astore 3
start local 3 4: aload 3
ldc "x509"
invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
ifne 8
5: new java.security.cert.CertificateException
dup
new java.lang.StringBuilder
dup
ldc "Invalid root of attribute name, expected [x509], received "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
6: aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
7: invokespecial java.security.cert.CertificateException.<init>:(Ljava/lang/String;)V
athrow
8: StackMap locals: sun.security.x509.X509AttributeName java.lang.String
StackMap stack:
new sun.security.x509.X509AttributeName
dup
aload 2
invokevirtual sun.security.x509.X509AttributeName.getSuffix:()Ljava/lang/String;
invokespecial sun.security.x509.X509AttributeName.<init>:(Ljava/lang/String;)V
astore 2
9: aload 2
invokevirtual sun.security.x509.X509AttributeName.getPrefix:()Ljava/lang/String;
astore 3
10: aload 3
ldc "info"
invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
ifeq 16
11: aload 2
invokevirtual sun.security.x509.X509AttributeName.getSuffix:()Ljava/lang/String;
ifnull 14
12: aload 0
aconst_null
putfield sun.security.x509.X509CertImpl.info:Lsun/security/x509/X509CertInfo;
13: goto 28
14: StackMap locals:
StackMap stack:
aload 0
getfield sun.security.x509.X509CertImpl.info:Lsun/security/x509/X509CertInfo;
aload 2
invokevirtual sun.security.x509.X509AttributeName.getSuffix:()Ljava/lang/String;
invokevirtual sun.security.x509.X509CertInfo.delete:(Ljava/lang/String;)V
15: goto 28
StackMap locals:
StackMap stack:
16: aload 3
ldc "algorithm"
invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
ifeq 19
17: aload 0
aconst_null
putfield sun.security.x509.X509CertImpl.algId:Lsun/security/x509/AlgorithmId;
18: goto 28
StackMap locals:
StackMap stack:
19: aload 3
ldc "signature"
invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
ifeq 22
20: aload 0
aconst_null
putfield sun.security.x509.X509CertImpl.signature:[B
21: goto 28
StackMap locals:
StackMap stack:
22: aload 3
ldc "signed_cert"
invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
ifeq 25
23: aload 0
aconst_null
putfield sun.security.x509.X509CertImpl.signedCert:[B
24: goto 28
25: StackMap locals:
StackMap stack:
new java.security.cert.CertificateException
dup
new java.lang.StringBuilder
dup
ldc "Attribute name not recognized or delete() not allowed for the same: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
26: aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
27: invokespecial java.security.cert.CertificateException.<init>:(Ljava/lang/String;)V
athrow
28: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 29 0 this Lsun/security/x509/X509CertImpl;
0 29 1 name Ljava/lang/String;
3 29 2 attr Lsun/security/x509/X509AttributeName;
4 29 3 id Ljava/lang/String;
Exceptions:
throws java.security.cert.CertificateException, java.io.IOException
MethodParameters:
Name Flags
name
public java.util.Enumeration<java.lang.String> getElements();
descriptor: ()Ljava/util/Enumeration;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: new sun.security.x509.AttributeNameEnumeration
dup
invokespecial sun.security.x509.AttributeNameEnumeration.<init>:()V
astore 1
start local 1 1: aload 1
ldc "x509.info"
invokevirtual sun.security.x509.AttributeNameEnumeration.addElement:(Ljava/lang/Object;)V
2: aload 1
ldc "x509.algorithm"
invokevirtual sun.security.x509.AttributeNameEnumeration.addElement:(Ljava/lang/Object;)V
3: aload 1
ldc "x509.signature"
invokevirtual sun.security.x509.AttributeNameEnumeration.addElement:(Ljava/lang/Object;)V
4: aload 1
ldc "x509.signed_cert"
invokevirtual sun.security.x509.AttributeNameEnumeration.addElement:(Ljava/lang/Object;)V
5: aload 1
invokevirtual sun.security.x509.AttributeNameEnumeration.elements:()Ljava/util/Enumeration;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lsun/security/x509/X509CertImpl;
1 6 1 elements Lsun/security/x509/AttributeNameEnumeration;
Signature: ()Ljava/util/Enumeration<Ljava/lang/String;>;
public java.lang.String getName();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: ldc "x509"
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/security/x509/X509CertImpl;
public java.lang.String toString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
getfield sun.security.x509.X509CertImpl.info:Lsun/security/x509/X509CertInfo;
ifnull 1
aload 0
getfield sun.security.x509.X509CertImpl.algId:Lsun/security/x509/AlgorithmId;
ifnull 1
aload 0
getfield sun.security.x509.X509CertImpl.signature:[B
ifnonnull 2
1: StackMap locals:
StackMap stack:
ldc ""
areturn
2: StackMap locals:
StackMap stack:
new sun.security.util.HexDumpEncoder
dup
invokespecial sun.security.util.HexDumpEncoder.<init>:()V
astore 1
start local 1 3: new java.lang.StringBuilder
dup
ldc "[\n"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield sun.security.x509.X509CertImpl.info:Lsun/security/x509/X509CertInfo;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
bipush 10
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
4: ldc " Algorithm: ["
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield sun.security.x509.X509CertImpl.algId:Lsun/security/x509/AlgorithmId;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc "]\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
5: ldc " Signature:\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
aload 0
getfield sun.security.x509.X509CertImpl.signature:[B
invokevirtual sun.security.util.HexDumpEncoder.encodeBuffer:([B)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "\n]"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
6: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lsun/security/x509/X509CertImpl;
3 7 1 encoder Lsun/security/util/HexDumpEncoder;
public java.security.PublicKey getPublicKey();
descriptor: ()Ljava/security/PublicKey;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
getfield sun.security.x509.X509CertImpl.info:Lsun/security/x509/X509CertInfo;
ifnonnull 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield sun.security.x509.X509CertImpl.info:Lsun/security/x509/X509CertInfo;
ldc "key.value"
invokevirtual sun.security.x509.X509CertInfo.get:(Ljava/lang/String;)Ljava/lang/Object;
checkcast java.security.PublicKey
astore 1
start local 1 3: aload 1
4: areturn
end local 1 5: StackMap locals:
StackMap stack: java.lang.Exception
pop
6: aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lsun/security/x509/X509CertImpl;
3 5 1 key Ljava/security/PublicKey;
Exception table:
from to target type
2 4 5 Class java.lang.Exception
public int getVersion();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
getfield sun.security.x509.X509CertImpl.info:Lsun/security/x509/X509CertInfo;
ifnonnull 2
1: iconst_m1
ireturn
2: StackMap locals:
StackMap stack:
aload 0
getfield sun.security.x509.X509CertImpl.info:Lsun/security/x509/X509CertInfo;
ldc "version.number"
invokevirtual sun.security.x509.X509CertInfo.get:(Ljava/lang/String;)Ljava/lang/Object;
checkcast java.lang.Integer
3: invokevirtual java.lang.Integer.intValue:()I
4: istore 1
start local 1 5: iload 1
iconst_1
iadd
6: ireturn
end local 1 7: StackMap locals:
StackMap stack: java.lang.Exception
pop
8: iconst_m1
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lsun/security/x509/X509CertImpl;
5 7 1 vers I
Exception table:
from to target type
2 6 7 Class java.lang.Exception
public java.math.BigInteger getSerialNumber();
descriptor: ()Ljava/math/BigInteger;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual sun.security.x509.X509CertImpl.getSerialNumberObject:()Lsun/security/x509/SerialNumber;
astore 1
start local 1 1: aload 1
ifnull 2
aload 1
invokevirtual sun.security.x509.SerialNumber.getNumber:()Ljava/math/BigInteger;
goto 3
StackMap locals: sun.security.x509.SerialNumber
StackMap stack:
2: aconst_null
StackMap locals:
StackMap stack: java.math.BigInteger
3: areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lsun/security/x509/X509CertImpl;
1 4 1 ser Lsun/security/x509/SerialNumber;
public sun.security.x509.SerialNumber getSerialNumberObject();
descriptor: ()Lsun/security/x509/SerialNumber;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
getfield sun.security.x509.X509CertImpl.info:Lsun/security/x509/X509CertInfo;
ifnonnull 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield sun.security.x509.X509CertImpl.info:Lsun/security/x509/X509CertInfo;
3: ldc "serialNumber.number"
4: invokevirtual sun.security.x509.X509CertInfo.get:(Ljava/lang/String;)Ljava/lang/Object;
checkcast sun.security.x509.SerialNumber
astore 1
start local 1 5: aload 1
6: areturn
end local 1 7: StackMap locals:
StackMap stack: java.lang.Exception
pop
8: aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lsun/security/x509/X509CertImpl;
5 7 1 ser Lsun/security/x509/SerialNumber;
Exception table:
from to target type
2 6 7 Class java.lang.Exception
public java.security.Principal getSubjectDN();
descriptor: ()Ljava/security/Principal;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
getfield sun.security.x509.X509CertImpl.info:Lsun/security/x509/X509CertInfo;
ifnonnull 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield sun.security.x509.X509CertImpl.info:Lsun/security/x509/X509CertInfo;
ldc "subject.dname"
invokevirtual sun.security.x509.X509CertInfo.get:(Ljava/lang/String;)Ljava/lang/Object;
checkcast java.security.Principal
astore 1
start local 1 3: aload 1
4: areturn
end local 1 5: StackMap locals:
StackMap stack: java.lang.Exception
pop
6: aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lsun/security/x509/X509CertImpl;
3 5 1 subject Ljava/security/Principal;
Exception table:
from to target type
2 4 5 Class java.lang.Exception
public javax.security.auth.x500.X500Principal getSubjectX500Principal();
descriptor: ()Ljavax/security/auth/x500/X500Principal;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
getfield sun.security.x509.X509CertImpl.info:Lsun/security/x509/X509CertInfo;
ifnonnull 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield sun.security.x509.X509CertImpl.info:Lsun/security/x509/X509CertInfo;
3: ldc "subject.x500principal"
4: invokevirtual sun.security.x509.X509CertInfo.get:(Ljava/lang/String;)Ljava/lang/Object;
checkcast javax.security.auth.x500.X500Principal
astore 1
start local 1 5: aload 1
6: areturn
end local 1 7: StackMap locals:
StackMap stack: java.lang.Exception
pop
8: aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lsun/security/x509/X509CertImpl;
5 7 1 subject Ljavax/security/auth/x500/X500Principal;
Exception table:
from to target type
2 6 7 Class java.lang.Exception
public java.security.Principal getIssuerDN();
descriptor: ()Ljava/security/Principal;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
getfield sun.security.x509.X509CertImpl.info:Lsun/security/x509/X509CertInfo;
ifnonnull 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield sun.security.x509.X509CertImpl.info:Lsun/security/x509/X509CertInfo;
ldc "issuer.dname"
invokevirtual sun.security.x509.X509CertInfo.get:(Ljava/lang/String;)Ljava/lang/Object;
checkcast java.security.Principal
astore 1
start local 1 3: aload 1
4: areturn
end local 1 5: StackMap locals:
StackMap stack: java.lang.Exception
pop
6: aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lsun/security/x509/X509CertImpl;
3 5 1 issuer Ljava/security/Principal;
Exception table:
from to target type
2 4 5 Class java.lang.Exception
public javax.security.auth.x500.X500Principal getIssuerX500Principal();
descriptor: ()Ljavax/security/auth/x500/X500Principal;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
getfield sun.security.x509.X509CertImpl.info:Lsun/security/x509/X509CertInfo;
ifnonnull 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield sun.security.x509.X509CertImpl.info:Lsun/security/x509/X509CertInfo;
3: ldc "issuer.x500principal"
4: invokevirtual sun.security.x509.X509CertInfo.get:(Ljava/lang/String;)Ljava/lang/Object;
checkcast javax.security.auth.x500.X500Principal
astore 1
start local 1 5: aload 1
6: areturn
end local 1 7: StackMap locals:
StackMap stack: java.lang.Exception
pop
8: aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lsun/security/x509/X509CertImpl;
5 7 1 issuer Ljavax/security/auth/x500/X500Principal;
Exception table:
from to target type
2 6 7 Class java.lang.Exception
public java.util.Date getNotBefore();
descriptor: ()Ljava/util/Date;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
getfield sun.security.x509.X509CertImpl.info:Lsun/security/x509/X509CertInfo;
ifnonnull 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield sun.security.x509.X509CertImpl.info:Lsun/security/x509/X509CertInfo;
ldc "validity.notBefore"
invokevirtual sun.security.x509.X509CertInfo.get:(Ljava/lang/String;)Ljava/lang/Object;
checkcast java.util.Date
astore 1
start local 1 3: aload 1
4: areturn
end local 1 5: StackMap locals:
StackMap stack: java.lang.Exception
pop
6: aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lsun/security/x509/X509CertImpl;
3 5 1 d Ljava/util/Date;
Exception table:
from to target type
2 4 5 Class java.lang.Exception
public java.util.Date getNotAfter();
descriptor: ()Ljava/util/Date;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
getfield sun.security.x509.X509CertImpl.info:Lsun/security/x509/X509CertInfo;
ifnonnull 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield sun.security.x509.X509CertImpl.info:Lsun/security/x509/X509CertInfo;
ldc "validity.notAfter"
invokevirtual sun.security.x509.X509CertInfo.get:(Ljava/lang/String;)Ljava/lang/Object;
checkcast java.util.Date
astore 1
start local 1 3: aload 1
4: areturn
end local 1 5: StackMap locals:
StackMap stack: java.lang.Exception
pop
6: aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lsun/security/x509/X509CertImpl;
3 5 1 d Ljava/util/Date;
Exception table:
from to target type
2 4 5 Class java.lang.Exception
public byte[] getTBSCertificate();
descriptor: ()[B
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.security.x509.X509CertImpl.info:Lsun/security/x509/X509CertInfo;
ifnull 2
1: aload 0
getfield sun.security.x509.X509CertImpl.info:Lsun/security/x509/X509CertInfo;
invokevirtual sun.security.x509.X509CertInfo.getEncodedInfo:()[B
areturn
2: StackMap locals:
StackMap stack:
new java.security.cert.CertificateEncodingException
dup
ldc "Uninitialized certificate"
invokespecial java.security.cert.CertificateEncodingException.<init>:(Ljava/lang/String;)V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/security/x509/X509CertImpl;
Exceptions:
throws java.security.cert.CertificateEncodingException
public byte[] getSignature();
descriptor: ()[B
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.security.x509.X509CertImpl.signature:[B
ifnonnull 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield sun.security.x509.X509CertImpl.signature:[B
invokevirtual byte[].clone:()Ljava/lang/Object;
checkcast byte[]
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/security/x509/X509CertImpl;
public java.lang.String getSigAlgName();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.security.x509.X509CertImpl.algId:Lsun/security/x509/AlgorithmId;
ifnonnull 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield sun.security.x509.X509CertImpl.algId:Lsun/security/x509/AlgorithmId;
invokevirtual sun.security.x509.AlgorithmId.getName:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/security/x509/X509CertImpl;
public java.lang.String getSigAlgOID();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=1
start local 0 0: aload 0
getfield sun.security.x509.X509CertImpl.algId:Lsun/security/x509/AlgorithmId;
ifnonnull 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield sun.security.x509.X509CertImpl.algId:Lsun/security/x509/AlgorithmId;
invokevirtual sun.security.x509.AlgorithmId.getOID:()Lsun/security/util/ObjectIdentifier;
astore 1
start local 1 3: aload 1
invokevirtual sun.security.util.ObjectIdentifier.toString:()Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lsun/security/x509/X509CertImpl;
3 4 1 oid Lsun/security/util/ObjectIdentifier;
public byte[] getSigAlgParams();
descriptor: ()[B
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.security.x509.X509CertImpl.algId:Lsun/security/x509/AlgorithmId;
ifnonnull 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield sun.security.x509.X509CertImpl.algId:Lsun/security/x509/AlgorithmId;
invokevirtual sun.security.x509.AlgorithmId.getEncodedParams:()[B
3: areturn
4: StackMap locals:
StackMap stack: java.io.IOException
pop
5: aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lsun/security/x509/X509CertImpl;
Exception table:
from to target type
2 3 4 Class java.io.IOException
public boolean[] getIssuerUniqueID();
descriptor: ()[Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
getfield sun.security.x509.X509CertImpl.info:Lsun/security/x509/X509CertInfo;
ifnonnull 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield sun.security.x509.X509CertImpl.info:Lsun/security/x509/X509CertInfo;
3: ldc "issuerID"
4: invokevirtual sun.security.x509.X509CertInfo.get:(Ljava/lang/String;)Ljava/lang/Object;
checkcast sun.security.x509.UniqueIdentity
astore 1
start local 1 5: aload 1
ifnonnull 7
6: aconst_null
areturn
7: StackMap locals: sun.security.x509.UniqueIdentity
StackMap stack:
aload 1
invokevirtual sun.security.x509.UniqueIdentity.getId:()[Z
8: areturn
end local 1 9: StackMap locals: sun.security.x509.X509CertImpl
StackMap stack: java.lang.Exception
pop
10: aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lsun/security/x509/X509CertImpl;
5 9 1 id Lsun/security/x509/UniqueIdentity;
Exception table:
from to target type
2 6 9 Class java.lang.Exception
7 8 9 Class java.lang.Exception
public boolean[] getSubjectUniqueID();
descriptor: ()[Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
getfield sun.security.x509.X509CertImpl.info:Lsun/security/x509/X509CertInfo;
ifnonnull 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield sun.security.x509.X509CertImpl.info:Lsun/security/x509/X509CertInfo;
3: ldc "subjectID"
4: invokevirtual sun.security.x509.X509CertInfo.get:(Ljava/lang/String;)Ljava/lang/Object;
checkcast sun.security.x509.UniqueIdentity
astore 1
start local 1 5: aload 1
ifnonnull 7
6: aconst_null
areturn
7: StackMap locals: sun.security.x509.UniqueIdentity
StackMap stack:
aload 1
invokevirtual sun.security.x509.UniqueIdentity.getId:()[Z
8: areturn
end local 1 9: StackMap locals: sun.security.x509.X509CertImpl
StackMap stack: java.lang.Exception
pop
10: aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lsun/security/x509/X509CertImpl;
5 9 1 id Lsun/security/x509/UniqueIdentity;
Exception table:
from to target type
2 6 9 Class java.lang.Exception
7 8 9 Class java.lang.Exception
public sun.security.x509.KeyIdentifier getAuthKeyId();
descriptor: ()Lsun/security/x509/KeyIdentifier;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual sun.security.x509.X509CertImpl.getAuthorityKeyIdentifierExtension:()Lsun/security/x509/AuthorityKeyIdentifierExtension;
1: astore 1
start local 1 2: aload 1
ifnull 8
3: aload 1
4: ldc "key_id"
5: invokevirtual sun.security.x509.AuthorityKeyIdentifierExtension.get:(Ljava/lang/String;)Ljava/lang/Object;
checkcast sun.security.x509.KeyIdentifier
6: areturn
7: StackMap locals: sun.security.x509.X509CertImpl sun.security.x509.AuthorityKeyIdentifierExtension
StackMap stack: java.io.IOException
pop
8: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lsun/security/x509/X509CertImpl;
2 9 1 aki Lsun/security/x509/AuthorityKeyIdentifierExtension;
Exception table:
from to target type
3 6 7 Class java.io.IOException
public sun.security.x509.KeyIdentifier getSubjectKeyId();
descriptor: ()Lsun/security/x509/KeyIdentifier;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual sun.security.x509.X509CertImpl.getSubjectKeyIdentifierExtension:()Lsun/security/x509/SubjectKeyIdentifierExtension;
astore 1
start local 1 1: aload 1
ifnull 5
2: aload 1
ldc "key_id"
invokevirtual sun.security.x509.SubjectKeyIdentifierExtension.get:(Ljava/lang/String;)Lsun/security/x509/KeyIdentifier;
3: areturn
4: StackMap locals: sun.security.x509.X509CertImpl sun.security.x509.SubjectKeyIdentifierExtension
StackMap stack: java.io.IOException
pop
5: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lsun/security/x509/X509CertImpl;
1 6 1 ski Lsun/security/x509/SubjectKeyIdentifierExtension;
Exception table:
from to target type
2 3 4 Class java.io.IOException
public sun.security.x509.AuthorityKeyIdentifierExtension getAuthorityKeyIdentifierExtension();
descriptor: ()Lsun/security/x509/AuthorityKeyIdentifierExtension;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getstatic sun.security.x509.PKIXExtensions.AuthorityKey_Id:Lsun/security/util/ObjectIdentifier;
invokevirtual sun.security.x509.X509CertImpl.getExtension:(Lsun/security/util/ObjectIdentifier;)Lsun/security/x509/Extension;
1: checkcast sun.security.x509.AuthorityKeyIdentifierExtension
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/security/x509/X509CertImpl;
public sun.security.x509.BasicConstraintsExtension getBasicConstraintsExtension();
descriptor: ()Lsun/security/x509/BasicConstraintsExtension;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getstatic sun.security.x509.PKIXExtensions.BasicConstraints_Id:Lsun/security/util/ObjectIdentifier;
invokevirtual sun.security.x509.X509CertImpl.getExtension:(Lsun/security/util/ObjectIdentifier;)Lsun/security/x509/Extension;
1: checkcast sun.security.x509.BasicConstraintsExtension
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/security/x509/X509CertImpl;
public sun.security.x509.CertificatePoliciesExtension getCertificatePoliciesExtension();
descriptor: ()Lsun/security/x509/CertificatePoliciesExtension;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getstatic sun.security.x509.PKIXExtensions.CertificatePolicies_Id:Lsun/security/util/ObjectIdentifier;
invokevirtual sun.security.x509.X509CertImpl.getExtension:(Lsun/security/util/ObjectIdentifier;)Lsun/security/x509/Extension;
1: checkcast sun.security.x509.CertificatePoliciesExtension
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/security/x509/X509CertImpl;
public sun.security.x509.ExtendedKeyUsageExtension getExtendedKeyUsageExtension();
descriptor: ()Lsun/security/x509/ExtendedKeyUsageExtension;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getstatic sun.security.x509.PKIXExtensions.ExtendedKeyUsage_Id:Lsun/security/util/ObjectIdentifier;
invokevirtual sun.security.x509.X509CertImpl.getExtension:(Lsun/security/util/ObjectIdentifier;)Lsun/security/x509/Extension;
1: checkcast sun.security.x509.ExtendedKeyUsageExtension
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/security/x509/X509CertImpl;
public sun.security.x509.IssuerAlternativeNameExtension getIssuerAlternativeNameExtension();
descriptor: ()Lsun/security/x509/IssuerAlternativeNameExtension;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getstatic sun.security.x509.PKIXExtensions.IssuerAlternativeName_Id:Lsun/security/util/ObjectIdentifier;
invokevirtual sun.security.x509.X509CertImpl.getExtension:(Lsun/security/util/ObjectIdentifier;)Lsun/security/x509/Extension;
1: checkcast sun.security.x509.IssuerAlternativeNameExtension
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/security/x509/X509CertImpl;
public sun.security.x509.NameConstraintsExtension getNameConstraintsExtension();
descriptor: ()Lsun/security/x509/NameConstraintsExtension;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getstatic sun.security.x509.PKIXExtensions.NameConstraints_Id:Lsun/security/util/ObjectIdentifier;
invokevirtual sun.security.x509.X509CertImpl.getExtension:(Lsun/security/util/ObjectIdentifier;)Lsun/security/x509/Extension;
1: checkcast sun.security.x509.NameConstraintsExtension
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/security/x509/X509CertImpl;
public sun.security.x509.PolicyConstraintsExtension getPolicyConstraintsExtension();
descriptor: ()Lsun/security/x509/PolicyConstraintsExtension;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getstatic sun.security.x509.PKIXExtensions.PolicyConstraints_Id:Lsun/security/util/ObjectIdentifier;
invokevirtual sun.security.x509.X509CertImpl.getExtension:(Lsun/security/util/ObjectIdentifier;)Lsun/security/x509/Extension;
1: checkcast sun.security.x509.PolicyConstraintsExtension
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/security/x509/X509CertImpl;
public sun.security.x509.PolicyMappingsExtension getPolicyMappingsExtension();
descriptor: ()Lsun/security/x509/PolicyMappingsExtension;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getstatic sun.security.x509.PKIXExtensions.PolicyMappings_Id:Lsun/security/util/ObjectIdentifier;
invokevirtual sun.security.x509.X509CertImpl.getExtension:(Lsun/security/util/ObjectIdentifier;)Lsun/security/x509/Extension;
1: checkcast sun.security.x509.PolicyMappingsExtension
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/security/x509/X509CertImpl;
public sun.security.x509.PrivateKeyUsageExtension getPrivateKeyUsageExtension();
descriptor: ()Lsun/security/x509/PrivateKeyUsageExtension;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getstatic sun.security.x509.PKIXExtensions.PrivateKeyUsage_Id:Lsun/security/util/ObjectIdentifier;
invokevirtual sun.security.x509.X509CertImpl.getExtension:(Lsun/security/util/ObjectIdentifier;)Lsun/security/x509/Extension;
1: checkcast sun.security.x509.PrivateKeyUsageExtension
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/security/x509/X509CertImpl;
public sun.security.x509.SubjectAlternativeNameExtension getSubjectAlternativeNameExtension();
descriptor: ()Lsun/security/x509/SubjectAlternativeNameExtension;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getstatic sun.security.x509.PKIXExtensions.SubjectAlternativeName_Id:Lsun/security/util/ObjectIdentifier;
invokevirtual sun.security.x509.X509CertImpl.getExtension:(Lsun/security/util/ObjectIdentifier;)Lsun/security/x509/Extension;
1: checkcast sun.security.x509.SubjectAlternativeNameExtension
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/security/x509/X509CertImpl;
public sun.security.x509.SubjectKeyIdentifierExtension getSubjectKeyIdentifierExtension();
descriptor: ()Lsun/security/x509/SubjectKeyIdentifierExtension;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getstatic sun.security.x509.PKIXExtensions.SubjectKey_Id:Lsun/security/util/ObjectIdentifier;
invokevirtual sun.security.x509.X509CertImpl.getExtension:(Lsun/security/util/ObjectIdentifier;)Lsun/security/x509/Extension;
1: checkcast sun.security.x509.SubjectKeyIdentifierExtension
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/security/x509/X509CertImpl;
public sun.security.x509.CRLDistributionPointsExtension getCRLDistributionPointsExtension();
descriptor: ()Lsun/security/x509/CRLDistributionPointsExtension;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getstatic sun.security.x509.PKIXExtensions.CRLDistributionPoints_Id:Lsun/security/util/ObjectIdentifier;
invokevirtual sun.security.x509.X509CertImpl.getExtension:(Lsun/security/util/ObjectIdentifier;)Lsun/security/x509/Extension;
1: checkcast sun.security.x509.CRLDistributionPointsExtension
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/security/x509/X509CertImpl;
public boolean hasUnsupportedCriticalExtension();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
getfield sun.security.x509.X509CertImpl.info:Lsun/security/x509/X509CertInfo;
ifnonnull 2
1: iconst_0
ireturn
2: StackMap locals:
StackMap stack:
aload 0
getfield sun.security.x509.X509CertImpl.info:Lsun/security/x509/X509CertInfo;
3: ldc "extensions"
4: invokevirtual sun.security.x509.X509CertInfo.get:(Ljava/lang/String;)Ljava/lang/Object;
checkcast sun.security.x509.CertificateExtensions
astore 1
start local 1 5: aload 1
ifnonnull 7
6: iconst_0
ireturn
7: StackMap locals: sun.security.x509.CertificateExtensions
StackMap stack:
aload 1
invokevirtual sun.security.x509.CertificateExtensions.hasUnsupportedCriticalExtension:()Z
8: ireturn
end local 1 9: StackMap locals: sun.security.x509.X509CertImpl
StackMap stack: java.lang.Exception
pop
10: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lsun/security/x509/X509CertImpl;
5 9 1 exts Lsun/security/x509/CertificateExtensions;
Exception table:
from to target type
2 6 9 Class java.lang.Exception
7 8 9 Class java.lang.Exception
public java.util.Set<java.lang.String> getCriticalExtensionOIDs();
descriptor: ()Ljava/util/Set;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=5, args_size=1
start local 0 0: aload 0
getfield sun.security.x509.X509CertImpl.info:Lsun/security/x509/X509CertInfo;
ifnonnull 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield sun.security.x509.X509CertImpl.info:Lsun/security/x509/X509CertInfo;
3: ldc "extensions"
4: invokevirtual sun.security.x509.X509CertInfo.get:(Ljava/lang/String;)Ljava/lang/Object;
checkcast sun.security.x509.CertificateExtensions
astore 1
start local 1 5: aload 1
ifnonnull 7
6: aconst_null
areturn
7: StackMap locals: sun.security.x509.CertificateExtensions
StackMap stack:
new java.util.TreeSet
dup
invokespecial java.util.TreeSet.<init>:()V
astore 2
start local 2 8: aload 1
invokevirtual sun.security.x509.CertificateExtensions.getAllExtensions:()Ljava/util/Collection;
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 4
goto 12
StackMap locals: sun.security.x509.X509CertImpl sun.security.x509.CertificateExtensions java.util.Set top java.util.Iterator
StackMap stack:
9: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast sun.security.x509.Extension
astore 3
start local 3 10: aload 3
invokevirtual sun.security.x509.Extension.isCritical:()Z
ifeq 12
11: aload 2
aload 3
invokevirtual sun.security.x509.Extension.getExtensionId:()Lsun/security/util/ObjectIdentifier;
invokevirtual sun.security.util.ObjectIdentifier.toString:()Ljava/lang/String;
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
end local 3 12: StackMap locals:
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 9
13: aload 2
14: areturn
end local 2 end local 1 15: StackMap locals: sun.security.x509.X509CertImpl
StackMap stack: java.lang.Exception
pop
16: aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lsun/security/x509/X509CertImpl;
5 15 1 exts Lsun/security/x509/CertificateExtensions;
8 15 2 extSet Ljava/util/Set<Ljava/lang/String;>;
10 12 3 ex Lsun/security/x509/Extension;
Exception table:
from to target type
2 6 15 Class java.lang.Exception
7 14 15 Class java.lang.Exception
Signature: ()Ljava/util/Set<Ljava/lang/String;>;
public java.util.Set<java.lang.String> getNonCriticalExtensionOIDs();
descriptor: ()Ljava/util/Set;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=5, args_size=1
start local 0 0: aload 0
getfield sun.security.x509.X509CertImpl.info:Lsun/security/x509/X509CertInfo;
ifnonnull 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield sun.security.x509.X509CertImpl.info:Lsun/security/x509/X509CertInfo;
3: ldc "extensions"
4: invokevirtual sun.security.x509.X509CertInfo.get:(Ljava/lang/String;)Ljava/lang/Object;
checkcast sun.security.x509.CertificateExtensions
astore 1
start local 1 5: aload 1
ifnonnull 7
6: aconst_null
areturn
7: StackMap locals: sun.security.x509.CertificateExtensions
StackMap stack:
new java.util.TreeSet
dup
invokespecial java.util.TreeSet.<init>:()V
astore 2
start local 2 8: aload 1
invokevirtual sun.security.x509.CertificateExtensions.getAllExtensions:()Ljava/util/Collection;
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 4
goto 12
StackMap locals: sun.security.x509.X509CertImpl sun.security.x509.CertificateExtensions java.util.Set top java.util.Iterator
StackMap stack:
9: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast sun.security.x509.Extension
astore 3
start local 3 10: aload 3
invokevirtual sun.security.x509.Extension.isCritical:()Z
ifne 12
11: aload 2
aload 3
invokevirtual sun.security.x509.Extension.getExtensionId:()Lsun/security/util/ObjectIdentifier;
invokevirtual sun.security.util.ObjectIdentifier.toString:()Ljava/lang/String;
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
end local 3 12: StackMap locals:
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 9
13: aload 2
aload 1
invokevirtual sun.security.x509.CertificateExtensions.getUnparseableExtensions:()Ljava/util/Map;
invokeinterface java.util.Map.keySet:()Ljava/util/Set;
invokeinterface java.util.Set.addAll:(Ljava/util/Collection;)Z
pop
14: aload 2
15: areturn
end local 2 end local 1 16: StackMap locals: sun.security.x509.X509CertImpl
StackMap stack: java.lang.Exception
pop
17: aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lsun/security/x509/X509CertImpl;
5 16 1 exts Lsun/security/x509/CertificateExtensions;
8 16 2 extSet Ljava/util/Set<Ljava/lang/String;>;
10 12 3 ex Lsun/security/x509/Extension;
Exception table:
from to target type
2 6 16 Class java.lang.Exception
7 15 16 Class java.lang.Exception
Signature: ()Ljava/util/Set<Ljava/lang/String;>;
public sun.security.x509.Extension getExtension(sun.security.util.ObjectIdentifier);
descriptor: (Lsun/security/util/ObjectIdentifier;)Lsun/security/x509/Extension;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=6, args_size=2
start local 0 start local 1 0: aload 0
getfield sun.security.x509.X509CertImpl.info:Lsun/security/x509/X509CertInfo;
ifnonnull 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield sun.security.x509.X509CertImpl.info:Lsun/security/x509/X509CertInfo;
ldc "extensions"
invokevirtual sun.security.x509.X509CertInfo.get:(Ljava/lang/String;)Ljava/lang/Object;
checkcast sun.security.x509.CertificateExtensions
astore 2
start local 2 3: goto 6
end local 2 StackMap locals:
StackMap stack: java.security.cert.CertificateException
4: pop
5: aconst_null
areturn
start local 2 6: StackMap locals: sun.security.x509.CertificateExtensions
StackMap stack:
aload 2
ifnonnull 8
7: aconst_null
areturn
8: StackMap locals:
StackMap stack:
aload 2
aload 1
invokevirtual sun.security.util.ObjectIdentifier.toString:()Ljava/lang/String;
invokevirtual sun.security.x509.CertificateExtensions.getExtension:(Ljava/lang/String;)Lsun/security/x509/Extension;
astore 3
start local 3 9: aload 3
ifnull 12
10: aload 3
11: areturn
12: StackMap locals: sun.security.x509.Extension
StackMap stack:
aload 2
invokevirtual sun.security.x509.CertificateExtensions.getAllExtensions:()Ljava/util/Collection;
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 5
goto 17
StackMap locals: sun.security.x509.X509CertImpl sun.security.util.ObjectIdentifier sun.security.x509.CertificateExtensions sun.security.x509.Extension top java.util.Iterator
StackMap stack:
13: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast sun.security.x509.Extension
astore 4
start local 4 14: aload 4
invokevirtual sun.security.x509.Extension.getExtensionId:()Lsun/security/util/ObjectIdentifier;
aload 1
invokevirtual sun.security.util.ObjectIdentifier.equals:(Ljava/lang/Object;)Z
ifeq 17
15: aload 4
16: areturn
end local 4 17: StackMap locals:
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 13
18: aconst_null
areturn
end local 3 end local 2 19: StackMap locals: sun.security.x509.X509CertImpl sun.security.util.ObjectIdentifier
StackMap stack: java.io.IOException
pop
20: aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 21 0 this Lsun/security/x509/X509CertImpl;
0 21 1 oid Lsun/security/util/ObjectIdentifier;
3 4 2 extensions Lsun/security/x509/CertificateExtensions;
6 19 2 extensions Lsun/security/x509/CertificateExtensions;
9 19 3 ex Lsun/security/x509/Extension;
14 17 4 ex2 Lsun/security/x509/Extension;
Exception table:
from to target type
2 3 4 Class java.security.cert.CertificateException
2 5 19 Class java.io.IOException
6 7 19 Class java.io.IOException
8 11 19 Class java.io.IOException
12 16 19 Class java.io.IOException
17 18 19 Class java.io.IOException
MethodParameters:
Name Flags
oid
public sun.security.x509.Extension getUnparseableExtension(sun.security.util.ObjectIdentifier);
descriptor: (Lsun/security/util/ObjectIdentifier;)Lsun/security/x509/Extension;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield sun.security.x509.X509CertImpl.info:Lsun/security/x509/X509CertInfo;
ifnonnull 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield sun.security.x509.X509CertImpl.info:Lsun/security/x509/X509CertInfo;
ldc "extensions"
invokevirtual sun.security.x509.X509CertInfo.get:(Ljava/lang/String;)Ljava/lang/Object;
checkcast sun.security.x509.CertificateExtensions
astore 2
start local 2 3: goto 6
end local 2 StackMap locals:
StackMap stack: java.security.cert.CertificateException
4: pop
5: aconst_null
areturn
start local 2 6: StackMap locals: sun.security.x509.CertificateExtensions
StackMap stack:
aload 2
ifnonnull 8
7: aconst_null
areturn
8: StackMap locals:
StackMap stack:
aload 2
invokevirtual sun.security.x509.CertificateExtensions.getUnparseableExtensions:()Ljava/util/Map;
aload 1
invokevirtual sun.security.util.ObjectIdentifier.toString:()Ljava/lang/String;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast sun.security.x509.Extension
9: areturn
end local 2 10: StackMap locals: sun.security.x509.X509CertImpl sun.security.util.ObjectIdentifier
StackMap stack: java.io.IOException
pop
11: aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lsun/security/x509/X509CertImpl;
0 12 1 oid Lsun/security/util/ObjectIdentifier;
3 4 2 extensions Lsun/security/x509/CertificateExtensions;
6 10 2 extensions Lsun/security/x509/CertificateExtensions;
Exception table:
from to target type
2 3 4 Class java.security.cert.CertificateException
2 5 10 Class java.io.IOException
6 7 10 Class java.io.IOException
8 9 10 Class java.io.IOException
MethodParameters:
Name Flags
oid
public byte[] getExtensionValue(java.lang.String);
descriptor: (Ljava/lang/String;)[B
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=9, args_size=2
start local 0 start local 1 0: aload 1
invokestatic sun.security.util.ObjectIdentifier.of:(Ljava/lang/String;)Lsun/security/util/ObjectIdentifier;
astore 2
start local 2 1: aload 2
invokestatic sun.security.x509.OIDMap.getName:(Lsun/security/util/ObjectIdentifier;)Ljava/lang/String;
astore 3
start local 3 2: aconst_null
astore 4
start local 4 3: aload 0
getfield sun.security.x509.X509CertImpl.info:Lsun/security/x509/X509CertInfo;
4: ldc "extensions"
5: invokevirtual sun.security.x509.X509CertInfo.get:(Ljava/lang/String;)Ljava/lang/Object;
checkcast sun.security.x509.CertificateExtensions
astore 5
start local 5 6: aload 3
ifnonnull 17
7: aload 5
ifnonnull 9
8: aconst_null
areturn
9: StackMap locals: sun.security.x509.X509CertImpl java.lang.String sun.security.util.ObjectIdentifier java.lang.String sun.security.x509.Extension sun.security.x509.CertificateExtensions
StackMap stack:
aload 5
invokevirtual sun.security.x509.CertificateExtensions.getAllExtensions:()Ljava/util/Collection;
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 7
goto 15
StackMap locals: sun.security.x509.X509CertImpl java.lang.String sun.security.util.ObjectIdentifier java.lang.String sun.security.x509.Extension sun.security.x509.CertificateExtensions top java.util.Iterator
StackMap stack:
10: aload 7
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast sun.security.x509.Extension
astore 6
start local 6 11: aload 6
invokevirtual sun.security.x509.Extension.getExtensionId:()Lsun/security/util/ObjectIdentifier;
astore 8
start local 8 12: aload 8
aload 2
invokevirtual sun.security.util.ObjectIdentifier.equals:(Ljava/lang/Object;)Z
ifeq 15
13: aload 6
astore 4
14: goto 20
end local 8 end local 6 15: StackMap locals:
StackMap stack:
aload 7
invokeinterface java.util.Iterator.hasNext:()Z
ifne 10
16: goto 20
17: StackMap locals: sun.security.x509.X509CertImpl java.lang.String sun.security.util.ObjectIdentifier java.lang.String sun.security.x509.Extension sun.security.x509.CertificateExtensions
StackMap stack:
aload 0
aload 3
invokevirtual sun.security.x509.X509CertImpl.get:(Ljava/lang/String;)Ljava/lang/Object;
checkcast sun.security.x509.Extension
astore 4
18: goto 20
StackMap locals:
StackMap stack: java.security.cert.CertificateException
19: pop
20: StackMap locals:
StackMap stack:
aload 4
ifnonnull 25
21: aload 5
ifnull 23
22: aload 5
invokevirtual sun.security.x509.CertificateExtensions.getUnparseableExtensions:()Ljava/util/Map;
aload 1
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast sun.security.x509.Extension
astore 4
23: StackMap locals:
StackMap stack:
aload 4
ifnonnull 25
24: aconst_null
areturn
25: StackMap locals:
StackMap stack:
aload 4
invokevirtual sun.security.x509.Extension.getExtensionValue:()[B
astore 6
start local 6 26: aload 6
ifnonnull 28
27: aconst_null
areturn
28: StackMap locals: byte[]
StackMap stack:
new sun.security.util.DerOutputStream
dup
invokespecial sun.security.util.DerOutputStream.<init>:()V
astore 7
start local 7 29: aload 7
aload 6
invokevirtual sun.security.util.DerOutputStream.putOctetString:([B)V
30: aload 7
invokevirtual sun.security.util.DerOutputStream.toByteArray:()[B
31: areturn
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 32: StackMap locals: sun.security.x509.X509CertImpl java.lang.String
StackMap stack: java.lang.Exception
pop
33: aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 34 0 this Lsun/security/x509/X509CertImpl;
0 34 1 oid Ljava/lang/String;
1 32 2 findOID Lsun/security/util/ObjectIdentifier;
2 32 3 extAlias Ljava/lang/String;
3 32 4 certExt Lsun/security/x509/Extension;
6 32 5 exts Lsun/security/x509/CertificateExtensions;
11 15 6 ex Lsun/security/x509/Extension;
12 15 8 inCertOID Lsun/security/util/ObjectIdentifier;
26 32 6 extData [B
29 32 7 out Lsun/security/util/DerOutputStream;
Exception table:
from to target type
17 18 19 Class java.security.cert.CertificateException
0 8 32 Class java.lang.Exception
9 24 32 Class java.lang.Exception
25 27 32 Class java.lang.Exception
28 31 32 Class java.lang.Exception
MethodParameters:
Name Flags
oid
public boolean[] getKeyUsage();
descriptor: ()[Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=1
start local 0 0: getstatic sun.security.x509.PKIXExtensions.KeyUsage_Id:Lsun/security/util/ObjectIdentifier;
invokestatic sun.security.x509.OIDMap.getName:(Lsun/security/util/ObjectIdentifier;)Ljava/lang/String;
astore 1
start local 1 1: aload 1
ifnonnull 3
2: aconst_null
areturn
3: StackMap locals: java.lang.String
StackMap stack:
aload 0
aload 1
invokevirtual sun.security.x509.X509CertImpl.get:(Ljava/lang/String;)Ljava/lang/Object;
checkcast sun.security.x509.KeyUsageExtension
astore 2
start local 2 4: aload 2
ifnonnull 6
5: aconst_null
areturn
6: StackMap locals: sun.security.x509.KeyUsageExtension
StackMap stack:
aload 2
invokevirtual sun.security.x509.KeyUsageExtension.getBits:()[Z
astore 3
start local 3 7: aload 3
arraylength
bipush 9
if_icmpge 11
8: bipush 9
newarray 4
astore 4
start local 4 9: aload 3
iconst_0
aload 4
iconst_0
aload 3
arraylength
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
10: aload 4
astore 3
end local 4 11: StackMap locals: boolean[]
StackMap stack:
aload 3
12: areturn
end local 3 end local 2 end local 1 13: StackMap locals: sun.security.x509.X509CertImpl
StackMap stack: java.lang.Exception
pop
14: aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lsun/security/x509/X509CertImpl;
1 13 1 extAlias Ljava/lang/String;
4 13 2 certExt Lsun/security/x509/KeyUsageExtension;
7 13 3 ret [Z
9 11 4 usageBits [Z
Exception table:
from to target type
0 2 13 Class java.lang.Exception
3 5 13 Class java.lang.Exception
6 12 13 Class java.lang.Exception
public synchronized java.util.List<java.lang.String> getExtendedKeyUsage();
descriptor: ()Ljava/util/List;
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
getfield sun.security.x509.X509CertImpl.readOnly:Z
ifeq 2
aload 0
getfield sun.security.x509.X509CertImpl.extKeyUsage:Ljava/util/List;
ifnull 2
1: aload 0
getfield sun.security.x509.X509CertImpl.extKeyUsage:Ljava/util/List;
areturn
2: StackMap locals:
StackMap stack:
aload 0
invokevirtual sun.security.x509.X509CertImpl.getExtendedKeyUsageExtension:()Lsun/security/x509/ExtendedKeyUsageExtension;
astore 1
start local 1 3: aload 1
ifnonnull 5
4: aconst_null
areturn
5: StackMap locals: sun.security.x509.ExtendedKeyUsageExtension
StackMap stack:
aload 0
6: aload 1
invokevirtual sun.security.x509.ExtendedKeyUsageExtension.getExtendedKeyUsage:()Ljava/util/List;
invokestatic java.util.Collections.unmodifiableList:(Ljava/util/List;)Ljava/util/List;
7: putfield sun.security.x509.X509CertImpl.extKeyUsage:Ljava/util/List;
8: aload 0
getfield sun.security.x509.X509CertImpl.extKeyUsage:Ljava/util/List;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lsun/security/x509/X509CertImpl;
3 9 1 ext Lsun/security/x509/ExtendedKeyUsageExtension;
Exceptions:
throws java.security.cert.CertificateParsingException
Signature: ()Ljava/util/List<Ljava/lang/String;>;
public static java.util.List<java.lang.String> getExtendedKeyUsage(java.security.cert.X509Certificate);
descriptor: (Ljava/security/cert/X509Certificate;)Ljava/util/List;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=5, args_size=1
start local 0 0: aload 0
1: getstatic sun.security.util.KnownOIDs.extendedKeyUsage:Lsun/security/util/KnownOIDs;
invokevirtual sun.security.util.KnownOIDs.value:()Ljava/lang/String;
2: invokevirtual java.security.cert.X509Certificate.getExtensionValue:(Ljava/lang/String;)[B
astore 1
start local 1 3: aload 1
ifnonnull 5
4: aconst_null
areturn
5: StackMap locals: byte[]
StackMap stack:
new sun.security.util.DerValue
dup
aload 1
invokespecial sun.security.util.DerValue.<init>:([B)V
astore 2
start local 2 6: aload 2
invokevirtual sun.security.util.DerValue.getOctetString:()[B
astore 3
start local 3 7: new sun.security.x509.ExtendedKeyUsageExtension
dup
getstatic java.lang.Boolean.FALSE:Ljava/lang/Boolean;
aload 3
invokespecial sun.security.x509.ExtendedKeyUsageExtension.<init>:(Ljava/lang/Boolean;Ljava/lang/Object;)V
8: astore 4
start local 4 9: aload 4
invokevirtual sun.security.x509.ExtendedKeyUsageExtension.getExtendedKeyUsage:()Ljava/util/List;
invokestatic java.util.Collections.unmodifiableList:(Ljava/util/List;)Ljava/util/List;
10: areturn
end local 4 end local 3 end local 2 end local 1 11: StackMap locals: java.security.cert.X509Certificate
StackMap stack: java.io.IOException
astore 1
start local 1 12: new java.security.cert.CertificateParsingException
dup
aload 1
invokespecial java.security.cert.CertificateParsingException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 cert Ljava/security/cert/X509Certificate;
3 11 1 ext [B
6 11 2 val Lsun/security/util/DerValue;
7 11 3 data [B
9 11 4 ekuExt Lsun/security/x509/ExtendedKeyUsageExtension;
12 13 1 ioe Ljava/io/IOException;
Exception table:
from to target type
0 4 11 Class java.io.IOException
5 10 11 Class java.io.IOException
Exceptions:
throws java.security.cert.CertificateParsingException
Signature: (Ljava/security/cert/X509Certificate;)Ljava/util/List<Ljava/lang/String;>;
MethodParameters:
Name Flags
cert
public int getBasicConstraints();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=1
start local 0 0: getstatic sun.security.x509.PKIXExtensions.BasicConstraints_Id:Lsun/security/util/ObjectIdentifier;
invokestatic sun.security.x509.OIDMap.getName:(Lsun/security/util/ObjectIdentifier;)Ljava/lang/String;
astore 1
start local 1 1: aload 1
ifnonnull 3
2: iconst_m1
ireturn
3: StackMap locals: java.lang.String
StackMap stack:
aload 0
aload 1
invokevirtual sun.security.x509.X509CertImpl.get:(Ljava/lang/String;)Ljava/lang/Object;
checkcast sun.security.x509.BasicConstraintsExtension
4: astore 2
start local 2 5: aload 2
ifnonnull 7
6: iconst_m1
ireturn
7: StackMap locals: sun.security.x509.BasicConstraintsExtension
StackMap stack:
aload 2
ldc "is_ca"
invokevirtual sun.security.x509.BasicConstraintsExtension.get:(Ljava/lang/String;)Ljava/lang/Object;
checkcast java.lang.Boolean
8: invokevirtual java.lang.Boolean.booleanValue:()Z
ifeq 14
9: aload 2
10: ldc "path_len"
11: invokevirtual sun.security.x509.BasicConstraintsExtension.get:(Ljava/lang/String;)Ljava/lang/Object;
checkcast java.lang.Integer
12: invokevirtual java.lang.Integer.intValue:()I
13: ireturn
14: StackMap locals:
StackMap stack:
iconst_m1
ireturn
end local 2 end local 1 15: StackMap locals: sun.security.x509.X509CertImpl
StackMap stack: java.lang.Exception
pop
16: iconst_m1
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lsun/security/x509/X509CertImpl;
1 15 1 extAlias Ljava/lang/String;
5 15 2 certExt Lsun/security/x509/BasicConstraintsExtension;
Exception table:
from to target type
0 2 15 Class java.lang.Exception
3 6 15 Class java.lang.Exception
7 13 15 Class java.lang.Exception
private static java.util.Collection<java.util.List<?>> makeAltNames(sun.security.x509.GeneralNames);
descriptor: (Lsun/security/x509/GeneralNames;)Ljava/util/Collection;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=8, args_size=1
start local 0 0: aload 0
invokevirtual sun.security.x509.GeneralNames.isEmpty:()Z
ifeq 2
1: invokestatic java.util.Collections.emptySet:()Ljava/util/Set;
areturn
2: StackMap locals:
StackMap stack:
new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 1
start local 1 3: aload 0
invokevirtual sun.security.x509.GeneralNames.names:()Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 3
goto 32
StackMap locals: sun.security.x509.GeneralNames java.util.List top java.util.Iterator
StackMap stack:
4: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast sun.security.x509.GeneralName
astore 2
start local 2 5: aload 2
invokevirtual sun.security.x509.GeneralName.getName:()Lsun/security/x509/GeneralNameInterface;
astore 4
start local 4 6: new java.util.ArrayList
dup
iconst_2
invokespecial java.util.ArrayList.<init>:(I)V
astore 5
start local 5 7: aload 5
aload 4
invokeinterface sun.security.x509.GeneralNameInterface.getType:()I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
8: aload 4
invokeinterface sun.security.x509.GeneralNameInterface.getType:()I
tableswitch { // 1 - 8
1: 9
2: 11
3: 25
4: 13
5: 25
6: 15
7: 17
8: 23
default: 25
}
9: StackMap locals: sun.security.x509.GeneralNames java.util.List sun.security.x509.GeneralName java.util.Iterator sun.security.x509.GeneralNameInterface java.util.List
StackMap stack:
aload 5
aload 4
checkcast sun.security.x509.RFC822Name
invokevirtual sun.security.x509.RFC822Name.getName:()Ljava/lang/String;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
10: goto 31
11: StackMap locals:
StackMap stack:
aload 5
aload 4
checkcast sun.security.x509.DNSName
invokevirtual sun.security.x509.DNSName.getName:()Ljava/lang/String;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
12: goto 31
13: StackMap locals:
StackMap stack:
aload 5
aload 4
checkcast sun.security.x509.X500Name
invokevirtual sun.security.x509.X500Name.getRFC2253Name:()Ljava/lang/String;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
14: goto 31
15: StackMap locals:
StackMap stack:
aload 5
aload 4
checkcast sun.security.x509.URIName
invokevirtual sun.security.x509.URIName.getName:()Ljava/lang/String;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
16: goto 31
17: StackMap locals:
StackMap stack:
aload 5
aload 4
checkcast sun.security.x509.IPAddressName
invokevirtual sun.security.x509.IPAddressName.getName:()Ljava/lang/String;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
18: goto 31
StackMap locals:
StackMap stack: java.io.IOException
19: astore 6
start local 6 20: new java.lang.RuntimeException
dup
ldc "IPAddress cannot be parsed"
21: aload 6
22: invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 6 23: StackMap locals:
StackMap stack:
aload 5
aload 4
checkcast sun.security.x509.OIDName
invokevirtual sun.security.x509.OIDName.getOID:()Lsun/security/util/ObjectIdentifier;
invokevirtual sun.security.util.ObjectIdentifier.toString:()Ljava/lang/String;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
24: goto 31
25: StackMap locals:
StackMap stack:
new sun.security.util.DerOutputStream
dup
invokespecial sun.security.util.DerOutputStream.<init>:()V
astore 6
start local 6 26: aload 4
aload 6
invokeinterface sun.security.x509.GeneralNameInterface.encode:(Lsun/security/util/DerOutputStream;)V
27: goto 30
StackMap locals: sun.security.x509.GeneralNames java.util.List sun.security.x509.GeneralName java.util.Iterator sun.security.x509.GeneralNameInterface java.util.List sun.security.util.DerOutputStream
StackMap stack: java.io.IOException
28: astore 7
start local 7 29: new java.lang.RuntimeException
dup
ldc "name cannot be encoded"
aload 7
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 7 30: StackMap locals:
StackMap stack:
aload 5
aload 6
invokevirtual sun.security.util.DerOutputStream.toByteArray:()[B
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 6 31: StackMap locals:
StackMap stack:
aload 1
aload 5
invokestatic java.util.Collections.unmodifiableList:(Ljava/util/List;)Ljava/util/List;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 5 end local 4 end local 2 32: StackMap locals: sun.security.x509.GeneralNames java.util.List top java.util.Iterator
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 4
33: aload 1
invokestatic java.util.Collections.unmodifiableCollection:(Ljava/util/Collection;)Ljava/util/Collection;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 34 0 names Lsun/security/x509/GeneralNames;
3 34 1 newNames Ljava/util/List<Ljava/util/List<*>;>;
5 32 2 gname Lsun/security/x509/GeneralName;
6 32 4 name Lsun/security/x509/GeneralNameInterface;
7 32 5 nameEntry Ljava/util/List<Ljava/lang/Object;>;
20 23 6 ioe Ljava/io/IOException;
26 31 6 derOut Lsun/security/util/DerOutputStream;
29 30 7 ioe Ljava/io/IOException;
Exception table:
from to target type
17 18 19 Class java.io.IOException
26 27 28 Class java.io.IOException
Signature: (Lsun/security/x509/GeneralNames;)Ljava/util/Collection<Ljava/util/List<*>;>;
MethodParameters:
Name Flags
names
private static java.util.Collection<java.util.List<?>> cloneAltNames(java.util.Collection<java.util.List<?>>);
descriptor: (Ljava/util/Collection;)Ljava/util/Collection;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=7, args_size=1
start local 0 0: iconst_0
istore 1
start local 1 1: aload 0
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 3
goto 5
StackMap locals: java.util.Collection int top java.util.Iterator
StackMap stack:
2: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.util.List
astore 2
start local 2 3: aload 2
iconst_1
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
instanceof byte[]
ifeq 5
4: iconst_1
istore 1
end local 2 5: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
6: iload 1
ifeq 20
7: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 2
start local 2 8: aload 0
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 4
goto 18
StackMap locals: java.util.Collection int java.util.List top java.util.Iterator
StackMap stack:
9: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.util.List
astore 3
start local 3 10: aload 3
iconst_1
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
astore 5
start local 5 11: aload 5
instanceof byte[]
ifeq 17
12: new java.util.ArrayList
dup
aload 3
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
13: astore 6
start local 6 14: aload 6
iconst_1
aload 5
checkcast byte[]
invokevirtual byte[].clone:()Ljava/lang/Object;
invokeinterface java.util.List.set:(ILjava/lang/Object;)Ljava/lang/Object;
pop
15: aload 2
aload 6
invokestatic java.util.Collections.unmodifiableList:(Ljava/util/List;)Ljava/util/List;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 6 16: goto 18
17: StackMap locals: java.util.Collection int java.util.List java.util.List java.util.Iterator java.lang.Object
StackMap stack:
aload 2
aload 3
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 5 end local 3 18: StackMap locals: java.util.Collection int java.util.List top java.util.Iterator
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 9
19: aload 2
invokestatic java.util.Collections.unmodifiableCollection:(Ljava/util/Collection;)Ljava/util/Collection;
areturn
end local 2 20: StackMap locals: java.util.Collection int
StackMap stack:
aload 0
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 21 0 altNames Ljava/util/Collection<Ljava/util/List<*>;>;
1 21 1 mustClone Z
3 5 2 nameEntry Ljava/util/List<*>;
8 20 2 namesCopy Ljava/util/List<Ljava/util/List<*>;>;
10 18 3 nameEntry Ljava/util/List<*>;
11 18 5 nameObject Ljava/lang/Object;
14 16 6 nameEntryCopy Ljava/util/List<Ljava/lang/Object;>;
Signature: (Ljava/util/Collection<Ljava/util/List<*>;>;)Ljava/util/Collection<Ljava/util/List<*>;>;
MethodParameters:
Name Flags
altNames
public synchronized java.util.Collection<java.util.List<?>> getSubjectAlternativeNames();
descriptor: ()Ljava/util/Collection;
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=2, locals=3, args_size=1
start local 0 0: aload 0
getfield sun.security.x509.X509CertImpl.readOnly:Z
ifeq 2
aload 0
getfield sun.security.x509.X509CertImpl.subjectAlternativeNames:Ljava/util/Collection;
ifnull 2
1: aload 0
getfield sun.security.x509.X509CertImpl.subjectAlternativeNames:Ljava/util/Collection;
invokestatic sun.security.x509.X509CertImpl.cloneAltNames:(Ljava/util/Collection;)Ljava/util/Collection;
areturn
2: StackMap locals:
StackMap stack:
aload 0
invokevirtual sun.security.x509.X509CertImpl.getSubjectAlternativeNameExtension:()Lsun/security/x509/SubjectAlternativeNameExtension;
3: astore 1
start local 1 4: aload 1
ifnonnull 6
5: aconst_null
areturn
6: StackMap locals: sun.security.x509.SubjectAlternativeNameExtension
StackMap stack:
aload 1
7: ldc "subject_name"
8: invokevirtual sun.security.x509.SubjectAlternativeNameExtension.get:(Ljava/lang/String;)Lsun/security/x509/GeneralNames;
astore 2
start local 2 9: goto 12
end local 2 StackMap locals:
StackMap stack: java.io.IOException
10: pop
11: invokestatic java.util.Collections.emptySet:()Ljava/util/Set;
areturn
start local 2 12: StackMap locals: sun.security.x509.GeneralNames
StackMap stack:
aload 0
aload 2
invokestatic sun.security.x509.X509CertImpl.makeAltNames:(Lsun/security/x509/GeneralNames;)Ljava/util/Collection;
putfield sun.security.x509.X509CertImpl.subjectAlternativeNames:Ljava/util/Collection;
13: aload 0
getfield sun.security.x509.X509CertImpl.subjectAlternativeNames:Ljava/util/Collection;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lsun/security/x509/X509CertImpl;
4 14 1 subjectAltNameExt Lsun/security/x509/SubjectAlternativeNameExtension;
9 10 2 names Lsun/security/x509/GeneralNames;
12 14 2 names Lsun/security/x509/GeneralNames;
Exception table:
from to target type
6 9 10 Class java.io.IOException
Exceptions:
throws java.security.cert.CertificateParsingException
Signature: ()Ljava/util/Collection<Ljava/util/List<*>;>;
public static java.util.Collection<java.util.List<?>> getSubjectAlternativeNames(java.security.cert.X509Certificate);
descriptor: (Ljava/security/cert/X509Certificate;)Ljava/util/Collection;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=6, args_size=1
start local 0 0: aload 0
1: getstatic sun.security.util.KnownOIDs.SubjectAlternativeName:Lsun/security/util/KnownOIDs;
invokevirtual sun.security.util.KnownOIDs.value:()Ljava/lang/String;
2: invokevirtual java.security.cert.X509Certificate.getExtensionValue:(Ljava/lang/String;)[B
astore 1
start local 1 3: aload 1
ifnonnull 5
4: aconst_null
areturn
5: StackMap locals: byte[]
StackMap stack:
new sun.security.util.DerValue
dup
aload 1
invokespecial sun.security.util.DerValue.<init>:([B)V
astore 2
start local 2 6: aload 2
invokevirtual sun.security.util.DerValue.getOctetString:()[B
astore 3
start local 3 7: new sun.security.x509.SubjectAlternativeNameExtension
dup
getstatic java.lang.Boolean.FALSE:Ljava/lang/Boolean;
8: aload 3
9: invokespecial sun.security.x509.SubjectAlternativeNameExtension.<init>:(Ljava/lang/Boolean;Ljava/lang/Object;)V
10: astore 4
start local 4 11: aload 4
12: ldc "subject_name"
13: invokevirtual sun.security.x509.SubjectAlternativeNameExtension.get:(Ljava/lang/String;)Lsun/security/x509/GeneralNames;
astore 5
start local 5 14: goto 18
end local 5 StackMap locals: java.security.cert.X509Certificate byte[] sun.security.util.DerValue byte[] sun.security.x509.SubjectAlternativeNameExtension
StackMap stack: java.io.IOException
15: pop
16: invokestatic java.util.Collections.emptySet:()Ljava/util/Set;
17: areturn
start local 5 18: StackMap locals: sun.security.x509.GeneralNames
StackMap stack:
aload 5
invokestatic sun.security.x509.X509CertImpl.makeAltNames:(Lsun/security/x509/GeneralNames;)Ljava/util/Collection;
19: areturn
end local 5 end local 4 end local 3 end local 2 end local 1 20: StackMap locals: java.security.cert.X509Certificate
StackMap stack: java.io.IOException
astore 1
start local 1 21: new java.security.cert.CertificateParsingException
dup
aload 1
invokespecial java.security.cert.CertificateParsingException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 22 0 cert Ljava/security/cert/X509Certificate;
3 20 1 ext [B
6 20 2 val Lsun/security/util/DerValue;
7 20 3 data [B
11 20 4 subjectAltNameExt Lsun/security/x509/SubjectAlternativeNameExtension;
14 15 5 names Lsun/security/x509/GeneralNames;
18 20 5 names Lsun/security/x509/GeneralNames;
21 22 1 ioe Ljava/io/IOException;
Exception table:
from to target type
11 14 15 Class java.io.IOException
0 4 20 Class java.io.IOException
5 17 20 Class java.io.IOException
18 19 20 Class java.io.IOException
Exceptions:
throws java.security.cert.CertificateParsingException
Signature: (Ljava/security/cert/X509Certificate;)Ljava/util/Collection<Ljava/util/List<*>;>;
MethodParameters:
Name Flags
cert
public synchronized java.util.Collection<java.util.List<?>> getIssuerAlternativeNames();
descriptor: ()Ljava/util/Collection;
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=2, locals=3, args_size=1
start local 0 0: aload 0
getfield sun.security.x509.X509CertImpl.readOnly:Z
ifeq 2
aload 0
getfield sun.security.x509.X509CertImpl.issuerAlternativeNames:Ljava/util/Collection;
ifnull 2
1: aload 0
getfield sun.security.x509.X509CertImpl.issuerAlternativeNames:Ljava/util/Collection;
invokestatic sun.security.x509.X509CertImpl.cloneAltNames:(Ljava/util/Collection;)Ljava/util/Collection;
areturn
2: StackMap locals:
StackMap stack:
aload 0
invokevirtual sun.security.x509.X509CertImpl.getIssuerAlternativeNameExtension:()Lsun/security/x509/IssuerAlternativeNameExtension;
3: astore 1
start local 1 4: aload 1
ifnonnull 6
5: aconst_null
areturn
6: StackMap locals: sun.security.x509.IssuerAlternativeNameExtension
StackMap stack:
aload 1
7: ldc "issuer_name"
8: invokevirtual sun.security.x509.IssuerAlternativeNameExtension.get:(Ljava/lang/String;)Lsun/security/x509/GeneralNames;
astore 2
start local 2 9: goto 12
end local 2 StackMap locals:
StackMap stack: java.io.IOException
10: pop
11: invokestatic java.util.Collections.emptySet:()Ljava/util/Set;
areturn
start local 2 12: StackMap locals: sun.security.x509.GeneralNames
StackMap stack:
aload 0
aload 2
invokestatic sun.security.x509.X509CertImpl.makeAltNames:(Lsun/security/x509/GeneralNames;)Ljava/util/Collection;
putfield sun.security.x509.X509CertImpl.issuerAlternativeNames:Ljava/util/Collection;
13: aload 0
getfield sun.security.x509.X509CertImpl.issuerAlternativeNames:Ljava/util/Collection;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lsun/security/x509/X509CertImpl;
4 14 1 issuerAltNameExt Lsun/security/x509/IssuerAlternativeNameExtension;
9 10 2 names Lsun/security/x509/GeneralNames;
12 14 2 names Lsun/security/x509/GeneralNames;
Exception table:
from to target type
6 9 10 Class java.io.IOException
Exceptions:
throws java.security.cert.CertificateParsingException
Signature: ()Ljava/util/Collection<Ljava/util/List<*>;>;
public static java.util.Collection<java.util.List<?>> getIssuerAlternativeNames(java.security.cert.X509Certificate);
descriptor: (Ljava/security/cert/X509Certificate;)Ljava/util/Collection;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=6, args_size=1
start local 0 0: aload 0
1: getstatic sun.security.util.KnownOIDs.IssuerAlternativeName:Lsun/security/util/KnownOIDs;
invokevirtual sun.security.util.KnownOIDs.value:()Ljava/lang/String;
2: invokevirtual java.security.cert.X509Certificate.getExtensionValue:(Ljava/lang/String;)[B
astore 1
start local 1 3: aload 1
ifnonnull 5
4: aconst_null
areturn
5: StackMap locals: byte[]
StackMap stack:
new sun.security.util.DerValue
dup
aload 1
invokespecial sun.security.util.DerValue.<init>:([B)V
astore 2
start local 2 6: aload 2
invokevirtual sun.security.util.DerValue.getOctetString:()[B
astore 3
start local 3 7: new sun.security.x509.IssuerAlternativeNameExtension
dup
getstatic java.lang.Boolean.FALSE:Ljava/lang/Boolean;
8: aload 3
9: invokespecial sun.security.x509.IssuerAlternativeNameExtension.<init>:(Ljava/lang/Boolean;Ljava/lang/Object;)V
10: astore 4
start local 4 11: aload 4
12: ldc "issuer_name"
13: invokevirtual sun.security.x509.IssuerAlternativeNameExtension.get:(Ljava/lang/String;)Lsun/security/x509/GeneralNames;
astore 5
start local 5 14: goto 18
end local 5 StackMap locals: java.security.cert.X509Certificate byte[] sun.security.util.DerValue byte[] sun.security.x509.IssuerAlternativeNameExtension
StackMap stack: java.io.IOException
15: pop
16: invokestatic java.util.Collections.emptySet:()Ljava/util/Set;
17: areturn
start local 5 18: StackMap locals: sun.security.x509.GeneralNames
StackMap stack:
aload 5
invokestatic sun.security.x509.X509CertImpl.makeAltNames:(Lsun/security/x509/GeneralNames;)Ljava/util/Collection;
19: areturn
end local 5 end local 4 end local 3 end local 2 end local 1 20: StackMap locals: java.security.cert.X509Certificate
StackMap stack: java.io.IOException
astore 1
start local 1 21: new java.security.cert.CertificateParsingException
dup
aload 1
invokespecial java.security.cert.CertificateParsingException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 22 0 cert Ljava/security/cert/X509Certificate;
3 20 1 ext [B
6 20 2 val Lsun/security/util/DerValue;
7 20 3 data [B
11 20 4 issuerAltNameExt Lsun/security/x509/IssuerAlternativeNameExtension;
14 15 5 names Lsun/security/x509/GeneralNames;
18 20 5 names Lsun/security/x509/GeneralNames;
21 22 1 ioe Ljava/io/IOException;
Exception table:
from to target type
11 14 15 Class java.io.IOException
0 4 20 Class java.io.IOException
5 17 20 Class java.io.IOException
18 19 20 Class java.io.IOException
Exceptions:
throws java.security.cert.CertificateParsingException
Signature: (Ljava/security/cert/X509Certificate;)Ljava/util/Collection<Ljava/util/List<*>;>;
MethodParameters:
Name Flags
cert
public sun.security.x509.AuthorityInfoAccessExtension getAuthorityInfoAccessExtension();
descriptor: ()Lsun/security/x509/AuthorityInfoAccessExtension;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getstatic sun.security.x509.PKIXExtensions.AuthInfoAccess_Id:Lsun/security/util/ObjectIdentifier;
invokevirtual sun.security.x509.X509CertImpl.getExtension:(Lsun/security/util/ObjectIdentifier;)Lsun/security/x509/Extension;
1: checkcast sun.security.x509.AuthorityInfoAccessExtension
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/security/x509/X509CertImpl;
private void parse(sun.security.util.DerValue);
descriptor: (Lsun/security/util/DerValue;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield sun.security.x509.X509CertImpl.readOnly:Z
ifeq 4
1: new java.security.cert.CertificateParsingException
dup
2: ldc "cannot over-write existing certificate"
3: invokespecial java.security.cert.CertificateParsingException.<init>:(Ljava/lang/String;)V
athrow
4: StackMap locals:
StackMap stack:
aload 1
getfield sun.security.util.DerValue.data:Lsun/security/util/DerInputStream;
ifnull 5
aload 1
getfield sun.security.util.DerValue.tag:B
bipush 48
if_icmpeq 8
5: StackMap locals:
StackMap stack:
new java.security.cert.CertificateParsingException
dup
6: ldc "invalid DER-encoded certificate data"
7: invokespecial java.security.cert.CertificateParsingException.<init>:(Ljava/lang/String;)V
athrow
8: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual sun.security.util.DerValue.toByteArray:()[B
putfield sun.security.x509.X509CertImpl.signedCert:[B
9: iconst_3
anewarray sun.security.util.DerValue
astore 2
start local 2 10: aload 2
iconst_0
aload 1
getfield sun.security.util.DerValue.data:Lsun/security/util/DerInputStream;
invokevirtual sun.security.util.DerInputStream.getDerValue:()Lsun/security/util/DerValue;
aastore
11: aload 2
iconst_1
aload 1
getfield sun.security.util.DerValue.data:Lsun/security/util/DerInputStream;
invokevirtual sun.security.util.DerInputStream.getDerValue:()Lsun/security/util/DerValue;
aastore
12: aload 2
iconst_2
aload 1
getfield sun.security.util.DerValue.data:Lsun/security/util/DerInputStream;
invokevirtual sun.security.util.DerInputStream.getDerValue:()Lsun/security/util/DerValue;
aastore
13: aload 1
getfield sun.security.util.DerValue.data:Lsun/security/util/DerInputStream;
invokevirtual sun.security.util.DerInputStream.available:()I
ifeq 17
14: new java.security.cert.CertificateParsingException
dup
new java.lang.StringBuilder
dup
ldc "signed overrun, bytes = "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
15: aload 1
getfield sun.security.util.DerValue.data:Lsun/security/util/DerInputStream;
invokevirtual sun.security.util.DerInputStream.available:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
16: invokespecial java.security.cert.CertificateParsingException.<init>:(Ljava/lang/String;)V
athrow
17: StackMap locals: sun.security.util.DerValue[]
StackMap stack:
aload 2
iconst_0
aaload
getfield sun.security.util.DerValue.tag:B
bipush 48
if_icmpeq 19
18: new java.security.cert.CertificateParsingException
dup
ldc "signed fields invalid"
invokespecial java.security.cert.CertificateParsingException.<init>:(Ljava/lang/String;)V
athrow
19: StackMap locals:
StackMap stack:
aload 0
aload 2
iconst_1
aaload
invokestatic sun.security.x509.AlgorithmId.parse:(Lsun/security/util/DerValue;)Lsun/security/x509/AlgorithmId;
putfield sun.security.x509.X509CertImpl.algId:Lsun/security/x509/AlgorithmId;
20: aload 0
aload 2
iconst_2
aaload
invokevirtual sun.security.util.DerValue.getBitString:()[B
putfield sun.security.x509.X509CertImpl.signature:[B
21: aload 2
iconst_1
aaload
getfield sun.security.util.DerValue.data:Lsun/security/util/DerInputStream;
invokevirtual sun.security.util.DerInputStream.available:()I
ifeq 23
22: new java.security.cert.CertificateParsingException
dup
ldc "algid field overrun"
invokespecial java.security.cert.CertificateParsingException.<init>:(Ljava/lang/String;)V
athrow
23: StackMap locals:
StackMap stack:
aload 2
iconst_2
aaload
getfield sun.security.util.DerValue.data:Lsun/security/util/DerInputStream;
invokevirtual sun.security.util.DerInputStream.available:()I
ifeq 25
24: new java.security.cert.CertificateParsingException
dup
ldc "signed fields overrun"
invokespecial java.security.cert.CertificateParsingException.<init>:(Ljava/lang/String;)V
athrow
25: StackMap locals:
StackMap stack:
aload 0
new sun.security.x509.X509CertInfo
dup
aload 2
iconst_0
aaload
invokespecial sun.security.x509.X509CertInfo.<init>:(Lsun/security/util/DerValue;)V
putfield sun.security.x509.X509CertImpl.info:Lsun/security/x509/X509CertInfo;
26: aload 0
getfield sun.security.x509.X509CertImpl.info:Lsun/security/x509/X509CertInfo;
27: ldc "algorithmID.algorithm"
28: invokevirtual sun.security.x509.X509CertInfo.get:(Ljava/lang/String;)Ljava/lang/Object;
checkcast sun.security.x509.AlgorithmId
astore 3
start local 3 29: aload 0
getfield sun.security.x509.X509CertImpl.algId:Lsun/security/x509/AlgorithmId;
aload 3
invokevirtual sun.security.x509.AlgorithmId.equals:(Lsun/security/x509/AlgorithmId;)Z
ifne 31
30: new java.security.cert.CertificateException
dup
ldc "Signature algorithm mismatch"
invokespecial java.security.cert.CertificateException.<init>:(Ljava/lang/String;)V
athrow
31: StackMap locals: sun.security.x509.AlgorithmId
StackMap stack:
aload 0
iconst_1
putfield sun.security.x509.X509CertImpl.readOnly:Z
32: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 33 0 this Lsun/security/x509/X509CertImpl;
0 33 1 val Lsun/security/util/DerValue;
10 33 2 seq [Lsun/security/util/DerValue;
29 33 3 infoSigAlg Lsun/security/x509/AlgorithmId;
Exceptions:
throws java.security.cert.CertificateException, java.io.IOException
MethodParameters:
Name Flags
val
private static javax.security.auth.x500.X500Principal getX500Principal(java.security.cert.X509Certificate, boolean);
descriptor: (Ljava/security/cert/X509Certificate;Z)Ljavax/security/auth/x500/X500Principal;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=8, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual java.security.cert.X509Certificate.getEncoded:()[B
astore 2
start local 2 1: new sun.security.util.DerInputStream
dup
aload 2
invokespecial sun.security.util.DerInputStream.<init>:([B)V
astore 3
start local 3 2: aload 3
iconst_3
invokevirtual sun.security.util.DerInputStream.getSequence:(I)[Lsun/security/util/DerValue;
iconst_0
aaload
astore 4
start local 4 3: aload 4
getfield sun.security.util.DerValue.data:Lsun/security/util/DerInputStream;
astore 5
start local 5 4: aload 5
invokevirtual sun.security.util.DerInputStream.getDerValue:()Lsun/security/util/DerValue;
astore 6
start local 6 5: aload 6
iconst_0
invokevirtual sun.security.util.DerValue.isContextSpecific:(B)Z
ifeq 7
6: aload 5
invokevirtual sun.security.util.DerInputStream.getDerValue:()Lsun/security/util/DerValue;
astore 6
7: StackMap locals: java.security.cert.X509Certificate int byte[] sun.security.util.DerInputStream sun.security.util.DerValue sun.security.util.DerInputStream sun.security.util.DerValue
StackMap stack:
aload 5
invokevirtual sun.security.util.DerInputStream.getDerValue:()Lsun/security/util/DerValue;
astore 6
8: aload 5
invokevirtual sun.security.util.DerInputStream.getDerValue:()Lsun/security/util/DerValue;
astore 6
9: iload 1
ifne 12
10: aload 5
invokevirtual sun.security.util.DerInputStream.getDerValue:()Lsun/security/util/DerValue;
astore 6
11: aload 5
invokevirtual sun.security.util.DerInputStream.getDerValue:()Lsun/security/util/DerValue;
astore 6
12: StackMap locals:
StackMap stack:
aload 6
invokevirtual sun.security.util.DerValue.toByteArray:()[B
astore 7
start local 7 13: new javax.security.auth.x500.X500Principal
dup
aload 7
invokespecial javax.security.auth.x500.X500Principal.<init>:([B)V
areturn
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 cert Ljava/security/cert/X509Certificate;
0 14 1 getIssuer Z
1 14 2 encoded [B
2 14 3 derIn Lsun/security/util/DerInputStream;
3 14 4 tbsCert Lsun/security/util/DerValue;
4 14 5 tbsIn Lsun/security/util/DerInputStream;
5 14 6 tmp Lsun/security/util/DerValue;
13 14 7 principalBytes [B
Exceptions:
throws java.lang.Exception
MethodParameters:
Name Flags
cert
getIssuer
public static javax.security.auth.x500.X500Principal getSubjectX500Principal(java.security.cert.X509Certificate);
descriptor: (Ljava/security/cert/X509Certificate;)Ljavax/security/auth/x500/X500Principal;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=2, args_size=1
start local 0 0: aload 0
iconst_0
invokestatic sun.security.x509.X509CertImpl.getX500Principal:(Ljava/security/cert/X509Certificate;Z)Ljavax/security/auth/x500/X500Principal;
1: areturn
2: StackMap locals:
StackMap stack: java.lang.Exception
astore 1
start local 1 3: new java.lang.RuntimeException
dup
ldc "Could not parse subject"
aload 1
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 cert Ljava/security/cert/X509Certificate;
3 4 1 e Ljava/lang/Exception;
Exception table:
from to target type
0 1 2 Class java.lang.Exception
MethodParameters:
Name Flags
cert
public static javax.security.auth.x500.X500Principal getIssuerX500Principal(java.security.cert.X509Certificate);
descriptor: (Ljava/security/cert/X509Certificate;)Ljavax/security/auth/x500/X500Principal;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=2, args_size=1
start local 0 0: aload 0
iconst_1
invokestatic sun.security.x509.X509CertImpl.getX500Principal:(Ljava/security/cert/X509Certificate;Z)Ljavax/security/auth/x500/X500Principal;
1: areturn
2: StackMap locals:
StackMap stack: java.lang.Exception
astore 1
start local 1 3: new java.lang.RuntimeException
dup
ldc "Could not parse issuer"
aload 1
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 cert Ljava/security/cert/X509Certificate;
3 4 1 e Ljava/lang/Exception;
Exception table:
from to target type
0 1 2 Class java.lang.Exception
MethodParameters:
Name Flags
cert
public static byte[] getEncodedInternal(java.security.cert.Certificate);
descriptor: (Ljava/security/cert/Certificate;)[B
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
instanceof sun.security.x509.X509CertImpl
ifeq 2
1: aload 0
checkcast sun.security.x509.X509CertImpl
invokevirtual sun.security.x509.X509CertImpl.getEncodedInternal:()[B
areturn
2: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.security.cert.Certificate.getEncoded:()[B
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 cert Ljava/security/cert/Certificate;
Exceptions:
throws java.security.cert.CertificateEncodingException
MethodParameters:
Name Flags
cert
public static sun.security.x509.X509CertImpl toImpl(java.security.cert.X509Certificate);
descriptor: (Ljava/security/cert/X509Certificate;)Lsun/security/x509/X509CertImpl;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
instanceof sun.security.x509.X509CertImpl
ifeq 2
1: aload 0
checkcast sun.security.x509.X509CertImpl
areturn
2: StackMap locals:
StackMap stack:
aload 0
invokestatic sun.security.provider.X509Factory.intern:(Ljava/security/cert/X509Certificate;)Lsun/security/x509/X509CertImpl;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 cert Ljava/security/cert/X509Certificate;
Exceptions:
throws java.security.cert.CertificateException
MethodParameters:
Name Flags
cert
public static boolean isSelfIssued(java.security.cert.X509Certificate);
descriptor: (Ljava/security/cert/X509Certificate;)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=3, args_size=1
start local 0 0: aload 0
invokevirtual java.security.cert.X509Certificate.getSubjectX500Principal:()Ljavax/security/auth/x500/X500Principal;
astore 1
start local 1 1: aload 0
invokevirtual java.security.cert.X509Certificate.getIssuerX500Principal:()Ljavax/security/auth/x500/X500Principal;
astore 2
start local 2 2: aload 1
aload 2
invokevirtual javax.security.auth.x500.X500Principal.equals:(Ljava/lang/Object;)Z
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 cert Ljava/security/cert/X509Certificate;
1 3 1 subject Ljavax/security/auth/x500/X500Principal;
2 3 2 issuer Ljavax/security/auth/x500/X500Principal;
MethodParameters:
Name Flags
cert
public static boolean isSelfSigned(java.security.cert.X509Certificate, java.lang.String);
descriptor: (Ljava/security/cert/X509Certificate;Ljava/lang/String;)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokestatic sun.security.x509.X509CertImpl.isSelfIssued:(Ljava/security/cert/X509Certificate;)Z
ifeq 7
1: aload 1
ifnonnull 4
2: aload 0
aload 0
invokevirtual java.security.cert.X509Certificate.getPublicKey:()Ljava/security/PublicKey;
invokevirtual java.security.cert.X509Certificate.verify:(Ljava/security/PublicKey;)V
3: goto 5
4: StackMap locals:
StackMap stack:
aload 0
aload 0
invokevirtual java.security.cert.X509Certificate.getPublicKey:()Ljava/security/PublicKey;
aload 1
invokevirtual java.security.cert.X509Certificate.verify:(Ljava/security/PublicKey;Ljava/lang/String;)V
5: StackMap locals:
StackMap stack:
iconst_1
ireturn
6: StackMap locals:
StackMap stack: java.lang.Exception
pop
7: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 cert Ljava/security/cert/X509Certificate;
0 8 1 sigProvider Ljava/lang/String;
Exception table:
from to target type
1 5 6 Class java.lang.Exception
MethodParameters:
Name Flags
cert
sigProvider
public java.lang.String getFingerprint(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield sun.security.x509.X509CertImpl.fingerprints:Ljava/util/concurrent/ConcurrentHashMap;
aload 1
1: aload 0
invokedynamic apply(Lsun/security/x509/X509CertImpl;)Ljava/util/function/Function;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Ljava/lang/Object;
sun/security/x509/X509CertImpl.lambda$0(Ljava/lang/String;)Ljava/lang/String; (7)
(Ljava/lang/String;)Ljava/lang/String;
2: invokevirtual java.util.concurrent.ConcurrentHashMap.computeIfAbsent:(Ljava/lang/Object;Ljava/util/function/Function;)Ljava/lang/Object;
checkcast java.lang.String
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/security/x509/X509CertImpl;
0 3 1 algorithm Ljava/lang/String;
MethodParameters:
Name Flags
algorithm
public static java.lang.String getFingerprint(java.lang.String, java.security.cert.X509Certificate);
descriptor: (Ljava/lang/String;Ljava/security/cert/X509Certificate;)Ljava/lang/String;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=5, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual java.security.cert.X509Certificate.getEncoded:()[B
astore 2
start local 2 1: aload 0
invokestatic java.security.MessageDigest.getInstance:(Ljava/lang/String;)Ljava/security/MessageDigest;
astore 3
start local 3 2: aload 3
aload 2
invokevirtual java.security.MessageDigest.digest:([B)[B
astore 4
start local 4 3: invokestatic java.util.HexFormat.of:()Ljava/util/HexFormat;
invokevirtual java.util.HexFormat.withUpperCase:()Ljava/util/HexFormat;
aload 4
invokevirtual java.util.HexFormat.formatHex:([B)Ljava/lang/String;
4: areturn
end local 4 end local 3 end local 2 5: StackMap locals:
StackMap stack: java.security.GeneralSecurityException
pop
6: ldc ""
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 algorithm Ljava/lang/String;
0 7 1 cert Ljava/security/cert/X509Certificate;
1 5 2 encCertInfo [B
2 5 3 md Ljava/security/MessageDigest;
3 5 4 digest [B
Exception table:
from to target type
0 4 5 Class java.security.NoSuchAlgorithmException
0 4 5 Class java.security.cert.CertificateEncodingException
MethodParameters:
Name Flags
algorithm
cert
private java.lang.String lambda$0(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/String;
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
aload 0
invokestatic sun.security.x509.X509CertImpl.getFingerprint:(Ljava/lang/String;Ljava/security/cert/X509Certificate;)Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/security/x509/X509CertImpl;
0 1 1 x Ljava/lang/String;
}
SourceFile: "X509CertImpl.java"
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles