public class com.jcraft.jsch.KeyPairPKCS8 extends com.jcraft.jsch.KeyPair
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.jcraft.jsch.KeyPairPKCS8
super_class: com.jcraft.jsch.KeyPair
{
private static final byte[] rsaEncryption;
descriptor: [B
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final byte[] dsaEncryption;
descriptor: [B
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final byte[] pbes2;
descriptor: [B
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final byte[] pbkdf2;
descriptor: [B
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final byte[] aes128cbc;
descriptor: [B
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final byte[] aes192cbc;
descriptor: [B
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final byte[] aes256cbc;
descriptor: [B
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final byte[] pbeWithMD5AndDESCBC;
descriptor: [B
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private com.jcraft.jsch.KeyPair kpair;
descriptor: Lcom/jcraft/jsch/KeyPair;
flags: (0x0002) ACC_PRIVATE
private static final byte[] begin;
descriptor: [B
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final byte[] end;
descriptor: [B
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=0, args_size=0
0: bipush 9
newarray 8
dup
iconst_0
1: bipush 42
bastore
dup
iconst_1
bipush -122
bastore
dup
iconst_2
bipush 72
bastore
dup
iconst_3
bipush -122
bastore
dup
iconst_4
2: bipush -9
bastore
dup
iconst_5
bipush 13
bastore
dup
bipush 6
iconst_1
bastore
dup
bipush 7
iconst_1
bastore
dup
bipush 8
iconst_1
bastore
3: putstatic com.jcraft.jsch.KeyPairPKCS8.rsaEncryption:[B
4: bipush 7
newarray 8
dup
iconst_0
5: bipush 42
bastore
dup
iconst_1
bipush -122
bastore
dup
iconst_2
bipush 72
bastore
dup
iconst_3
bipush -50
bastore
dup
iconst_4
6: bipush 56
bastore
dup
iconst_5
iconst_4
bastore
dup
bipush 6
iconst_1
bastore
7: putstatic com.jcraft.jsch.KeyPairPKCS8.dsaEncryption:[B
8: bipush 9
newarray 8
dup
iconst_0
9: bipush 42
bastore
dup
iconst_1
bipush -122
bastore
dup
iconst_2
bipush 72
bastore
dup
iconst_3
bipush -122
bastore
dup
iconst_4
bipush -9
bastore
dup
iconst_5
10: bipush 13
bastore
dup
bipush 6
iconst_1
bastore
dup
bipush 7
iconst_5
bastore
dup
bipush 8
bipush 13
bastore
11: putstatic com.jcraft.jsch.KeyPairPKCS8.pbes2:[B
12: bipush 9
newarray 8
dup
iconst_0
13: bipush 42
bastore
dup
iconst_1
bipush -122
bastore
dup
iconst_2
bipush 72
bastore
dup
iconst_3
bipush -122
bastore
dup
iconst_4
bipush -9
bastore
dup
iconst_5
14: bipush 13
bastore
dup
bipush 6
iconst_1
bastore
dup
bipush 7
iconst_5
bastore
dup
bipush 8
bipush 12
bastore
15: putstatic com.jcraft.jsch.KeyPairPKCS8.pbkdf2:[B
16: bipush 9
newarray 8
dup
iconst_0
17: bipush 96
bastore
dup
iconst_1
bipush -122
bastore
dup
iconst_2
bipush 72
bastore
dup
iconst_3
iconst_1
bastore
dup
iconst_4
bipush 101
bastore
dup
iconst_5
18: iconst_3
bastore
dup
bipush 6
iconst_4
bastore
dup
bipush 7
iconst_1
bastore
dup
bipush 8
iconst_2
bastore
19: putstatic com.jcraft.jsch.KeyPairPKCS8.aes128cbc:[B
20: bipush 9
newarray 8
dup
iconst_0
21: bipush 96
bastore
dup
iconst_1
bipush -122
bastore
dup
iconst_2
bipush 72
bastore
dup
iconst_3
iconst_1
bastore
dup
iconst_4
bipush 101
bastore
dup
iconst_5
22: iconst_3
bastore
dup
bipush 6
iconst_4
bastore
dup
bipush 7
iconst_1
bastore
dup
bipush 8
bipush 22
bastore
23: putstatic com.jcraft.jsch.KeyPairPKCS8.aes192cbc:[B
24: bipush 9
newarray 8
dup
iconst_0
25: bipush 96
bastore
dup
iconst_1
bipush -122
bastore
dup
iconst_2
bipush 72
bastore
dup
iconst_3
iconst_1
bastore
dup
iconst_4
bipush 101
bastore
dup
iconst_5
26: iconst_3
bastore
dup
bipush 6
iconst_4
bastore
dup
bipush 7
iconst_1
bastore
dup
bipush 8
bipush 42
bastore
27: putstatic com.jcraft.jsch.KeyPairPKCS8.aes256cbc:[B
28: bipush 9
newarray 8
dup
iconst_0
29: bipush 42
bastore
dup
iconst_1
bipush -122
bastore
dup
iconst_2
bipush 72
bastore
dup
iconst_3
bipush -122
bastore
dup
iconst_4
bipush -9
bastore
dup
iconst_5
30: bipush 13
bastore
dup
bipush 6
iconst_1
bastore
dup
bipush 7
iconst_5
bastore
dup
bipush 8
iconst_3
bastore
31: putstatic com.jcraft.jsch.KeyPairPKCS8.pbeWithMD5AndDESCBC:[B
32: ldc "-----BEGIN DSA PRIVATE KEY-----"
invokestatic com.jcraft.jsch.Util.str2byte:(Ljava/lang/String;)[B
putstatic com.jcraft.jsch.KeyPairPKCS8.begin:[B
33: ldc "-----END DSA PRIVATE KEY-----"
invokestatic com.jcraft.jsch.Util.str2byte:(Ljava/lang/String;)[B
putstatic com.jcraft.jsch.KeyPairPKCS8.end:[B
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(com.jcraft.jsch.JSch);
descriptor: (Lcom/jcraft/jsch/JSch;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokespecial com.jcraft.jsch.KeyPair.<init>:(Lcom/jcraft/jsch/JSch;)V
1: aload 0
aconst_null
putfield com.jcraft.jsch.KeyPairPKCS8.kpair:Lcom/jcraft/jsch/KeyPair;
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/jcraft/jsch/KeyPairPKCS8;
0 3 1 jsch Lcom/jcraft/jsch/JSch;
MethodParameters:
Name Flags
jsch
void generate(int);
descriptor: (I)V
flags: (0x0000)
Code:
stack=0, locals=2, args_size=2
start local 0 start local 1 0: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/jcraft/jsch/KeyPairPKCS8;
0 1 1 key_size I
Exceptions:
throws com.jcraft.jsch.JSchException
MethodParameters:
Name Flags
key_size
byte[] getBegin();
descriptor: ()[B
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: getstatic com.jcraft.jsch.KeyPairPKCS8.begin:[B
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/jcraft/jsch/KeyPairPKCS8;
byte[] getEnd();
descriptor: ()[B
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: getstatic com.jcraft.jsch.KeyPairPKCS8.end:[B
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/jcraft/jsch/KeyPairPKCS8;
byte[] getPrivateKey();
descriptor: ()[B
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/jcraft/jsch/KeyPairPKCS8;
boolean parse(byte[]);
descriptor: ([B)Z
flags: (0x0000)
Code:
stack=8, locals=16, args_size=2
start local 0 start local 1 0: new java.util.Vector
dup
invokespecial java.util.Vector.<init>:()V
astore 2
start local 2 1: aconst_null
astore 3
start local 3 2: new com.jcraft.jsch.KeyPair$ASN1
dup
aload 0
aload 1
invokespecial com.jcraft.jsch.KeyPair$ASN1.<init>:(Lcom/jcraft/jsch/KeyPair;[B)V
astore 4
start local 4 3: aload 4
invokevirtual com.jcraft.jsch.KeyPair$ASN1.getContents:()[Lcom/jcraft/jsch/KeyPair$ASN1;
astore 3
4: aload 3
iconst_1
aaload
astore 5
start local 5 5: aload 3
iconst_2
aaload
astore 6
start local 6 6: aload 5
invokevirtual com.jcraft.jsch.KeyPair$ASN1.getContents:()[Lcom/jcraft/jsch/KeyPair$ASN1;
astore 3
7: aload 3
iconst_0
aaload
invokevirtual com.jcraft.jsch.KeyPair$ASN1.getContent:()[B
astore 7
start local 7 8: aload 3
iconst_1
aaload
invokevirtual com.jcraft.jsch.KeyPair$ASN1.getContents:()[Lcom/jcraft/jsch/KeyPair$ASN1;
astore 3
9: aload 3
arraylength
ifle 15
10: iconst_0
istore 8
start local 8 11: goto 14
12: StackMap locals: com.jcraft.jsch.KeyPairPKCS8 byte[] java.util.Vector com.jcraft.jsch.KeyPair$ASN1[] com.jcraft.jsch.KeyPair$ASN1 com.jcraft.jsch.KeyPair$ASN1 com.jcraft.jsch.KeyPair$ASN1 byte[] int
StackMap stack:
aload 2
aload 3
iload 8
aaload
invokevirtual com.jcraft.jsch.KeyPair$ASN1.getContent:()[B
invokevirtual java.util.Vector.addElement:(Ljava/lang/Object;)V
13: iinc 8 1
StackMap locals:
StackMap stack:
14: iload 8
aload 3
arraylength
if_icmplt 12
end local 8 15: StackMap locals:
StackMap stack:
aload 6
invokevirtual com.jcraft.jsch.KeyPair$ASN1.getContent:()[B
astore 8
start local 8 16: aconst_null
astore 9
start local 9 17: aload 7
getstatic com.jcraft.jsch.KeyPairPKCS8.rsaEncryption:[B
invokestatic com.jcraft.jsch.Util.array_equals:([B[B)Z
ifeq 23
18: new com.jcraft.jsch.KeyPairRSA
dup
aload 0
getfield com.jcraft.jsch.KeyPairPKCS8.jsch:Lcom/jcraft/jsch/JSch;
invokespecial com.jcraft.jsch.KeyPairRSA.<init>:(Lcom/jcraft/jsch/JSch;)V
astore 9
19: aload 9
aload 0
invokevirtual com.jcraft.jsch.KeyPair.copy:(Lcom/jcraft/jsch/KeyPair;)V
20: aload 9
aload 8
invokevirtual com.jcraft.jsch.KeyPair.parse:([B)Z
ifeq 59
21: aload 0
aload 9
putfield com.jcraft.jsch.KeyPairPKCS8.kpair:Lcom/jcraft/jsch/KeyPair;
22: goto 59
23: StackMap locals: byte[] com.jcraft.jsch.KeyPair
StackMap stack:
aload 7
getstatic com.jcraft.jsch.KeyPairPKCS8.dsaEncryption:[B
invokestatic com.jcraft.jsch.Util.array_equals:([B[B)Z
ifeq 59
24: new com.jcraft.jsch.KeyPair$ASN1
dup
aload 0
aload 8
invokespecial com.jcraft.jsch.KeyPair$ASN1.<init>:(Lcom/jcraft/jsch/KeyPair;[B)V
astore 4
25: aload 2
invokevirtual java.util.Vector.size:()I
ifne 36
26: aload 4
invokevirtual com.jcraft.jsch.KeyPair$ASN1.getContents:()[Lcom/jcraft/jsch/KeyPair$ASN1;
astore 3
27: aload 3
iconst_1
aaload
invokevirtual com.jcraft.jsch.KeyPair$ASN1.getContent:()[B
astore 10
start local 10 28: aload 3
iconst_0
aaload
invokevirtual com.jcraft.jsch.KeyPair$ASN1.getContents:()[Lcom/jcraft/jsch/KeyPair$ASN1;
astore 3
29: iconst_0
istore 11
start local 11 30: goto 33
31: StackMap locals: byte[] int
StackMap stack:
aload 2
aload 3
iload 11
aaload
invokevirtual com.jcraft.jsch.KeyPair$ASN1.getContent:()[B
invokevirtual java.util.Vector.addElement:(Ljava/lang/Object;)V
32: iinc 11 1
StackMap locals:
StackMap stack:
33: iload 11
aload 3
arraylength
if_icmplt 31
end local 11 34: aload 2
aload 10
invokevirtual java.util.Vector.addElement:(Ljava/lang/Object;)V
end local 10 35: goto 37
36: StackMap locals:
StackMap stack:
aload 2
aload 4
invokevirtual com.jcraft.jsch.KeyPair$ASN1.getContent:()[B
invokevirtual java.util.Vector.addElement:(Ljava/lang/Object;)V
37: StackMap locals:
StackMap stack:
aload 2
iconst_0
invokevirtual java.util.Vector.elementAt:(I)Ljava/lang/Object;
checkcast byte[]
astore 10
start local 10 38: aload 2
iconst_1
invokevirtual java.util.Vector.elementAt:(I)Ljava/lang/Object;
checkcast byte[]
astore 11
start local 11 39: aload 2
iconst_2
invokevirtual java.util.Vector.elementAt:(I)Ljava/lang/Object;
checkcast byte[]
astore 12
start local 12 40: aload 2
iconst_3
invokevirtual java.util.Vector.elementAt:(I)Ljava/lang/Object;
checkcast byte[]
astore 13
start local 13 41: new java.math.BigInteger
dup
aload 12
invokespecial java.math.BigInteger.<init>:([B)V
42: new java.math.BigInteger
dup
aload 13
invokespecial java.math.BigInteger.<init>:([B)V
new java.math.BigInteger
dup
aload 10
invokespecial java.math.BigInteger.<init>:([B)V
invokevirtual java.math.BigInteger.modPow:(Ljava/math/BigInteger;Ljava/math/BigInteger;)Ljava/math/BigInteger;
43: invokevirtual java.math.BigInteger.toByteArray:()[B
44: astore 14
start local 14 45: new com.jcraft.jsch.KeyPairDSA
dup
aload 0
getfield com.jcraft.jsch.KeyPairPKCS8.jsch:Lcom/jcraft/jsch/JSch;
46: aload 10
aload 11
aload 12
47: aload 14
aload 13
48: invokespecial com.jcraft.jsch.KeyPairDSA.<init>:(Lcom/jcraft/jsch/JSch;[B[B[B[B[B)V
astore 15
start local 15 49: aload 15
invokevirtual com.jcraft.jsch.KeyPairDSA.getPrivateKey:()[B
astore 1
50: new com.jcraft.jsch.KeyPairDSA
dup
aload 0
getfield com.jcraft.jsch.KeyPairPKCS8.jsch:Lcom/jcraft/jsch/JSch;
invokespecial com.jcraft.jsch.KeyPairDSA.<init>:(Lcom/jcraft/jsch/JSch;)V
astore 9
51: aload 9
aload 0
invokevirtual com.jcraft.jsch.KeyPair.copy:(Lcom/jcraft/jsch/KeyPair;)V
52: aload 9
aload 1
invokevirtual com.jcraft.jsch.KeyPair.parse:([B)Z
ifeq 59
53: aload 0
aload 9
putfield com.jcraft.jsch.KeyPairPKCS8.kpair:Lcom/jcraft/jsch/KeyPair;
end local 15 end local 14 end local 13 end local 12 end local 11 end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 54: goto 59
55: StackMap locals: com.jcraft.jsch.KeyPairPKCS8 byte[]
StackMap stack: com.jcraft.jsch.KeyPair$ASN1Exception
pop
56: iconst_0
ireturn
57: StackMap locals:
StackMap stack: java.lang.Exception
pop
58: iconst_0
ireturn
59: StackMap locals:
StackMap stack:
aload 0
getfield com.jcraft.jsch.KeyPairPKCS8.kpair:Lcom/jcraft/jsch/KeyPair;
ifnull 60
iconst_1
ireturn
StackMap locals:
StackMap stack:
60: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 61 0 this Lcom/jcraft/jsch/KeyPairPKCS8;
0 61 1 plain [B
1 54 2 values Ljava/util/Vector;
2 54 3 contents [Lcom/jcraft/jsch/KeyPair$ASN1;
3 54 4 asn1 Lcom/jcraft/jsch/KeyPair$ASN1;
5 54 5 privateKeyAlgorithm Lcom/jcraft/jsch/KeyPair$ASN1;
6 54 6 privateKey Lcom/jcraft/jsch/KeyPair$ASN1;
8 54 7 privateKeyAlgorithmID [B
11 15 8 i I
16 54 8 _data [B
17 54 9 _kpair Lcom/jcraft/jsch/KeyPair;
28 35 10 bar [B
30 34 11 i I
38 54 10 P_array [B
39 54 11 Q_array [B
40 54 12 G_array [B
41 54 13 prv_array [B
45 54 14 pub_array [B
49 54 15 _key Lcom/jcraft/jsch/KeyPairDSA;
Exception table:
from to target type
0 54 55 Class com.jcraft.jsch.KeyPair$ASN1Exception
0 54 57 Class java.lang.Exception
MethodParameters:
Name Flags
plain
public byte[] getPublicKeyBlob();
descriptor: ()[B
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.jcraft.jsch.KeyPairPKCS8.kpair:Lcom/jcraft/jsch/KeyPair;
invokevirtual com.jcraft.jsch.KeyPair.getPublicKeyBlob:()[B
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/jcraft/jsch/KeyPairPKCS8;
byte[] getKeyTypeName();
descriptor: ()[B
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.jcraft.jsch.KeyPairPKCS8.kpair:Lcom/jcraft/jsch/KeyPair;
invokevirtual com.jcraft.jsch.KeyPair.getKeyTypeName:()[B
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/jcraft/jsch/KeyPairPKCS8;
public int getKeyType();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.jcraft.jsch.KeyPairPKCS8.kpair:Lcom/jcraft/jsch/KeyPair;
invokevirtual com.jcraft.jsch.KeyPair.getKeyType:()I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/jcraft/jsch/KeyPairPKCS8;
public int getKeySize();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.jcraft.jsch.KeyPairPKCS8.kpair:Lcom/jcraft/jsch/KeyPair;
invokevirtual com.jcraft.jsch.KeyPair.getKeySize:()I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/jcraft/jsch/KeyPairPKCS8;
public byte[] getSignature(byte[]);
descriptor: ([B)[B
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.jcraft.jsch.KeyPairPKCS8.kpair:Lcom/jcraft/jsch/KeyPair;
aload 1
invokevirtual com.jcraft.jsch.KeyPair.getSignature:([B)[B
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/jcraft/jsch/KeyPairPKCS8;
0 1 1 data [B
MethodParameters:
Name Flags
data
public com.jcraft.jsch.Signature getVerifier();
descriptor: ()Lcom/jcraft/jsch/Signature;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.jcraft.jsch.KeyPairPKCS8.kpair:Lcom/jcraft/jsch/KeyPair;
invokevirtual com.jcraft.jsch.KeyPair.getVerifier:()Lcom/jcraft/jsch/Signature;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/jcraft/jsch/KeyPairPKCS8;
public byte[] ();
descriptor: ()[B
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.jcraft.jsch.KeyPairPKCS8.kpair:Lcom/jcraft/jsch/KeyPair;
invokevirtual com.jcraft.jsch.KeyPair.forSSHAgent:()[B
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/jcraft/jsch/KeyPairPKCS8;
Exceptions:
throws com.jcraft.jsch.JSchException
public boolean decrypt(byte[]);
descriptor: ([B)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=16, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual com.jcraft.jsch.KeyPairPKCS8.isEncrypted:()Z
ifne 2
1: iconst_1
ireturn
2: StackMap locals:
StackMap stack:
aload 1
ifnonnull 6
3: aload 0
invokevirtual com.jcraft.jsch.KeyPairPKCS8.isEncrypted:()Z
ifeq 4
iconst_0
goto 5
StackMap locals:
StackMap stack:
4: iconst_1
StackMap locals:
StackMap stack: int
5: ireturn
6: StackMap locals:
StackMap stack:
aconst_null
astore 2
start local 2 7: new com.jcraft.jsch.KeyPair$ASN1
dup
aload 0
aload 0
getfield com.jcraft.jsch.KeyPairPKCS8.data:[B
invokespecial com.jcraft.jsch.KeyPair$ASN1.<init>:(Lcom/jcraft/jsch/KeyPair;[B)V
astore 3
start local 3 8: aload 3
invokevirtual com.jcraft.jsch.KeyPair$ASN1.getContents:()[Lcom/jcraft/jsch/KeyPair$ASN1;
astore 2
9: aload 2
iconst_1
aaload
invokevirtual com.jcraft.jsch.KeyPair$ASN1.getContent:()[B
astore 4
start local 4 10: aload 2
iconst_0
aaload
astore 5
start local 5 11: aload 5
invokevirtual com.jcraft.jsch.KeyPair$ASN1.getContents:()[Lcom/jcraft/jsch/KeyPair$ASN1;
astore 2
12: aload 2
iconst_0
aaload
invokevirtual com.jcraft.jsch.KeyPair$ASN1.getContent:()[B
astore 6
start local 6 13: aload 2
iconst_1
aaload
astore 7
start local 7 14: aconst_null
astore 8
start local 8 15: iconst_0
istore 9
start local 9 16: aconst_null
astore 10
start local 10 17: aconst_null
astore 11
start local 11 18: aload 6
getstatic com.jcraft.jsch.KeyPairPKCS8.pbes2:[B
invokestatic com.jcraft.jsch.Util.array_equals:([B[B)Z
ifeq 33
19: aload 7
invokevirtual com.jcraft.jsch.KeyPair$ASN1.getContents:()[Lcom/jcraft/jsch/KeyPair$ASN1;
astore 2
20: aload 2
iconst_0
aaload
astore 12
start local 12 21: aload 2
iconst_1
aaload
astore 13
start local 13 22: aload 12
invokevirtual com.jcraft.jsch.KeyPair$ASN1.getContents:()[Lcom/jcraft/jsch/KeyPair$ASN1;
astore 2
23: aload 2
iconst_0
aaload
invokevirtual com.jcraft.jsch.KeyPair$ASN1.getContent:()[B
pop
24: aload 2
iconst_1
aaload
astore 14
start local 14 25: aload 14
invokevirtual com.jcraft.jsch.KeyPair$ASN1.getContents:()[Lcom/jcraft/jsch/KeyPair$ASN1;
astore 2
26: aload 2
iconst_0
aaload
invokevirtual com.jcraft.jsch.KeyPair$ASN1.getContent:()[B
astore 8
27: new java.math.BigInteger
dup
aload 2
iconst_1
aaload
invokevirtual com.jcraft.jsch.KeyPair$ASN1.getContent:()[B
invokespecial java.math.BigInteger.<init>:([B)V
invokevirtual java.math.BigInteger.toString:()Ljava/lang/String;
invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
28: istore 9
29: aload 13
invokevirtual com.jcraft.jsch.KeyPair$ASN1.getContents:()[Lcom/jcraft/jsch/KeyPair$ASN1;
astore 2
30: aload 2
iconst_0
aaload
invokevirtual com.jcraft.jsch.KeyPair$ASN1.getContent:()[B
astore 11
31: aload 2
iconst_1
aaload
invokevirtual com.jcraft.jsch.KeyPair$ASN1.getContent:()[B
astore 10
end local 14 end local 13 end local 12 32: goto 36
33: StackMap locals: com.jcraft.jsch.KeyPairPKCS8 byte[] com.jcraft.jsch.KeyPair$ASN1[] com.jcraft.jsch.KeyPair$ASN1 byte[] com.jcraft.jsch.KeyPair$ASN1 byte[] com.jcraft.jsch.KeyPair$ASN1 byte[] int byte[] byte[]
StackMap stack:
aload 6
getstatic com.jcraft.jsch.KeyPairPKCS8.pbeWithMD5AndDESCBC:[B
invokestatic com.jcraft.jsch.Util.array_equals:([B[B)Z
ifeq 35
34: iconst_0
ireturn
35: StackMap locals:
StackMap stack:
iconst_0
ireturn
36: StackMap locals:
StackMap stack:
aload 0
aload 11
invokevirtual com.jcraft.jsch.KeyPairPKCS8.getCipher:([B)Lcom/jcraft/jsch/Cipher;
astore 12
start local 12 37: aload 12
ifnonnull 39
38: iconst_0
ireturn
39: StackMap locals: com.jcraft.jsch.Cipher
StackMap stack:
aconst_null
astore 13
start local 13 40: ldc "pbkdf"
invokestatic com.jcraft.jsch.JSch.getConfig:(Ljava/lang/String;)Ljava/lang/String;
invokestatic java.lang.Class.forName:(Ljava/lang/String;)Ljava/lang/Class;
astore 14
start local 14 41: aload 14
invokevirtual java.lang.Class.newInstance:()Ljava/lang/Object;
checkcast com.jcraft.jsch.PBKDF
astore 15
start local 15 42: aload 15
aload 1
aload 8
iload 9
aload 12
invokeinterface com.jcraft.jsch.Cipher.getBlockSize:()I
invokeinterface com.jcraft.jsch.PBKDF.getKey:([B[BII)[B
astore 13
end local 15 end local 14 43: goto 45
44: StackMap locals: com.jcraft.jsch.KeyPairPKCS8 byte[] com.jcraft.jsch.KeyPair$ASN1[] com.jcraft.jsch.KeyPair$ASN1 byte[] com.jcraft.jsch.KeyPair$ASN1 byte[] com.jcraft.jsch.KeyPair$ASN1 byte[] int byte[] byte[] com.jcraft.jsch.Cipher byte[]
StackMap stack: java.lang.Exception
pop
45: StackMap locals:
StackMap stack:
aload 13
ifnonnull 47
46: iconst_0
ireturn
47: StackMap locals:
StackMap stack:
aload 12
iconst_1
aload 13
aload 10
invokeinterface com.jcraft.jsch.Cipher.init:(I[B[B)V
48: aload 13
invokestatic com.jcraft.jsch.Util.bzero:([B)V
49: aload 4
arraylength
newarray 8
astore 14
start local 14 50: aload 12
aload 4
iconst_0
aload 4
arraylength
aload 14
iconst_0
invokeinterface com.jcraft.jsch.Cipher.update:([BII[BI)V
51: aload 0
aload 14
invokevirtual com.jcraft.jsch.KeyPairPKCS8.parse:([B)Z
ifeq 56
52: aload 0
iconst_0
putfield com.jcraft.jsch.KeyPairPKCS8.encrypted:Z
53: iconst_1
ireturn
end local 14 end local 13 end local 12 end local 11 end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 54: StackMap locals: com.jcraft.jsch.KeyPairPKCS8 byte[]
StackMap stack: com.jcraft.jsch.KeyPair$ASN1Exception
pop
goto 56
55: StackMap locals:
StackMap stack: java.lang.Exception
pop
56: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 57 0 this Lcom/jcraft/jsch/KeyPairPKCS8;
0 57 1 _passphrase [B
7 54 2 contents [Lcom/jcraft/jsch/KeyPair$ASN1;
8 54 3 asn1 Lcom/jcraft/jsch/KeyPair$ASN1;
10 54 4 _data [B
11 54 5 pbes Lcom/jcraft/jsch/KeyPair$ASN1;
13 54 6 pbesid [B
14 54 7 pbesparam Lcom/jcraft/jsch/KeyPair$ASN1;
15 54 8 salt [B
16 54 9 iterations I
17 54 10 iv [B
18 54 11 encryptfuncid [B
21 32 12 pbkdf Lcom/jcraft/jsch/KeyPair$ASN1;
22 32 13 encryptfunc Lcom/jcraft/jsch/KeyPair$ASN1;
25 32 14 pbkdffunc Lcom/jcraft/jsch/KeyPair$ASN1;
37 54 12 cipher Lcom/jcraft/jsch/Cipher;
40 54 13 key [B
41 43 14 c Ljava/lang/Class;
42 43 15 tmp Lcom/jcraft/jsch/PBKDF;
50 54 14 plain [B
Exception table:
from to target type
40 43 44 Class java.lang.Exception
6 34 54 Class com.jcraft.jsch.KeyPair$ASN1Exception
36 38 54 Class com.jcraft.jsch.KeyPair$ASN1Exception
39 46 54 Class com.jcraft.jsch.KeyPair$ASN1Exception
47 53 54 Class com.jcraft.jsch.KeyPair$ASN1Exception
6 34 55 Class java.lang.Exception
36 38 55 Class java.lang.Exception
39 46 55 Class java.lang.Exception
47 53 55 Class java.lang.Exception
MethodParameters:
Name Flags
_passphrase
com.jcraft.jsch.Cipher getCipher(byte[]);
descriptor: ([B)Lcom/jcraft/jsch/Cipher;
flags: (0x0000)
Code:
stack=5, locals=5, 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: aload 1
getstatic com.jcraft.jsch.KeyPairPKCS8.aes128cbc:[B
invokestatic com.jcraft.jsch.Util.array_equals:([B[B)Z
ifeq 5
3: ldc "aes128-cbc"
astore 3
4: goto 10
5: StackMap locals: com.jcraft.jsch.Cipher java.lang.String
StackMap stack:
aload 1
getstatic com.jcraft.jsch.KeyPairPKCS8.aes192cbc:[B
invokestatic com.jcraft.jsch.Util.array_equals:([B[B)Z
ifeq 8
6: ldc "aes192-cbc"
astore 3
7: goto 10
8: StackMap locals:
StackMap stack:
aload 1
getstatic com.jcraft.jsch.KeyPairPKCS8.aes256cbc:[B
invokestatic com.jcraft.jsch.Util.array_equals:([B[B)Z
ifeq 10
9: ldc "aes256-cbc"
astore 3
10: StackMap locals:
StackMap stack:
aload 3
invokestatic com.jcraft.jsch.JSch.getConfig:(Ljava/lang/String;)Ljava/lang/String;
invokestatic java.lang.Class.forName:(Ljava/lang/String;)Ljava/lang/Class;
astore 4
start local 4 11: aload 4
invokevirtual java.lang.Class.newInstance:()Ljava/lang/Object;
checkcast com.jcraft.jsch.Cipher
astore 2
end local 4 12: goto 21
13: StackMap locals:
StackMap stack: java.lang.Exception
pop
14: invokestatic com.jcraft.jsch.JSch.getLogger:()Lcom/jcraft/jsch/Logger;
iconst_4
invokeinterface com.jcraft.jsch.Logger.isEnabled:(I)Z
ifeq 21
15: ldc ""
astore 4
start local 4 16: aload 3
ifnonnull 19
17: new java.lang.StringBuilder
dup
ldc "unknown oid: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokestatic com.jcraft.jsch.Util.toHex:([B)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 4
18: goto 20
19: StackMap locals: java.lang.String
StackMap stack:
new java.lang.StringBuilder
dup
ldc "function "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " is not supported"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 4
20: StackMap locals:
StackMap stack:
invokestatic com.jcraft.jsch.JSch.getLogger:()Lcom/jcraft/jsch/Logger;
iconst_4
new java.lang.StringBuilder
dup
ldc "PKCS8: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 4
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokeinterface com.jcraft.jsch.Logger.log:(ILjava/lang/String;)V
end local 4 21: StackMap locals:
StackMap stack:
aload 2
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 22 0 this Lcom/jcraft/jsch/KeyPairPKCS8;
0 22 1 id [B
1 22 2 cipher Lcom/jcraft/jsch/Cipher;
2 22 3 name Ljava/lang/String;
11 12 4 c Ljava/lang/Class;
16 21 4 message Ljava/lang/String;
Exception table:
from to target type
2 12 13 Class java.lang.Exception
MethodParameters:
Name Flags
id
}
SourceFile: "KeyPairPKCS8.java"
InnerClasses:
ASN1 = com.jcraft.jsch.KeyPair$ASN1 of com.jcraft.jsch.KeyPair
ASN1Exception = com.jcraft.jsch.KeyPair$ASN1Exception of com.jcraft.jsch.KeyPair