public final class sun.security.pkcs11.P11TlsKeyMaterialGenerator extends javax.crypto.KeyGeneratorSpi
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: sun.security.pkcs11.P11TlsKeyMaterialGenerator
super_class: javax.crypto.KeyGeneratorSpi
{
private static final java.lang.String MSG;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "TlsKeyMaterialGenerator must be initialized using a TlsKeyMaterialParameterSpec"
private final sun.security.pkcs11.Token token;
descriptor: Lsun/security/pkcs11/Token;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.lang.String algorithm;
descriptor: Ljava/lang/String;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private long mechanism;
descriptor: J
flags: (0x0002) ACC_PRIVATE
private sun.security.internal.spec.TlsKeyMaterialParameterSpec spec;
descriptor: Lsun/security/internal/spec/TlsKeyMaterialParameterSpec;
flags: (0x0002) ACC_PRIVATE
private sun.security.pkcs11.P11Key p11Key;
descriptor: Lsun/security/pkcs11/P11Key;
flags: (0x0002) ACC_PRIVATE
private int version;
descriptor: I
flags: (0x0002) ACC_PRIVATE
void <init>(sun.security.pkcs11.Token, java.lang.String, long);
descriptor: (Lsun/security/pkcs11/Token;Ljava/lang/String;J)V
flags: (0x0000)
Code:
stack=3, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokespecial javax.crypto.KeyGeneratorSpi.<init>:()V
1: aload 0
aload 1
putfield sun.security.pkcs11.P11TlsKeyMaterialGenerator.token:Lsun/security/pkcs11/Token;
2: aload 0
aload 2
putfield sun.security.pkcs11.P11TlsKeyMaterialGenerator.algorithm:Ljava/lang/String;
3: aload 0
lload 3
putfield sun.security.pkcs11.P11TlsKeyMaterialGenerator.mechanism:J
4: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lsun/security/pkcs11/P11TlsKeyMaterialGenerator;
0 5 1 token Lsun/security/pkcs11/Token;
0 5 2 algorithm Ljava/lang/String;
0 5 3 mechanism J
Exceptions:
throws sun.security.pkcs11.wrapper.PKCS11Exception
MethodParameters:
Name Flags
token
algorithm
mechanism
protected void engineInit(java.security.SecureRandom);
descriptor: (Ljava/security/SecureRandom;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: new java.security.InvalidParameterException
dup
ldc "TlsKeyMaterialGenerator must be initialized using a TlsKeyMaterialParameterSpec"
invokespecial java.security.InvalidParameterException.<init>:(Ljava/lang/String;)V
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/security/pkcs11/P11TlsKeyMaterialGenerator;
0 1 1 random Ljava/security/SecureRandom;
MethodParameters:
Name Flags
random
protected void engineInit(java.security.spec.AlgorithmParameterSpec, java.security.SecureRandom);
descriptor: (Ljava/security/spec/AlgorithmParameterSpec;Ljava/security/SecureRandom;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 1
instanceof sun.security.internal.spec.TlsKeyMaterialParameterSpec
ifne 2
1: new java.security.InvalidAlgorithmParameterException
dup
ldc "TlsKeyMaterialGenerator must be initialized using a TlsKeyMaterialParameterSpec"
invokespecial java.security.InvalidAlgorithmParameterException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
aload 1
checkcast sun.security.internal.spec.TlsKeyMaterialParameterSpec
putfield sun.security.pkcs11.P11TlsKeyMaterialGenerator.spec:Lsun/security/internal/spec/TlsKeyMaterialParameterSpec;
3: aload 0
4: aload 0
getfield sun.security.pkcs11.P11TlsKeyMaterialGenerator.token:Lsun/security/pkcs11/Token;
aload 0
getfield sun.security.pkcs11.P11TlsKeyMaterialGenerator.spec:Lsun/security/internal/spec/TlsKeyMaterialParameterSpec;
invokevirtual sun.security.internal.spec.TlsKeyMaterialParameterSpec.getMasterSecret:()Ljavax/crypto/SecretKey;
ldc "TlsMasterSecret"
5: invokestatic sun.security.pkcs11.P11SecretKeyFactory.convertKey:(Lsun/security/pkcs11/Token;Ljava/security/Key;Ljava/lang/String;)Lsun/security/pkcs11/P11Key;
putfield sun.security.pkcs11.P11TlsKeyMaterialGenerator.p11Key:Lsun/security/pkcs11/P11Key;
6: goto 9
StackMap locals:
StackMap stack: java.security.InvalidKeyException
7: astore 3
start local 3 8: new java.security.InvalidAlgorithmParameterException
dup
ldc "init() failed"
aload 3
invokespecial java.security.InvalidAlgorithmParameterException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 3 9: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield sun.security.pkcs11.P11TlsKeyMaterialGenerator.spec:Lsun/security/internal/spec/TlsKeyMaterialParameterSpec;
invokevirtual sun.security.internal.spec.TlsKeyMaterialParameterSpec.getMajorVersion:()I
bipush 8
ishl
aload 0
getfield sun.security.pkcs11.P11TlsKeyMaterialGenerator.spec:Lsun/security/internal/spec/TlsKeyMaterialParameterSpec;
invokevirtual sun.security.internal.spec.TlsKeyMaterialParameterSpec.getMinorVersion:()I
ior
putfield sun.security.pkcs11.P11TlsKeyMaterialGenerator.version:I
10: aload 0
getfield sun.security.pkcs11.P11TlsKeyMaterialGenerator.version:I
sipush 768
if_icmpge 12
aload 0
getfield sun.security.pkcs11.P11TlsKeyMaterialGenerator.version:I
sipush 771
if_icmple 12
11: new java.security.InvalidAlgorithmParameterException
dup
ldc "Only SSL 3.0, TLS 1.0, TLS 1.1, and TLS 1.2 are supported"
invokespecial java.security.InvalidAlgorithmParameterException.<init>:(Ljava/lang/String;)V
athrow
12: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lsun/security/pkcs11/P11TlsKeyMaterialGenerator;
0 13 1 params Ljava/security/spec/AlgorithmParameterSpec;
0 13 2 random Ljava/security/SecureRandom;
8 9 3 e Ljava/security/InvalidKeyException;
Exception table:
from to target type
3 6 7 Class java.security.InvalidKeyException
Exceptions:
throws java.security.InvalidAlgorithmParameterException
MethodParameters:
Name Flags
params
random
protected void engineInit(int, java.security.SecureRandom);
descriptor: (ILjava/security/SecureRandom;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: new java.security.InvalidParameterException
dup
ldc "TlsKeyMaterialGenerator must be initialized using a TlsKeyMaterialParameterSpec"
invokespecial java.security.InvalidParameterException.<init>:(Ljava/lang/String;)V
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/security/pkcs11/P11TlsKeyMaterialGenerator;
0 1 1 keysize I
0 1 2 random Ljava/security/SecureRandom;
MethodParameters:
Name Flags
keysize
random
protected javax.crypto.SecretKey engineGenerateKey();
descriptor: ()Ljavax/crypto/SecretKey;
flags: (0x0004) ACC_PROTECTED
Code:
stack=9, locals=25, args_size=1
start local 0 0: aload 0
getfield sun.security.pkcs11.P11TlsKeyMaterialGenerator.spec:Lsun/security/internal/spec/TlsKeyMaterialParameterSpec;
ifnonnull 4
1: new java.lang.IllegalStateException
dup
2: ldc "TlsKeyMaterialGenerator must be initialized"
3: invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
4: StackMap locals:
StackMap stack:
aload 0
getfield sun.security.pkcs11.P11TlsKeyMaterialGenerator.version:I
sipush 768
if_icmpne 7
5: aload 0
ldc 882
putfield sun.security.pkcs11.P11TlsKeyMaterialGenerator.mechanism:J
6: goto 9
StackMap locals:
StackMap stack:
7: aload 0
getfield sun.security.pkcs11.P11TlsKeyMaterialGenerator.version:I
sipush 769
if_icmpeq 8
aload 0
getfield sun.security.pkcs11.P11TlsKeyMaterialGenerator.version:I
sipush 770
if_icmpne 9
8: StackMap locals:
StackMap stack:
aload 0
ldc 886
putfield sun.security.pkcs11.P11TlsKeyMaterialGenerator.mechanism:J
9: StackMap locals:
StackMap stack:
aload 0
getfield sun.security.pkcs11.P11TlsKeyMaterialGenerator.spec:Lsun/security/internal/spec/TlsKeyMaterialParameterSpec;
invokevirtual sun.security.internal.spec.TlsKeyMaterialParameterSpec.getMacKeyLength:()I
iconst_3
ishl
istore 1
start local 1 10: aload 0
getfield sun.security.pkcs11.P11TlsKeyMaterialGenerator.spec:Lsun/security/internal/spec/TlsKeyMaterialParameterSpec;
invokevirtual sun.security.internal.spec.TlsKeyMaterialParameterSpec.getIvLength:()I
iconst_3
ishl
istore 2
start local 2 11: aload 0
getfield sun.security.pkcs11.P11TlsKeyMaterialGenerator.spec:Lsun/security/internal/spec/TlsKeyMaterialParameterSpec;
invokevirtual sun.security.internal.spec.TlsKeyMaterialParameterSpec.getExpandedCipherKeyLength:()I
iconst_3
ishl
istore 3
start local 3 12: aload 0
getfield sun.security.pkcs11.P11TlsKeyMaterialGenerator.spec:Lsun/security/internal/spec/TlsKeyMaterialParameterSpec;
invokevirtual sun.security.internal.spec.TlsKeyMaterialParameterSpec.getCipherKeyLength:()I
iconst_3
ishl
istore 4
start local 4 13: iload 3
ifeq 16
14: iconst_1
istore 5
start local 5 15: goto 18
end local 5 16: StackMap locals: sun.security.pkcs11.P11TlsKeyMaterialGenerator int int int int
StackMap stack:
iconst_0
istore 5
start local 5 17: iload 4
istore 3
18: StackMap locals: int
StackMap stack:
new sun.security.pkcs11.wrapper.CK_SSL3_RANDOM_DATA
dup
19: aload 0
getfield sun.security.pkcs11.P11TlsKeyMaterialGenerator.spec:Lsun/security/internal/spec/TlsKeyMaterialParameterSpec;
invokevirtual sun.security.internal.spec.TlsKeyMaterialParameterSpec.getClientRandom:()[B
aload 0
getfield sun.security.pkcs11.P11TlsKeyMaterialGenerator.spec:Lsun/security/internal/spec/TlsKeyMaterialParameterSpec;
invokevirtual sun.security.internal.spec.TlsKeyMaterialParameterSpec.getServerRandom:()[B
20: invokespecial sun.security.pkcs11.wrapper.CK_SSL3_RANDOM_DATA.<init>:([B[B)V
astore 6
start local 6 21: aconst_null
astore 7
start local 7 22: aconst_null
astore 8
start local 8 23: aload 0
getfield sun.security.pkcs11.P11TlsKeyMaterialGenerator.version:I
sipush 771
if_icmpge 29
24: new sun.security.pkcs11.wrapper.CK_SSL3_KEY_MAT_PARAMS
dup
25: iload 1
iload 4
iload 2
iload 5
aload 6
26: invokespecial sun.security.pkcs11.wrapper.CK_SSL3_KEY_MAT_PARAMS.<init>:(IIIZLsun/security/pkcs11/wrapper/CK_SSL3_RANDOM_DATA;)V
astore 7
27: new sun.security.pkcs11.wrapper.CK_MECHANISM
dup
aload 0
getfield sun.security.pkcs11.P11TlsKeyMaterialGenerator.mechanism:J
aload 7
checkcast sun.security.pkcs11.wrapper.CK_SSL3_KEY_MAT_PARAMS
invokespecial sun.security.pkcs11.wrapper.CK_MECHANISM.<init>:(JLsun/security/pkcs11/wrapper/CK_SSL3_KEY_MAT_PARAMS;)V
astore 8
28: goto 35
StackMap locals: sun.security.pkcs11.wrapper.CK_SSL3_RANDOM_DATA java.lang.Object sun.security.pkcs11.wrapper.CK_MECHANISM
StackMap stack:
29: aload 0
getfield sun.security.pkcs11.P11TlsKeyMaterialGenerator.version:I
sipush 771
if_icmpne 35
30: new sun.security.pkcs11.wrapper.CK_TLS12_KEY_MAT_PARAMS
dup
31: iload 1
iload 4
iload 2
iload 5
aload 6
32: aload 0
getfield sun.security.pkcs11.P11TlsKeyMaterialGenerator.spec:Lsun/security/internal/spec/TlsKeyMaterialParameterSpec;
invokevirtual sun.security.internal.spec.TlsKeyMaterialParameterSpec.getPRFHashAlg:()Ljava/lang/String;
invokestatic sun.security.pkcs11.wrapper.Functions.getHashMechId:(Ljava/lang/String;)J
33: invokespecial sun.security.pkcs11.wrapper.CK_TLS12_KEY_MAT_PARAMS.<init>:(IIIZLsun/security/pkcs11/wrapper/CK_SSL3_RANDOM_DATA;J)V
astore 7
34: new sun.security.pkcs11.wrapper.CK_MECHANISM
dup
aload 0
getfield sun.security.pkcs11.P11TlsKeyMaterialGenerator.mechanism:J
aload 7
checkcast sun.security.pkcs11.wrapper.CK_TLS12_KEY_MAT_PARAMS
invokespecial sun.security.pkcs11.wrapper.CK_MECHANISM.<init>:(JLsun/security/pkcs11/wrapper/CK_TLS12_KEY_MAT_PARAMS;)V
astore 8
35: StackMap locals:
StackMap stack:
aload 0
getfield sun.security.pkcs11.P11TlsKeyMaterialGenerator.spec:Lsun/security/internal/spec/TlsKeyMaterialParameterSpec;
invokevirtual sun.security.internal.spec.TlsKeyMaterialParameterSpec.getCipherAlgorithm:()Ljava/lang/String;
astore 9
start local 9 36: aload 9
invokestatic sun.security.pkcs11.P11SecretKeyFactory.getKeyType:(Ljava/lang/String;)J
lstore 10
start local 10 37: lload 10
lconst_0
lcmp
ifge 43
38: iload 4
ifeq 42
39: new java.security.ProviderException
dup
40: new java.lang.StringBuilder
dup
ldc "Unknown algorithm: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield sun.security.pkcs11.P11TlsKeyMaterialGenerator.spec:Lsun/security/internal/spec/TlsKeyMaterialParameterSpec;
invokevirtual sun.security.internal.spec.TlsKeyMaterialParameterSpec.getCipherAlgorithm:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
41: invokespecial java.security.ProviderException.<init>:(Ljava/lang/String;)V
athrow
42: StackMap locals: java.lang.String long
StackMap stack:
ldc 16
lstore 10
43: StackMap locals:
StackMap stack:
aconst_null
astore 12
start local 12 44: aload 0
getfield sun.security.pkcs11.P11TlsKeyMaterialGenerator.token:Lsun/security/pkcs11/Token;
invokevirtual sun.security.pkcs11.Token.getObjSession:()Lsun/security/pkcs11/Session;
astore 12
45: iload 4
ifeq 52
46: iconst_3
anewarray sun.security.pkcs11.wrapper.CK_ATTRIBUTE
dup
iconst_0
47: new sun.security.pkcs11.wrapper.CK_ATTRIBUTE
dup
lconst_0
ldc 4
invokespecial sun.security.pkcs11.wrapper.CK_ATTRIBUTE.<init>:(JJ)V
aastore
dup
iconst_1
48: new sun.security.pkcs11.wrapper.CK_ATTRIBUTE
dup
ldc 256
lload 10
invokespecial sun.security.pkcs11.wrapper.CK_ATTRIBUTE.<init>:(JJ)V
aastore
dup
iconst_2
49: new sun.security.pkcs11.wrapper.CK_ATTRIBUTE
dup
ldc 353
iload 3
iconst_3
ishr
i2l
invokespecial sun.security.pkcs11.wrapper.CK_ATTRIBUTE.<init>:(JJ)V
aastore
50: astore 13
start local 13 51: goto 53
end local 13 52: StackMap locals: sun.security.pkcs11.Session
StackMap stack:
iconst_0
anewarray sun.security.pkcs11.wrapper.CK_ATTRIBUTE
astore 13
start local 13 53: StackMap locals: sun.security.pkcs11.wrapper.CK_ATTRIBUTE[]
StackMap stack:
aload 0
getfield sun.security.pkcs11.P11TlsKeyMaterialGenerator.token:Lsun/security/pkcs11/Token;
54: ldc "generate"
ldc 4
lload 10
aload 13
55: invokevirtual sun.security.pkcs11.Token.getAttributes:(Ljava/lang/String;JJ[Lsun/security/pkcs11/wrapper/CK_ATTRIBUTE;)[Lsun/security/pkcs11/wrapper/CK_ATTRIBUTE;
astore 13
56: aload 0
getfield sun.security.pkcs11.P11TlsKeyMaterialGenerator.p11Key:Lsun/security/pkcs11/P11Key;
invokevirtual sun.security.pkcs11.P11Key.getKeyID:()J
lstore 14
start local 14 57: aload 0
getfield sun.security.pkcs11.P11TlsKeyMaterialGenerator.token:Lsun/security/pkcs11/Token;
getfield sun.security.pkcs11.Token.p11:Lsun/security/pkcs11/wrapper/PKCS11;
aload 12
invokevirtual sun.security.pkcs11.Session.id:()J
58: aload 8
lload 14
aload 13
59: invokevirtual sun.security.pkcs11.wrapper.PKCS11.C_DeriveKey:(JLsun/security/pkcs11/wrapper/CK_MECHANISM;J[Lsun/security/pkcs11/wrapper/CK_ATTRIBUTE;)J
pop2
60: goto 64
StackMap locals: sun.security.pkcs11.P11TlsKeyMaterialGenerator int int int int int sun.security.pkcs11.wrapper.CK_SSL3_RANDOM_DATA java.lang.Object sun.security.pkcs11.wrapper.CK_MECHANISM java.lang.String long sun.security.pkcs11.Session sun.security.pkcs11.wrapper.CK_ATTRIBUTE[] long
StackMap stack: java.lang.Throwable
61: astore 16
62: aload 0
getfield sun.security.pkcs11.P11TlsKeyMaterialGenerator.p11Key:Lsun/security/pkcs11/P11Key;
invokevirtual sun.security.pkcs11.P11Key.releaseKeyID:()V
63: aload 16
athrow
64: StackMap locals:
StackMap stack:
aload 0
getfield sun.security.pkcs11.P11TlsKeyMaterialGenerator.p11Key:Lsun/security/pkcs11/P11Key;
invokevirtual sun.security.pkcs11.P11Key.releaseKeyID:()V
65: aconst_null
astore 16
start local 16 66: aload 7
instanceof sun.security.pkcs11.wrapper.CK_SSL3_KEY_MAT_PARAMS
ifeq 69
67: aload 7
checkcast sun.security.pkcs11.wrapper.CK_SSL3_KEY_MAT_PARAMS
getfield sun.security.pkcs11.wrapper.CK_SSL3_KEY_MAT_PARAMS.pReturnedKeyMaterial:Lsun/security/pkcs11/wrapper/CK_SSL3_KEY_MAT_OUT;
astore 16
68: goto 71
StackMap locals: sun.security.pkcs11.wrapper.CK_SSL3_KEY_MAT_OUT
StackMap stack:
69: aload 7
instanceof sun.security.pkcs11.wrapper.CK_TLS12_KEY_MAT_PARAMS
ifeq 71
70: aload 7
checkcast sun.security.pkcs11.wrapper.CK_TLS12_KEY_MAT_PARAMS
getfield sun.security.pkcs11.wrapper.CK_TLS12_KEY_MAT_PARAMS.pReturnedKeyMaterial:Lsun/security/pkcs11/wrapper/CK_SSL3_KEY_MAT_OUT;
astore 16
71: StackMap locals:
StackMap stack:
iload 1
ifeq 77
72: aload 12
aload 16
getfield sun.security.pkcs11.wrapper.CK_SSL3_KEY_MAT_OUT.hClientMacSecret:J
ldc "MAC"
iload 1
aload 13
73: invokestatic sun.security.pkcs11.P11Key.secretKey:(Lsun/security/pkcs11/Session;JLjava/lang/String;I[Lsun/security/pkcs11/wrapper/CK_ATTRIBUTE;)Ljavax/crypto/SecretKey;
astore 17
start local 17 74: aload 12
aload 16
getfield sun.security.pkcs11.wrapper.CK_SSL3_KEY_MAT_OUT.hServerMacSecret:J
ldc "MAC"
iload 1
aload 13
75: invokestatic sun.security.pkcs11.P11Key.secretKey:(Lsun/security/pkcs11/Session;JLjava/lang/String;I[Lsun/security/pkcs11/wrapper/CK_ATTRIBUTE;)Ljavax/crypto/SecretKey;
astore 18
start local 18 76: goto 79
end local 18 end local 17 77: StackMap locals:
StackMap stack:
aconst_null
astore 17
start local 17 78: aconst_null
astore 18
start local 18 79: StackMap locals: javax.crypto.SecretKey javax.crypto.SecretKey
StackMap stack:
iload 4
ifeq 87
80: aload 12
aload 16
getfield sun.security.pkcs11.wrapper.CK_SSL3_KEY_MAT_OUT.hClientKey:J
81: aload 9
iload 3
aload 13
82: invokestatic sun.security.pkcs11.P11Key.secretKey:(Lsun/security/pkcs11/Session;JLjava/lang/String;I[Lsun/security/pkcs11/wrapper/CK_ATTRIBUTE;)Ljavax/crypto/SecretKey;
astore 19
start local 19 83: aload 12
aload 16
getfield sun.security.pkcs11.wrapper.CK_SSL3_KEY_MAT_OUT.hServerKey:J
84: aload 9
iload 3
aload 13
85: invokestatic sun.security.pkcs11.P11Key.secretKey:(Lsun/security/pkcs11/Session;JLjava/lang/String;I[Lsun/security/pkcs11/wrapper/CK_ATTRIBUTE;)Ljavax/crypto/SecretKey;
astore 20
start local 20 86: goto 89
end local 20 end local 19 87: StackMap locals:
StackMap stack:
aconst_null
astore 19
start local 19 88: aconst_null
astore 20
start local 20 89: StackMap locals: javax.crypto.SecretKey javax.crypto.SecretKey
StackMap stack:
aload 16
getfield sun.security.pkcs11.wrapper.CK_SSL3_KEY_MAT_OUT.pIVClient:[B
ifnonnull 91
90: aconst_null
goto 92
StackMap locals:
StackMap stack:
91: new javax.crypto.spec.IvParameterSpec
dup
aload 16
getfield sun.security.pkcs11.wrapper.CK_SSL3_KEY_MAT_OUT.pIVClient:[B
invokespecial javax.crypto.spec.IvParameterSpec.<init>:([B)V
92: StackMap locals:
StackMap stack: javax.crypto.spec.IvParameterSpec
astore 21
start local 21 93: aload 16
getfield sun.security.pkcs11.wrapper.CK_SSL3_KEY_MAT_OUT.pIVServer:[B
ifnonnull 95
94: aconst_null
goto 96
StackMap locals: javax.crypto.spec.IvParameterSpec
StackMap stack:
95: new javax.crypto.spec.IvParameterSpec
dup
aload 16
getfield sun.security.pkcs11.wrapper.CK_SSL3_KEY_MAT_OUT.pIVServer:[B
invokespecial javax.crypto.spec.IvParameterSpec.<init>:([B)V
96: StackMap locals:
StackMap stack: javax.crypto.spec.IvParameterSpec
astore 22
start local 22 97: new sun.security.internal.spec.TlsKeyMaterialSpec
dup
aload 17
aload 18
98: aload 19
aload 21
aload 20
aload 22
99: invokespecial sun.security.internal.spec.TlsKeyMaterialSpec.<init>:(Ljavax/crypto/SecretKey;Ljavax/crypto/SecretKey;Ljavax/crypto/SecretKey;Ljavax/crypto/spec/IvParameterSpec;Ljavax/crypto/SecretKey;Ljavax/crypto/spec/IvParameterSpec;)V
astore 24
100: aload 0
getfield sun.security.pkcs11.P11TlsKeyMaterialGenerator.token:Lsun/security/pkcs11/Token;
aload 12
invokevirtual sun.security.pkcs11.Token.releaseSession:(Lsun/security/pkcs11/Session;)Lsun/security/pkcs11/Session;
pop
101: aload 24
areturn
end local 22 end local 21 end local 20 end local 19 end local 18 end local 17 end local 16 end local 14 end local 13 102: StackMap locals: sun.security.pkcs11.P11TlsKeyMaterialGenerator int int int int int sun.security.pkcs11.wrapper.CK_SSL3_RANDOM_DATA java.lang.Object sun.security.pkcs11.wrapper.CK_MECHANISM java.lang.String long sun.security.pkcs11.Session
StackMap stack: java.lang.Exception
astore 13
start local 13 103: new java.security.ProviderException
dup
ldc "Could not generate key"
aload 13
invokespecial java.security.ProviderException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 13 104: StackMap locals:
StackMap stack: java.lang.Throwable
astore 23
105: aload 0
getfield sun.security.pkcs11.P11TlsKeyMaterialGenerator.token:Lsun/security/pkcs11/Token;
aload 12
invokevirtual sun.security.pkcs11.Token.releaseSession:(Lsun/security/pkcs11/Session;)Lsun/security/pkcs11/Session;
pop
106: aload 23
athrow
end local 12 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 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 107 0 this Lsun/security/pkcs11/P11TlsKeyMaterialGenerator;
10 107 1 macBits I
11 107 2 ivBits I
12 107 3 expandedKeyBits I
13 107 4 keyBits I
15 16 5 isExportable Z
17 107 5 isExportable Z
21 107 6 random Lsun/security/pkcs11/wrapper/CK_SSL3_RANDOM_DATA;
22 107 7 params Ljava/lang/Object;
23 107 8 ckMechanism Lsun/security/pkcs11/wrapper/CK_MECHANISM;
36 107 9 cipherAlgorithm Ljava/lang/String;
37 107 10 keyType J
44 107 12 session Lsun/security/pkcs11/Session;
51 52 13 attributes [Lsun/security/pkcs11/wrapper/CK_ATTRIBUTE;
53 102 13 attributes [Lsun/security/pkcs11/wrapper/CK_ATTRIBUTE;
57 102 14 p11KeyID J
66 102 16 out Lsun/security/pkcs11/wrapper/CK_SSL3_KEY_MAT_OUT;
74 77 17 clientMacKey Ljavax/crypto/SecretKey;
78 102 17 clientMacKey Ljavax/crypto/SecretKey;
76 77 18 serverMacKey Ljavax/crypto/SecretKey;
79 102 18 serverMacKey Ljavax/crypto/SecretKey;
83 87 19 clientCipherKey Ljavax/crypto/SecretKey;
88 102 19 clientCipherKey Ljavax/crypto/SecretKey;
86 87 20 serverCipherKey Ljavax/crypto/SecretKey;
89 102 20 serverCipherKey Ljavax/crypto/SecretKey;
93 102 21 clientIv Ljavax/crypto/spec/IvParameterSpec;
97 102 22 serverIv Ljavax/crypto/spec/IvParameterSpec;
103 104 13 e Ljava/lang/Exception;
Exception table:
from to target type
57 61 61 any
44 100 102 Class java.lang.Exception
44 100 104 any
102 104 104 any
}
SourceFile: "P11TlsKeyMaterialGenerator.java"