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 java.lang.String KEY_USAGE_OID;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "2.5.29.15"
private static final java.lang.String EXTENDED_KEY_USAGE_OID;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "2.5.29.37"
private static final java.lang.String BASIC_CONSTRAINT_OID;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "2.5.29.19"
private static final java.lang.String SUBJECT_ALT_NAME_OID;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "2.5.29.17"
private static final java.lang.String ISSUER_ALT_NAME_OID;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "2.5.29.18"
private static final java.lang.String AUTH_INFO_ACCESS_OID;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "1.3.6.1.5.5.7.1.1"
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
ldc "ASCII"
invokespecial java.io.InputStreamReader.<init>:(Ljava/io/InputStream;Ljava/lang/String;)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=5, 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 2
invokevirtual java.lang.String.length:()I
ifne 13
11: aload 0
getfield sun.security.x509.X509CertImpl.algId:Lsun/security/x509/AlgorithmId;
invokevirtual sun.security.x509.AlgorithmId.getName:()Ljava/lang/String;
invokestatic java.security.Signature.getInstance:(Ljava/lang/String;)Ljava/security/Signature;
astore 3
12: goto 14
13: StackMap locals: java.security.Signature
StackMap stack:
aload 0
getfield sun.security.x509.X509CertImpl.algId:Lsun/security/x509/AlgorithmId;
invokevirtual sun.security.x509.AlgorithmId.getName:()Ljava/lang/String;
aload 2
invokestatic java.security.Signature.getInstance:(Ljava/lang/String;Ljava/lang/String;)Ljava/security/Signature;
astore 3
14: StackMap locals:
StackMap stack:
aload 3
aload 1
invokevirtual java.security.Signature.initVerify:(Ljava/security/PublicKey;)V
15: aload 0
getfield sun.security.x509.X509CertImpl.info:Lsun/security/x509/X509CertInfo;
invokevirtual sun.security.x509.X509CertInfo.getEncodedInfo:()[B
astore 4
start local 4 16: aload 3
aload 4
iconst_0
aload 4
arraylength
invokevirtual java.security.Signature.update:([BII)V
17: 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
18: aload 0
aload 1
putfield sun.security.x509.X509CertImpl.verifiedPublicKey:Ljava/security/PublicKey;
19: aload 0
aload 2
putfield sun.security.x509.X509CertImpl.verifiedProvider:Ljava/lang/String;
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 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/lang/String;
10 23 3 sigVerf Ljava/security/Signature;
16 23 4 rawCert [B
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=5, 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 2
ifnonnull 6
4: aload 0
getfield sun.security.x509.X509CertImpl.algId:Lsun/security/x509/AlgorithmId;
invokevirtual sun.security.x509.AlgorithmId.getName:()Ljava/lang/String;
invokestatic java.security.Signature.getInstance:(Ljava/lang/String;)Ljava/security/Signature;
astore 3
5: goto 7
6: StackMap locals: java.security.Signature
StackMap stack:
aload 0
getfield sun.security.x509.X509CertImpl.algId:Lsun/security/x509/AlgorithmId;
invokevirtual sun.security.x509.AlgorithmId.getName:()Ljava/lang/String;
aload 2
invokestatic java.security.Signature.getInstance:(Ljava/lang/String;Ljava/security/Provider;)Ljava/security/Signature;
astore 3
7: StackMap locals:
StackMap stack:
aload 3
aload 1
invokevirtual java.security.Signature.initVerify:(Ljava/security/PublicKey;)V
8: aload 0
getfield sun.security.x509.X509CertImpl.info:Lsun/security/x509/X509CertInfo;
invokevirtual sun.security.x509.X509CertInfo.getEncodedInfo:()[B
astore 4
start local 4 9: aload 3
aload 4
iconst_0
aload 4
arraylength
invokevirtual java.security.Signature.update:([BII)V
10: 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
11: aload 0
aload 1
putfield sun.security.x509.X509CertImpl.verifiedPublicKey:Ljava/security/PublicKey;
12: aload 0
getfield sun.security.x509.X509CertImpl.verificationResult:Z
ifne 14
13: new java.security.SignatureException
dup
ldc "Signature does not match."
invokespecial java.security.SignatureException.<init>:(Ljava/lang/String;)V
athrow
14: StackMap locals: byte[]
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 15 0 this Lsun/security/x509/X509CertImpl;
0 15 1 key Ljava/security/PublicKey;
0 15 2 sigProvider Ljava/security/Provider;
3 15 3 sigVerf Ljava/security/Signature;
9 15 4 rawCert [B
Exceptions:
throws java.security.cert.CertificateException, java.security.NoSuchAlgorithmException, java.security.InvalidKeyException, java.security.SignatureException
MethodParameters:
Name Flags
key
sigProvider
public static void verify(java.security.cert.X509Certificate, java.security.PublicKey, java.security.Provider);
descriptor: (Ljava/security/cert/X509Certificate;Ljava/security/PublicKey;Ljava/security/Provider;)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
invokevirtual java.security.cert.X509Certificate.verify:(Ljava/security/PublicKey;Ljava/security/Provider;)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 cert Ljava/security/cert/X509Certificate;
0 2 1 key Ljava/security/PublicKey;
0 2 2 sigProvider Ljava/security/Provider;
Exceptions:
throws java.security.cert.CertificateException, java.security.NoSuchAlgorithmException, java.security.InvalidKeyException, java.security.SignatureException
MethodParameters:
Name Flags
cert
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=4, 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:
aconst_null
astore 4
start local 4 5: aload 3
ifnull 6
aload 3
invokevirtual java.lang.String.length:()I
ifne 7
6: StackMap locals: java.security.Signature
StackMap stack:
aload 2
invokestatic java.security.Signature.getInstance:(Ljava/lang/String;)Ljava/security/Signature;
astore 4
goto 8
7: StackMap locals:
StackMap stack:
aload 2
aload 3
invokestatic java.security.Signature.getInstance:(Ljava/lang/String;Ljava/lang/String;)Ljava/security/Signature;
astore 4
8: StackMap locals:
StackMap stack:
aload 4
aload 1
invokevirtual java.security.Signature.initSign:(Ljava/security/PrivateKey;)V
9: aload 0
aload 4
invokevirtual java.security.Signature.getAlgorithm:()Ljava/lang/String;
invokestatic sun.security.x509.AlgorithmId.get:(Ljava/lang/String;)Lsun/security/x509/AlgorithmId;
putfield sun.security.x509.X509CertImpl.algId:Lsun/security/x509/AlgorithmId;
10: new sun.security.util.DerOutputStream
dup
invokespecial sun.security.util.DerOutputStream.<init>:()V
astore 5
start local 5 11: new sun.security.util.DerOutputStream
dup
invokespecial sun.security.util.DerOutputStream.<init>:()V
astore 6
start local 6 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: sun.security.x509.X509CertImpl java.security.PrivateKey java.lang.String java.lang.String
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;
5 21 4 sigEngine Ljava/security/Signature;
11 21 5 out Lsun/security/util/DerOutputStream;
12 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=3, locals=9, args_size=2
start local 0 start local 1 0: new sun.security.util.ObjectIdentifier
dup
aload 1
invokespecial sun.security.util.ObjectIdentifier.<init>:(Ljava/lang/String;)V
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
ldc "2.5.29.37"
invokevirtual java.security.cert.X509Certificate.getExtensionValue:(Ljava/lang/String;)[B
astore 1
start local 1 1: aload 1
ifnonnull 3
2: aconst_null
areturn
3: 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 4: aload 2
invokevirtual sun.security.util.DerValue.getOctetString:()[B
astore 3
start local 3 5: 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
6: astore 4
start local 4 7: aload 4
invokevirtual sun.security.x509.ExtendedKeyUsageExtension.getExtendedKeyUsage:()Ljava/util/List;
invokestatic java.util.Collections.unmodifiableList:(Ljava/util/List;)Ljava/util/List;
8: areturn
end local 4 end local 3 end local 2 end local 1 9: StackMap locals: java.security.cert.X509Certificate
StackMap stack: java.io.IOException
astore 1
start local 1 10: 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 11 0 cert Ljava/security/cert/X509Certificate;
1 9 1 ext [B
4 9 2 val Lsun/security/util/DerValue;
5 9 3 data [B
7 9 4 ekuExt Lsun/security/x509/ExtendedKeyUsageExtension;
10 11 1 ioe Ljava/io/IOException;
Exception table:
from to target type
0 2 9 Class java.io.IOException
3 8 9 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
ldc "2.5.29.17"
invokevirtual java.security.cert.X509Certificate.getExtensionValue:(Ljava/lang/String;)[B
astore 1
start local 1 1: aload 1
ifnonnull 3
2: aconst_null
areturn
3: 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 4: aload 2
invokevirtual sun.security.util.DerValue.getOctetString:()[B
astore 3
start local 3 5: new sun.security.x509.SubjectAlternativeNameExtension
dup
getstatic java.lang.Boolean.FALSE:Ljava/lang/Boolean;
6: aload 3
7: invokespecial sun.security.x509.SubjectAlternativeNameExtension.<init>:(Ljava/lang/Boolean;Ljava/lang/Object;)V
8: astore 4
start local 4 9: aload 4
10: ldc "subject_name"
11: invokevirtual sun.security.x509.SubjectAlternativeNameExtension.get:(Ljava/lang/String;)Lsun/security/x509/GeneralNames;
astore 5
start local 5 12: goto 16
end local 5 StackMap locals: java.security.cert.X509Certificate byte[] sun.security.util.DerValue byte[] sun.security.x509.SubjectAlternativeNameExtension
StackMap stack: java.io.IOException
13: pop
14: invokestatic java.util.Collections.emptySet:()Ljava/util/Set;
15: areturn
start local 5 16: StackMap locals: sun.security.x509.GeneralNames
StackMap stack:
aload 5
invokestatic sun.security.x509.X509CertImpl.makeAltNames:(Lsun/security/x509/GeneralNames;)Ljava/util/Collection;
17: areturn
end local 5 end local 4 end local 3 end local 2 end local 1 18: StackMap locals: java.security.cert.X509Certificate
StackMap stack: java.io.IOException
astore 1
start local 1 19: 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 20 0 cert Ljava/security/cert/X509Certificate;
1 18 1 ext [B
4 18 2 val Lsun/security/util/DerValue;
5 18 3 data [B
9 18 4 subjectAltNameExt Lsun/security/x509/SubjectAlternativeNameExtension;
12 13 5 names Lsun/security/x509/GeneralNames;
16 18 5 names Lsun/security/x509/GeneralNames;
19 20 1 ioe Ljava/io/IOException;
Exception table:
from to target type
9 12 13 Class java.io.IOException
0 2 18 Class java.io.IOException
3 15 18 Class java.io.IOException
16 17 18 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
ldc "2.5.29.18"
invokevirtual java.security.cert.X509Certificate.getExtensionValue:(Ljava/lang/String;)[B
astore 1
start local 1 1: aload 1
ifnonnull 3
2: aconst_null
areturn
3: 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 4: aload 2
invokevirtual sun.security.util.DerValue.getOctetString:()[B
astore 3
start local 3 5: new sun.security.x509.IssuerAlternativeNameExtension
dup
getstatic java.lang.Boolean.FALSE:Ljava/lang/Boolean;
6: aload 3
7: invokespecial sun.security.x509.IssuerAlternativeNameExtension.<init>:(Ljava/lang/Boolean;Ljava/lang/Object;)V
8: astore 4
start local 4 9: aload 4
10: ldc "issuer_name"
11: invokevirtual sun.security.x509.IssuerAlternativeNameExtension.get:(Ljava/lang/String;)Lsun/security/x509/GeneralNames;
astore 5
start local 5 12: goto 16
end local 5 StackMap locals: java.security.cert.X509Certificate byte[] sun.security.util.DerValue byte[] sun.security.x509.IssuerAlternativeNameExtension
StackMap stack: java.io.IOException
13: pop
14: invokestatic java.util.Collections.emptySet:()Ljava/util/Set;
15: areturn
start local 5 16: StackMap locals: sun.security.x509.GeneralNames
StackMap stack:
aload 5
invokestatic sun.security.x509.X509CertImpl.makeAltNames:(Lsun/security/x509/GeneralNames;)Ljava/util/Collection;
17: areturn
end local 5 end local 4 end local 3 end local 2 end local 1 18: StackMap locals: java.security.cert.X509Certificate
StackMap stack: java.io.IOException
astore 1
start local 1 19: 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 20 0 cert Ljava/security/cert/X509Certificate;
1 18 1 ext [B
4 18 2 val Lsun/security/util/DerValue;
5 18 3 data [B
9 18 4 issuerAltNameExt Lsun/security/x509/IssuerAlternativeNameExtension;
12 13 5 names Lsun/security/x509/GeneralNames;
16 18 5 names Lsun/security/x509/GeneralNames;
19 20 1 ioe Ljava/io/IOException;
Exception table:
from to target type
9 12 13 Class java.io.IOException
0 2 18 Class java.io.IOException
3 15 18 Class java.io.IOException
16 17 18 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=4, locals=7, 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: new java.lang.StringBuilder
dup
aload 4
arraylength
iconst_2
imul
invokespecial java.lang.StringBuilder.<init>:(I)V
astore 5
start local 5 4: iconst_0
istore 6
start local 6 5: goto 8
6: StackMap locals: java.lang.String java.security.cert.X509Certificate byte[] java.security.MessageDigest byte[] java.lang.StringBuilder int
StackMap stack:
aload 4
iload 6
baload
aload 5
invokestatic sun.security.x509.X509CertImpl.byte2hex:(BLjava/lang/StringBuilder;)V
7: iinc 6 1
StackMap locals:
StackMap stack:
8: iload 6
aload 4
arraylength
if_icmplt 6
end local 6 9: aload 5
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
10: areturn
end local 5 end local 4 end local 3 end local 2 11: StackMap locals: java.lang.String java.security.cert.X509Certificate
StackMap stack: java.security.GeneralSecurityException
pop
12: ldc ""
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 algorithm Ljava/lang/String;
0 13 1 cert Ljava/security/cert/X509Certificate;
1 11 2 encCertInfo [B
2 11 3 md Ljava/security/MessageDigest;
3 11 4 digest [B
4 11 5 sb Ljava/lang/StringBuilder;
5 9 6 i I
Exception table:
from to target type
0 10 11 Class java.security.NoSuchAlgorithmException
0 10 11 Class java.security.cert.CertificateEncodingException
MethodParameters:
Name Flags
algorithm
cert
private static void byte2hex(byte, java.lang.StringBuilder);
descriptor: (BLjava/lang/StringBuilder;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=5, args_size=2
start local 0 start local 1 0: bipush 16
newarray 5
dup
iconst_0
bipush 48
castore
dup
iconst_1
bipush 49
castore
dup
iconst_2
bipush 50
castore
dup
iconst_3
bipush 51
castore
dup
iconst_4
bipush 52
castore
dup
iconst_5
bipush 53
castore
dup
bipush 6
bipush 54
castore
dup
bipush 7
bipush 55
castore
dup
bipush 8
bipush 56
castore
dup
bipush 9
1: bipush 57
castore
dup
bipush 10
bipush 65
castore
dup
bipush 11
bipush 66
castore
dup
bipush 12
bipush 67
castore
dup
bipush 13
bipush 68
castore
dup
bipush 14
bipush 69
castore
dup
bipush 15
bipush 70
castore
2: astore 2
start local 2 3: iload 0
sipush 240
iand
iconst_4
ishr
istore 3
start local 3 4: iload 0
bipush 15
iand
istore 4
start local 4 5: aload 1
aload 2
iload 3
caload
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
6: aload 2
iload 4
caload
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
7: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 b B
0 8 1 buf Ljava/lang/StringBuilder;
3 8 2 hexChars [C
4 8 3 high I
5 8 4 low I
MethodParameters:
Name Flags
b
buf
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