public class sun.security.krb5.EncryptionKey implements java.lang.Cloneable
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: sun.security.krb5.EncryptionKey
super_class: java.lang.Object
{
public static final sun.security.krb5.EncryptionKey NULL_KEY;
descriptor: Lsun/security/krb5/EncryptionKey;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
private int keyType;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private byte[] keyValue;
descriptor: [B
flags: (0x0002) ACC_PRIVATE
private java.lang.Integer kvno;
descriptor: Ljava/lang/Integer;
flags: (0x0002) ACC_PRIVATE
private static final boolean DEBUG;
descriptor: Z
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=5, locals=0, args_size=0
0: new sun.security.krb5.EncryptionKey
dup
iconst_0
newarray 8
iconst_0
aconst_null
invokespecial sun.security.krb5.EncryptionKey.<init>:([BILjava/lang/Integer;)V
1: putstatic sun.security.krb5.EncryptionKey.NULL_KEY:Lsun/security/krb5/EncryptionKey;
2: getstatic sun.security.krb5.internal.Krb5.DEBUG:Z
putstatic sun.security.krb5.EncryptionKey.DEBUG:Z
return
LocalVariableTable:
Start End Slot Name Signature
public synchronized int getEType();
descriptor: ()I
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.security.krb5.EncryptionKey.keyType:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/security/krb5/EncryptionKey;
public final java.lang.Integer getKeyVersionNumber();
descriptor: ()Ljava/lang/Integer;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.security.krb5.EncryptionKey.kvno:Ljava/lang/Integer;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/security/krb5/EncryptionKey;
public final byte[] getBytes();
descriptor: ()[B
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.security.krb5.EncryptionKey.keyValue:[B
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/security/krb5/EncryptionKey;
public synchronized java.lang.Object clone();
descriptor: ()Ljava/lang/Object;
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=5, locals=1, args_size=1
start local 0 0: new sun.security.krb5.EncryptionKey
dup
aload 0
getfield sun.security.krb5.EncryptionKey.keyValue:[B
aload 0
getfield sun.security.krb5.EncryptionKey.keyType:I
aload 0
getfield sun.security.krb5.EncryptionKey.kvno:Ljava/lang/Integer;
invokespecial sun.security.krb5.EncryptionKey.<init>:([BILjava/lang/Integer;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/security/krb5/EncryptionKey;
public static sun.security.krb5.EncryptionKey[] acquireSecretKeys(sun.security.krb5.PrincipalName, java.lang.String);
descriptor: (Lsun/security/krb5/PrincipalName;Ljava/lang/String;)[Lsun/security/krb5/EncryptionKey;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
ifnonnull 4
1: new java.lang.IllegalArgumentException
dup
2: ldc "Cannot have null pricipal name to look in keytab."
3: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
4: StackMap locals:
StackMap stack:
aload 1
invokestatic sun.security.krb5.internal.ktab.KeyTab.getInstance:(Ljava/lang/String;)Lsun/security/krb5/internal/ktab/KeyTab;
astore 2
start local 2 5: aload 2
aload 0
invokevirtual sun.security.krb5.internal.ktab.KeyTab.readServiceKeys:(Lsun/security/krb5/PrincipalName;)[Lsun/security/krb5/EncryptionKey;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 princ Lsun/security/krb5/PrincipalName;
0 6 1 keytab Ljava/lang/String;
5 6 2 ktab Lsun/security/krb5/internal/ktab/KeyTab;
MethodParameters:
Name Flags
princ
keytab
public static sun.security.krb5.EncryptionKey acquireSecretKey(sun.security.krb5.PrincipalName, char[], int, sun.security.krb5.internal.PAData$SaltAndParams);
descriptor: (Lsun/security/krb5/PrincipalName;[CILsun/security/krb5/internal/PAData$SaltAndParams;)Lsun/security/krb5/EncryptionKey;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=6, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 3
ifnull 6
1: aload 3
getfield sun.security.krb5.internal.PAData$SaltAndParams.salt:Ljava/lang/String;
ifnull 2
aload 3
getfield sun.security.krb5.internal.PAData$SaltAndParams.salt:Ljava/lang/String;
goto 3
StackMap locals:
StackMap stack:
2: aload 0
invokevirtual sun.security.krb5.PrincipalName.getSalt:()Ljava/lang/String;
StackMap locals:
StackMap stack: java.lang.String
3: astore 4
start local 4 4: aload 3
getfield sun.security.krb5.internal.PAData$SaltAndParams.params:[B
astore 5
start local 5 5: goto 8
end local 5 end local 4 6: StackMap locals:
StackMap stack:
aload 0
invokevirtual sun.security.krb5.PrincipalName.getSalt:()Ljava/lang/String;
astore 4
start local 4 7: aconst_null
astore 5
start local 5 8: StackMap locals: java.lang.String byte[]
StackMap stack:
aload 1
aload 4
iload 2
aload 5
invokestatic sun.security.krb5.EncryptionKey.acquireSecretKey:([CLjava/lang/String;I[B)Lsun/security/krb5/EncryptionKey;
areturn
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 9 0 cname Lsun/security/krb5/PrincipalName;
0 9 1 password [C
0 9 2 etype I
0 9 3 snp Lsun/security/krb5/internal/PAData$SaltAndParams;
4 6 4 salt Ljava/lang/String;
7 9 4 salt Ljava/lang/String;
5 6 5 s2kparams [B
8 9 5 s2kparams [B
Exceptions:
throws sun.security.krb5.KrbException
MethodParameters:
Name Flags
cname
password
etype
snp
public static sun.security.krb5.EncryptionKey acquireSecretKey(char[], java.lang.String, int, byte[]);
descriptor: ([CLjava/lang/String;I[B)Lsun/security/krb5/EncryptionKey;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: new sun.security.krb5.EncryptionKey
dup
1: aload 0
aload 1
aload 3
iload 2
invokestatic sun.security.krb5.EncryptionKey.stringToKey:([CLjava/lang/String;[BI)[B
2: iload 2
aconst_null
3: invokespecial sun.security.krb5.EncryptionKey.<init>:([BILjava/lang/Integer;)V
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 password [C
0 4 1 salt Ljava/lang/String;
0 4 2 etype I
0 4 3 s2kparams [B
Exceptions:
throws sun.security.krb5.KrbException
MethodParameters:
Name Flags
password
salt
etype
s2kparams
public static sun.security.krb5.EncryptionKey[] acquireSecretKeys(char[], java.lang.String);
descriptor: ([CLjava/lang/String;)[Lsun/security/krb5/EncryptionKey;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=9, locals=5, args_size=2
start local 0 start local 1 0: ldc "default_tkt_enctypes"
invokestatic sun.security.krb5.internal.crypto.EType.getDefaults:(Ljava/lang/String;)[I
astore 2
start local 2 1: aload 2
arraylength
anewarray sun.security.krb5.EncryptionKey
astore 3
start local 3 2: iconst_0
istore 4
start local 4 3: goto 16
4: StackMap locals: int[] sun.security.krb5.EncryptionKey[] int
StackMap stack:
aload 2
iload 4
iaload
invokestatic sun.security.krb5.internal.crypto.EType.isSupported:(I)Z
ifeq 10
5: aload 3
iload 4
new sun.security.krb5.EncryptionKey
dup
6: aload 0
aload 1
aconst_null
aload 2
iload 4
iaload
invokestatic sun.security.krb5.EncryptionKey.stringToKey:([CLjava/lang/String;[BI)[B
7: aload 2
iload 4
iaload
aconst_null
invokespecial sun.security.krb5.EncryptionKey.<init>:([BILjava/lang/Integer;)V
8: aastore
9: goto 15
10: StackMap locals:
StackMap stack:
getstatic sun.security.krb5.EncryptionKey.DEBUG:Z
ifeq 15
11: getstatic java.lang.System.out:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc "Encryption Type "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
12: aload 2
iload 4
iaload
invokestatic sun.security.krb5.internal.crypto.EType.toString:(I)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
13: ldc " is not supported/enabled"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
14: invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
15: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
16: iload 4
aload 2
arraylength
if_icmplt 4
end local 4 17: aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 password [C
0 18 1 salt Ljava/lang/String;
1 18 2 etypes [I
2 18 3 encKeys [Lsun/security/krb5/EncryptionKey;
3 17 4 i I
Exceptions:
throws sun.security.krb5.KrbException
MethodParameters:
Name Flags
password
salt
public void <init>(byte[], int, java.lang.Integer);
descriptor: ([BILjava/lang/Integer;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 1
ifnull 5
2: aload 0
aload 1
arraylength
newarray 8
putfield sun.security.krb5.EncryptionKey.keyValue:[B
3: aload 1
iconst_0
aload 0
getfield sun.security.krb5.EncryptionKey.keyValue:[B
iconst_0
aload 1
arraylength
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
4: goto 6
5: StackMap locals: sun.security.krb5.EncryptionKey byte[] int java.lang.Integer
StackMap stack:
new java.lang.IllegalArgumentException
dup
ldc "EncryptionKey: Key bytes cannot be null!"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
6: StackMap locals:
StackMap stack:
aload 0
iload 2
putfield sun.security.krb5.EncryptionKey.keyType:I
7: aload 0
aload 3
putfield sun.security.krb5.EncryptionKey.kvno:Ljava/lang/Integer;
8: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lsun/security/krb5/EncryptionKey;
0 9 1 keyValue [B
0 9 2 keyType I
0 9 3 kvno Ljava/lang/Integer;
MethodParameters:
Name Flags
keyValue
keyType
kvno
public void <init>(int, byte[]);
descriptor: (I[B)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 2
iload 1
aconst_null
invokespecial sun.security.krb5.EncryptionKey.<init>:([BILjava/lang/Integer;)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/security/krb5/EncryptionKey;
0 2 1 keyType I
0 2 2 keyValue [B
MethodParameters:
Name Flags
keyType
keyValue
private static byte[] stringToKey(char[], java.lang.String, byte[], int);
descriptor: ([CLjava/lang/String;[BI)[B
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=10, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
invokevirtual java.lang.String.toCharArray:()[C
astore 4
start local 4 1: aload 0
arraylength
aload 4
arraylength
iadd
newarray 5
astore 5
start local 5 2: aload 0
iconst_0
aload 5
iconst_0
aload 0
arraylength
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
3: aload 4
iconst_0
aload 5
aload 0
arraylength
aload 4
arraylength
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
4: aload 4
bipush 48
invokestatic java.util.Arrays.fill:([CC)V
5: iload 3
lookupswitch { // 8
1: 6
3: 6
16: 9
17: 15
18: 18
19: 21
20: 24
23: 12
default: 27
}
6: StackMap locals: char[] char[]
StackMap stack:
aload 5
invokestatic sun.security.krb5.internal.crypto.Des.string_to_key_bytes:([C)[B
astore 9
7: aload 5
bipush 48
invokestatic java.util.Arrays.fill:([CC)V
8: aload 9
areturn
9: StackMap locals:
StackMap stack:
aload 5
invokestatic sun.security.krb5.internal.crypto.Des3.stringToKey:([C)[B
astore 9
10: aload 5
bipush 48
invokestatic java.util.Arrays.fill:([CC)V
11: aload 9
areturn
12: StackMap locals:
StackMap stack:
aload 0
invokestatic sun.security.krb5.internal.crypto.ArcFourHmac.stringToKey:([C)[B
astore 9
13: aload 5
bipush 48
invokestatic java.util.Arrays.fill:([CC)V
14: aload 9
areturn
15: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
invokestatic sun.security.krb5.internal.crypto.Aes128.stringToKey:([CLjava/lang/String;[B)[B
astore 9
16: aload 5
bipush 48
invokestatic java.util.Arrays.fill:([CC)V
17: aload 9
areturn
18: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
invokestatic sun.security.krb5.internal.crypto.Aes256.stringToKey:([CLjava/lang/String;[B)[B
astore 9
19: aload 5
bipush 48
invokestatic java.util.Arrays.fill:([CC)V
20: aload 9
areturn
21: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
invokestatic sun.security.krb5.internal.crypto.Aes128Sha2.stringToKey:([CLjava/lang/String;[B)[B
astore 9
22: aload 5
bipush 48
invokestatic java.util.Arrays.fill:([CC)V
23: aload 9
areturn
24: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
invokestatic sun.security.krb5.internal.crypto.Aes256Sha2.stringToKey:([CLjava/lang/String;[B)[B
astore 9
25: aload 5
bipush 48
invokestatic java.util.Arrays.fill:([CC)V
26: aload 9
areturn
27: StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "encryption type "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
28: iload 3
invokestatic sun.security.krb5.internal.crypto.EType.toString:(I)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " not supported"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
29: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
30: StackMap locals:
StackMap stack: java.security.GeneralSecurityException
astore 6
start local 6 31: new sun.security.krb5.KrbCryptoException
dup
aload 6
invokevirtual java.security.GeneralSecurityException.getMessage:()Ljava/lang/String;
invokespecial sun.security.krb5.KrbCryptoException.<init>:(Ljava/lang/String;)V
astore 7
start local 7 32: aload 7
aload 6
invokevirtual sun.security.krb5.KrbCryptoException.initCause:(Ljava/lang/Throwable;)Ljava/lang/Throwable;
pop
33: aload 7
athrow
end local 7 end local 6 34: StackMap locals:
StackMap stack: java.lang.Throwable
astore 8
35: aload 5
bipush 48
invokestatic java.util.Arrays.fill:([CC)V
36: aload 8
athrow
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 37 0 password [C
0 37 1 salt Ljava/lang/String;
0 37 2 s2kparams [B
0 37 3 keyType I
1 37 4 slt [C
2 37 5 pwsalt [C
31 34 6 e Ljava/security/GeneralSecurityException;
32 34 7 ke Lsun/security/krb5/KrbCryptoException;
Exception table:
from to target type
5 7 30 Class java.security.GeneralSecurityException
9 10 30 Class java.security.GeneralSecurityException
12 13 30 Class java.security.GeneralSecurityException
15 16 30 Class java.security.GeneralSecurityException
18 19 30 Class java.security.GeneralSecurityException
21 22 30 Class java.security.GeneralSecurityException
24 25 30 Class java.security.GeneralSecurityException
27 30 30 Class java.security.GeneralSecurityException
5 7 34 any
9 10 34 any
12 13 34 any
15 16 34 any
18 19 34 any
21 22 34 any
24 25 34 any
27 34 34 any
Exceptions:
throws sun.security.krb5.KrbCryptoException
MethodParameters:
Name Flags
password
salt
s2kparams
keyType
public void <init>(char[], java.lang.String, java.lang.String);
descriptor: ([CLjava/lang/String;Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 3
ifnull 3
aload 3
ldc "DES"
invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
ifne 3
2: aload 3
ldc "des-cbc-md5"
invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
ifeq 5
3: StackMap locals: sun.security.krb5.EncryptionKey char[] java.lang.String java.lang.String
StackMap stack:
aload 0
iconst_3
putfield sun.security.krb5.EncryptionKey.keyType:I
4: goto 39
StackMap locals:
StackMap stack:
5: aload 3
ldc "des-cbc-crc"
invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
ifeq 8
6: aload 0
iconst_1
putfield sun.security.krb5.EncryptionKey.keyType:I
7: goto 39
StackMap locals:
StackMap stack:
8: aload 3
ldc "DESede"
invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
ifne 10
9: aload 3
ldc "des3-cbc-sha1-kd"
invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
ifeq 12
10: StackMap locals:
StackMap stack:
aload 0
bipush 16
putfield sun.security.krb5.EncryptionKey.keyType:I
11: goto 39
StackMap locals:
StackMap stack:
12: aload 3
ldc "AES128"
invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
ifne 14
13: aload 3
ldc "aes128-cts-hmac-sha1-96"
invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
ifeq 16
14: StackMap locals:
StackMap stack:
aload 0
bipush 17
putfield sun.security.krb5.EncryptionKey.keyType:I
15: goto 39
StackMap locals:
StackMap stack:
16: aload 3
ldc "ArcFourHmac"
invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
ifne 18
17: aload 3
ldc "rc4-hmac"
invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
ifeq 20
18: StackMap locals:
StackMap stack:
aload 0
bipush 23
putfield sun.security.krb5.EncryptionKey.keyType:I
19: goto 39
StackMap locals:
StackMap stack:
20: aload 3
ldc "AES256"
invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
ifne 22
21: aload 3
ldc "aes256-cts-hmac-sha1-96"
invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
ifeq 27
22: StackMap locals:
StackMap stack:
aload 0
bipush 18
putfield sun.security.krb5.EncryptionKey.keyType:I
23: aload 0
getfield sun.security.krb5.EncryptionKey.keyType:I
invokestatic sun.security.krb5.internal.crypto.EType.isSupported:(I)Z
ifne 39
24: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "Algorithm "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
25: ldc " not enabled"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
26: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
27: StackMap locals:
StackMap stack:
aload 3
ldc "aes128-cts-hmac-sha256-128"
invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
ifeq 30
28: aload 0
bipush 19
putfield sun.security.krb5.EncryptionKey.keyType:I
29: goto 39
StackMap locals:
StackMap stack:
30: aload 3
ldc "aes256-cts-hmac-sha384-192"
invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
ifeq 36
31: aload 0
bipush 20
putfield sun.security.krb5.EncryptionKey.keyType:I
32: aload 0
getfield sun.security.krb5.EncryptionKey.keyType:I
invokestatic sun.security.krb5.internal.crypto.EType.isSupported:(I)Z
ifne 39
33: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "Algorithm "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
34: ldc " not enabled"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
35: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
36: StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "Algorithm "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
37: ldc " not supported"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
38: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
39: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
aconst_null
aload 0
getfield sun.security.krb5.EncryptionKey.keyType:I
invokestatic sun.security.krb5.EncryptionKey.stringToKey:([CLjava/lang/String;[BI)[B
putfield sun.security.krb5.EncryptionKey.keyValue:[B
40: aload 0
aconst_null
putfield sun.security.krb5.EncryptionKey.kvno:Ljava/lang/Integer;
41: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 42 0 this Lsun/security/krb5/EncryptionKey;
0 42 1 password [C
0 42 2 salt Ljava/lang/String;
0 42 3 algorithm Ljava/lang/String;
Exceptions:
throws sun.security.krb5.KrbCryptoException
MethodParameters:
Name Flags
password
salt
algorithm
public void <init>(sun.security.krb5.EncryptionKey);
descriptor: (Lsun/security/krb5/EncryptionKey;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
getfield sun.security.krb5.EncryptionKey.keyValue:[B
arraylength
invokestatic sun.security.krb5.Confounder.bytes:(I)[B
putfield sun.security.krb5.EncryptionKey.keyValue:[B
2: iconst_0
istore 2
start local 2 3: goto 6
4: StackMap locals: sun.security.krb5.EncryptionKey sun.security.krb5.EncryptionKey int
StackMap stack:
aload 0
getfield sun.security.krb5.EncryptionKey.keyValue:[B
iload 2
dup2
baload
aload 1
getfield sun.security.krb5.EncryptionKey.keyValue:[B
iload 2
baload
ixor
i2b
bastore
5: iinc 2 1
StackMap locals:
StackMap stack:
6: iload 2
aload 0
getfield sun.security.krb5.EncryptionKey.keyValue:[B
arraylength
if_icmplt 4
end local 2 7: aload 0
aload 1
getfield sun.security.krb5.EncryptionKey.keyType:I
putfield sun.security.krb5.EncryptionKey.keyType:I
8: aload 0
getfield sun.security.krb5.EncryptionKey.keyType:I
iconst_3
if_icmpeq 10
9: aload 0
getfield sun.security.krb5.EncryptionKey.keyType:I
iconst_1
if_icmpne 14
10: StackMap locals:
StackMap stack:
aload 0
getfield sun.security.krb5.EncryptionKey.keyValue:[B
iconst_0
invokestatic javax.crypto.spec.DESKeySpec.isParityAdjusted:([BI)Z
ifne 12
11: aload 0
aload 0
getfield sun.security.krb5.EncryptionKey.keyValue:[B
invokestatic sun.security.krb5.internal.crypto.Des.set_parity:([B)[B
putfield sun.security.krb5.EncryptionKey.keyValue:[B
12: StackMap locals:
StackMap stack:
aload 0
getfield sun.security.krb5.EncryptionKey.keyValue:[B
iconst_0
invokestatic javax.crypto.spec.DESKeySpec.isWeak:([BI)Z
ifeq 14
13: aload 0
getfield sun.security.krb5.EncryptionKey.keyValue:[B
bipush 7
aload 0
getfield sun.security.krb5.EncryptionKey.keyValue:[B
bipush 7
baload
sipush 240
ixor
i2b
bastore
14: StackMap locals:
StackMap stack:
aload 0
getfield sun.security.krb5.EncryptionKey.keyType:I
bipush 16
if_icmpne 30
15: aload 0
getfield sun.security.krb5.EncryptionKey.keyValue:[B
iconst_0
invokestatic javax.crypto.spec.DESedeKeySpec.isParityAdjusted:([BI)Z
ifne 17
16: aload 0
aload 0
getfield sun.security.krb5.EncryptionKey.keyValue:[B
invokestatic sun.security.krb5.internal.crypto.Des3.parityFix:([B)[B
putfield sun.security.krb5.EncryptionKey.keyValue:[B
17: StackMap locals:
StackMap stack:
bipush 8
newarray 8
astore 2
start local 2 18: iconst_0
istore 3
start local 3 19: goto 24
20: StackMap locals: byte[] int
StackMap stack:
aload 0
getfield sun.security.krb5.EncryptionKey.keyValue:[B
iload 3
aload 2
iconst_0
bipush 8
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
21: aload 2
iconst_0
invokestatic javax.crypto.spec.DESKeySpec.isWeak:([BI)Z
ifeq 23
22: aload 0
getfield sun.security.krb5.EncryptionKey.keyValue:[B
iload 3
bipush 7
iadd
aload 0
getfield sun.security.krb5.EncryptionKey.keyValue:[B
iload 3
bipush 7
iadd
baload
sipush 240
ixor
i2b
bastore
23: StackMap locals:
StackMap stack:
iinc 3 8
StackMap locals:
StackMap stack:
24: iload 3
aload 0
getfield sun.security.krb5.EncryptionKey.keyValue:[B
arraylength
if_icmplt 20
end local 3 end local 2 25: goto 30
StackMap locals: sun.security.krb5.EncryptionKey sun.security.krb5.EncryptionKey
StackMap stack: java.security.GeneralSecurityException
26: astore 2
start local 2 27: new sun.security.krb5.KrbCryptoException
dup
aload 2
invokevirtual java.security.GeneralSecurityException.getMessage:()Ljava/lang/String;
invokespecial sun.security.krb5.KrbCryptoException.<init>:(Ljava/lang/String;)V
astore 3
start local 3 28: aload 3
aload 2
invokevirtual sun.security.krb5.KrbCryptoException.initCause:(Ljava/lang/Throwable;)Ljava/lang/Throwable;
pop
29: aload 3
athrow
end local 3 end local 2 30: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 31 0 this Lsun/security/krb5/EncryptionKey;
0 31 1 key Lsun/security/krb5/EncryptionKey;
3 7 2 i I
18 25 2 oneKey [B
19 25 3 i I
27 30 2 e Ljava/security/GeneralSecurityException;
28 30 3 ke Lsun/security/krb5/KrbCryptoException;
Exception table:
from to target type
8 25 26 Class java.security.GeneralSecurityException
Exceptions:
throws sun.security.krb5.KrbCryptoException
MethodParameters:
Name Flags
key
public void <init>(sun.security.util.DerValue);
descriptor: (Lsun/security/util/DerValue;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 1
invokevirtual sun.security.util.DerValue.getTag:()B
bipush 48
if_icmpeq 3
2: new sun.security.krb5.Asn1Exception
dup
sipush 906
invokespecial sun.security.krb5.Asn1Exception.<init>:(I)V
athrow
3: StackMap locals: sun.security.krb5.EncryptionKey sun.security.util.DerValue
StackMap stack:
aload 1
invokevirtual sun.security.util.DerValue.getData:()Lsun/security/util/DerInputStream;
invokevirtual sun.security.util.DerInputStream.getDerValue:()Lsun/security/util/DerValue;
astore 2
start local 2 4: aload 2
invokevirtual sun.security.util.DerValue.getTag:()B
bipush 31
iand
ifne 7
5: aload 0
aload 2
invokevirtual sun.security.util.DerValue.getData:()Lsun/security/util/DerInputStream;
invokevirtual sun.security.util.DerInputStream.getBigInteger:()Ljava/math/BigInteger;
invokevirtual java.math.BigInteger.intValue:()I
putfield sun.security.krb5.EncryptionKey.keyType:I
6: goto 8
7: StackMap locals: sun.security.util.DerValue
StackMap stack:
new sun.security.krb5.Asn1Exception
dup
sipush 906
invokespecial sun.security.krb5.Asn1Exception.<init>:(I)V
athrow
8: StackMap locals:
StackMap stack:
aload 1
invokevirtual sun.security.util.DerValue.getData:()Lsun/security/util/DerInputStream;
invokevirtual sun.security.util.DerInputStream.getDerValue:()Lsun/security/util/DerValue;
astore 2
9: aload 2
invokevirtual sun.security.util.DerValue.getTag:()B
bipush 31
iand
iconst_1
if_icmpne 12
10: aload 0
aload 2
invokevirtual sun.security.util.DerValue.getData:()Lsun/security/util/DerInputStream;
invokevirtual sun.security.util.DerInputStream.getOctetString:()[B
putfield sun.security.krb5.EncryptionKey.keyValue:[B
11: goto 13
12: StackMap locals:
StackMap stack:
new sun.security.krb5.Asn1Exception
dup
sipush 906
invokespecial sun.security.krb5.Asn1Exception.<init>:(I)V
athrow
13: StackMap locals:
StackMap stack:
aload 2
invokevirtual sun.security.util.DerValue.getData:()Lsun/security/util/DerInputStream;
invokevirtual sun.security.util.DerInputStream.available:()I
ifle 15
14: new sun.security.krb5.Asn1Exception
dup
sipush 906
invokespecial sun.security.krb5.Asn1Exception.<init>:(I)V
athrow
15: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Lsun/security/krb5/EncryptionKey;
0 16 1 encoding Lsun/security/util/DerValue;
4 16 2 der Lsun/security/util/DerValue;
Exceptions:
throws sun.security.krb5.Asn1Exception, java.io.IOException
MethodParameters:
Name Flags
encoding
public synchronized byte[] asn1Encode();
descriptor: ()[B
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=4, locals=3, args_size=1
start local 0 0: new sun.security.util.DerOutputStream
dup
invokespecial sun.security.util.DerOutputStream.<init>:()V
astore 1
start local 1 1: new sun.security.util.DerOutputStream
dup
invokespecial sun.security.util.DerOutputStream.<init>:()V
astore 2
start local 2 2: aload 2
aload 0
getfield sun.security.krb5.EncryptionKey.keyType:I
invokevirtual sun.security.util.DerOutputStream.putInteger:(I)V
3: aload 1
bipush -128
iconst_1
4: iconst_0
5: invokestatic sun.security.util.DerValue.createTag:(BZB)B
6: aload 2
7: invokevirtual sun.security.util.DerOutputStream.write:(BLsun/security/util/DerOutputStream;)V
8: new sun.security.util.DerOutputStream
dup
invokespecial sun.security.util.DerOutputStream.<init>:()V
astore 2
9: aload 2
aload 0
getfield sun.security.krb5.EncryptionKey.keyValue:[B
invokevirtual sun.security.util.DerOutputStream.putOctetString:([B)V
10: aload 1
bipush -128
iconst_1
11: iconst_1
12: invokestatic sun.security.util.DerValue.createTag:(BZB)B
13: aload 2
14: invokevirtual sun.security.util.DerOutputStream.write:(BLsun/security/util/DerOutputStream;)V
15: new sun.security.util.DerOutputStream
dup
invokespecial sun.security.util.DerOutputStream.<init>:()V
astore 2
16: aload 2
bipush 48
aload 1
invokevirtual sun.security.util.DerOutputStream.write:(BLsun/security/util/DerOutputStream;)V
17: aload 2
invokevirtual sun.security.util.DerOutputStream.toByteArray:()[B
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lsun/security/krb5/EncryptionKey;
1 18 1 bytes Lsun/security/util/DerOutputStream;
2 18 2 temp Lsun/security/util/DerOutputStream;
Exceptions:
throws sun.security.krb5.Asn1Exception, java.io.IOException
public synchronized void destroy();
descriptor: ()V
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
getfield sun.security.krb5.EncryptionKey.keyValue:[B
ifnull 6
1: iconst_0
istore 1
start local 1 2: goto 5
3: StackMap locals: int
StackMap stack:
aload 0
getfield sun.security.krb5.EncryptionKey.keyValue:[B
iload 1
iconst_0
bastore
4: iinc 1 1
StackMap locals:
StackMap stack:
5: iload 1
aload 0
getfield sun.security.krb5.EncryptionKey.keyValue:[B
arraylength
if_icmplt 3
end local 1 6: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lsun/security/krb5/EncryptionKey;
2 6 1 i I
public static sun.security.krb5.EncryptionKey parse(sun.security.util.DerInputStream, byte, boolean);
descriptor: (Lsun/security/util/DerInputStream;BZ)Lsun/security/krb5/EncryptionKey;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=5, args_size=3
start local 0 start local 1 start local 2 0: iload 2
ifeq 3
aload 0
invokevirtual sun.security.util.DerInputStream.peekByte:()I
i2b
bipush 31
iand
1: iload 1
if_icmpeq 3
2: aconst_null
areturn
3: StackMap locals:
StackMap stack:
aload 0
invokevirtual sun.security.util.DerInputStream.getDerValue:()Lsun/security/util/DerValue;
astore 3
start local 3 4: iload 1
aload 3
invokevirtual sun.security.util.DerValue.getTag:()B
bipush 31
iand
if_icmpeq 6
5: new sun.security.krb5.Asn1Exception
dup
sipush 906
invokespecial sun.security.krb5.Asn1Exception.<init>:(I)V
athrow
6: StackMap locals: sun.security.util.DerValue
StackMap stack:
aload 3
invokevirtual sun.security.util.DerValue.getData:()Lsun/security/util/DerInputStream;
invokevirtual sun.security.util.DerInputStream.getDerValue:()Lsun/security/util/DerValue;
astore 4
start local 4 7: new sun.security.krb5.EncryptionKey
dup
aload 4
invokespecial sun.security.krb5.EncryptionKey.<init>:(Lsun/security/util/DerValue;)V
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 data Lsun/security/util/DerInputStream;
0 8 1 explicitTag B
0 8 2 optional Z
4 8 3 der Lsun/security/util/DerValue;
7 8 4 subDer Lsun/security/util/DerValue;
Exceptions:
throws sun.security.krb5.Asn1Exception, java.io.IOException
MethodParameters:
Name Flags
data
explicitTag
optional
public synchronized void writeKey(sun.security.krb5.internal.ccache.CCacheOutputStream);
descriptor: (Lsun/security/krb5/internal/ccache/CCacheOutputStream;)V
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 1
aload 0
getfield sun.security.krb5.EncryptionKey.keyType:I
invokevirtual sun.security.krb5.internal.ccache.CCacheOutputStream.write16:(I)V
1: aload 1
aload 0
getfield sun.security.krb5.EncryptionKey.keyType:I
invokevirtual sun.security.krb5.internal.ccache.CCacheOutputStream.write16:(I)V
2: aload 1
aload 0
getfield sun.security.krb5.EncryptionKey.keyValue:[B
arraylength
invokevirtual sun.security.krb5.internal.ccache.CCacheOutputStream.write32:(I)V
3: iconst_0
istore 2
start local 2 4: goto 7
5: StackMap locals: int
StackMap stack:
aload 1
aload 0
getfield sun.security.krb5.EncryptionKey.keyValue:[B
iload 2
baload
invokevirtual sun.security.krb5.internal.ccache.CCacheOutputStream.write8:(I)V
6: iinc 2 1
StackMap locals:
StackMap stack:
7: iload 2
aload 0
getfield sun.security.krb5.EncryptionKey.keyValue:[B
arraylength
if_icmplt 5
end local 2 8: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lsun/security/krb5/EncryptionKey;
0 9 1 cos Lsun/security/krb5/internal/ccache/CCacheOutputStream;
4 8 2 i I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
cos
public java.lang.String toString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=1, args_size=1
start local 0 0: new java.lang.String
dup
new java.lang.StringBuilder
dup
ldc "EncryptionKey: keyType="
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield sun.security.krb5.EncryptionKey.keyType:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
1: ldc " kvno="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield sun.security.krb5.EncryptionKey.kvno:Ljava/lang/Integer;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
2: ldc " keyValue (hex dump)="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
3: aload 0
getfield sun.security.krb5.EncryptionKey.keyValue:[B
ifnull 4
aload 0
getfield sun.security.krb5.EncryptionKey.keyValue:[B
arraylength
ifne 5
4: StackMap locals: sun.security.krb5.EncryptionKey
StackMap stack: new 0 new 0 java.lang.StringBuilder
ldc " Empty Key"
goto 8
StackMap locals: sun.security.krb5.EncryptionKey
StackMap stack: new 0 new 0 java.lang.StringBuilder
5: new java.lang.StringBuilder
dup
bipush 10
invokestatic java.lang.String.valueOf:(C)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
6: getstatic sun.security.krb5.internal.Krb5.hexDumper:Lsun/security/util/HexDumpEncoder;
aload 0
getfield sun.security.krb5.EncryptionKey.keyValue:[B
invokevirtual sun.security.util.HexDumpEncoder.encodeBuffer:([B)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
7: bipush 10
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
8: StackMap locals: sun.security.krb5.EncryptionKey
StackMap stack: new 0 new 0 java.lang.StringBuilder java.lang.String
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
9: invokespecial java.lang.String.<init>:(Ljava/lang/String;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lsun/security/krb5/EncryptionKey;
public static sun.security.krb5.EncryptionKey findKey(int, sun.security.krb5.EncryptionKey[]);
descriptor: (I[Lsun/security/krb5/EncryptionKey;)Lsun/security/krb5/EncryptionKey;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: iload 0
aconst_null
aload 1
invokestatic sun.security.krb5.EncryptionKey.findKey:(ILjava/lang/Integer;[Lsun/security/krb5/EncryptionKey;)Lsun/security/krb5/EncryptionKey;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 etype I
0 1 1 keys [Lsun/security/krb5/EncryptionKey;
Exceptions:
throws sun.security.krb5.KrbException
MethodParameters:
Name Flags
etype
keys
private static boolean versionMatches(java.lang.Integer, java.lang.Integer);
descriptor: (Ljava/lang/Integer;Ljava/lang/Integer;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
ifnull 1
aload 0
invokevirtual java.lang.Integer.intValue:()I
ifeq 1
aload 1
ifnull 1
aload 1
invokevirtual java.lang.Integer.intValue:()I
ifne 2
1: StackMap locals:
StackMap stack:
iconst_1
ireturn
2: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual java.lang.Integer.equals:(Ljava/lang/Object;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 v1 Ljava/lang/Integer;
0 3 1 v2 Ljava/lang/Integer;
MethodParameters:
Name Flags
v1
v2
public static sun.security.krb5.EncryptionKey findKey(int, java.lang.Integer, sun.security.krb5.EncryptionKey[]);
descriptor: (ILjava/lang/Integer;[Lsun/security/krb5/EncryptionKey;)Lsun/security/krb5/EncryptionKey;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=9, args_size=3
start local 0 start local 1 start local 2 0: iload 0
invokestatic sun.security.krb5.internal.crypto.EType.isSupported:(I)Z
ifne 4
1: new sun.security.krb5.KrbException
dup
new java.lang.StringBuilder
dup
ldc "Encryption type "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
2: iload 0
invokestatic sun.security.krb5.internal.crypto.EType.toString:(I)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " is not supported/enabled"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
3: invokespecial sun.security.krb5.KrbException.<init>:(Ljava/lang/String;)V
athrow
4: StackMap locals:
StackMap stack:
iconst_0
istore 4
start local 4 5: iconst_0
istore 5
start local 5 6: aconst_null
astore 6
start local 6 7: iconst_0
istore 7
start local 7 8: goto 20
9: StackMap locals: int java.lang.Integer sun.security.krb5.EncryptionKey[] top int int sun.security.krb5.EncryptionKey int
StackMap stack:
aload 2
iload 7
aaload
invokevirtual sun.security.krb5.EncryptionKey.getEType:()I
istore 3
start local 3 10: iload 3
invokestatic sun.security.krb5.internal.crypto.EType.isSupported:(I)Z
ifeq 19
11: aload 2
iload 7
aaload
invokevirtual sun.security.krb5.EncryptionKey.getKeyVersionNumber:()Ljava/lang/Integer;
astore 8
start local 8 12: iload 0
iload 3
if_icmpne 19
13: iconst_1
istore 4
14: aload 1
aload 8
invokestatic sun.security.krb5.EncryptionKey.versionMatches:(Ljava/lang/Integer;Ljava/lang/Integer;)Z
ifeq 16
15: aload 2
iload 7
aaload
areturn
16: StackMap locals: int java.lang.Integer sun.security.krb5.EncryptionKey[] int int int sun.security.krb5.EncryptionKey int java.lang.Integer
StackMap stack:
aload 8
invokevirtual java.lang.Integer.intValue:()I
iload 5
if_icmple 19
17: aload 2
iload 7
aaload
astore 6
18: aload 8
invokevirtual java.lang.Integer.intValue:()I
istore 5
end local 8 19: StackMap locals:
StackMap stack:
iinc 7 1
end local 3 StackMap locals: int java.lang.Integer sun.security.krb5.EncryptionKey[] top int int sun.security.krb5.EncryptionKey int
StackMap stack:
20: iload 7
aload 2
arraylength
if_icmplt 9
end local 7 21: iload 0
iconst_1
if_icmpeq 23
22: iload 0
iconst_3
if_icmpne 37
23: StackMap locals:
StackMap stack:
iconst_0
istore 7
start local 7 24: goto 36
25: StackMap locals: int
StackMap stack:
aload 2
iload 7
aaload
invokevirtual sun.security.krb5.EncryptionKey.getEType:()I
istore 3
start local 3 26: iload 3
iconst_1
if_icmpeq 28
27: iload 3
iconst_3
if_icmpne 35
28: StackMap locals: int java.lang.Integer sun.security.krb5.EncryptionKey[] int int int sun.security.krb5.EncryptionKey int
StackMap stack:
aload 2
iload 7
aaload
invokevirtual sun.security.krb5.EncryptionKey.getKeyVersionNumber:()Ljava/lang/Integer;
astore 8
start local 8 29: iconst_1
istore 4
30: aload 1
aload 8
invokestatic sun.security.krb5.EncryptionKey.versionMatches:(Ljava/lang/Integer;Ljava/lang/Integer;)Z
ifeq 32
31: new sun.security.krb5.EncryptionKey
dup
iload 0
aload 2
iload 7
aaload
invokevirtual sun.security.krb5.EncryptionKey.getBytes:()[B
invokespecial sun.security.krb5.EncryptionKey.<init>:(I[B)V
areturn
32: StackMap locals: java.lang.Integer
StackMap stack:
aload 8
invokevirtual java.lang.Integer.intValue:()I
iload 5
if_icmple 35
33: new sun.security.krb5.EncryptionKey
dup
iload 0
aload 2
iload 7
aaload
invokevirtual sun.security.krb5.EncryptionKey.getBytes:()[B
invokespecial sun.security.krb5.EncryptionKey.<init>:(I[B)V
astore 6
34: aload 8
invokevirtual java.lang.Integer.intValue:()I
istore 5
end local 8 35: StackMap locals:
StackMap stack:
iinc 7 1
end local 3 StackMap locals: int java.lang.Integer sun.security.krb5.EncryptionKey[] top int int sun.security.krb5.EncryptionKey int
StackMap stack:
36: iload 7
aload 2
arraylength
if_icmplt 25
end local 7 37: StackMap locals:
StackMap stack:
iload 4
ifeq 39
38: aload 6
areturn
39: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 6 end local 5 end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 40 0 etype I
0 40 1 kvno Ljava/lang/Integer;
0 40 2 keys [Lsun/security/krb5/EncryptionKey;
10 20 3 ktype I
26 36 3 ktype I
5 40 4 etypeFound Z
6 40 5 kvno_found I
7 40 6 key_found Lsun/security/krb5/EncryptionKey;
8 21 7 i I
12 19 8 kv Ljava/lang/Integer;
24 37 7 i I
29 35 8 kv Ljava/lang/Integer;
Exceptions:
throws sun.security.krb5.KrbException
MethodParameters:
Name Flags
etype
kvno
keys
}
SourceFile: "EncryptionKey.java"
InnerClasses:
public SaltAndParams = sun.security.krb5.internal.PAData$SaltAndParams of sun.security.krb5.internal.PAData