final class sun.security.ssl.NewSessionTicket
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: sun.security.ssl.NewSessionTicket
super_class: java.lang.Object
{
static final int MAX_TICKET_LIFETIME;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 604800
static final sun.security.ssl.SSLConsumer handshakeConsumer;
descriptor: Lsun/security/ssl/SSLConsumer;
flags: (0x0018) ACC_STATIC, ACC_FINAL
static final sun.security.ssl.SSLConsumer handshake12Consumer;
descriptor: Lsun/security/ssl/SSLConsumer;
flags: (0x0018) ACC_STATIC, ACC_FINAL
static final sun.security.ssl.SSLProducer t13PosthandshakeProducer;
descriptor: Lsun/security/ssl/SSLProducer;
flags: (0x0018) ACC_STATIC, ACC_FINAL
static final sun.security.ssl.HandshakeProducer handshake12Producer;
descriptor: Lsun/security/ssl/HandshakeProducer;
flags: (0x0018) ACC_STATIC, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: new sun.security.ssl.NewSessionTicket$T13NewSessionTicketConsumer
dup
invokespecial sun.security.ssl.NewSessionTicket$T13NewSessionTicketConsumer.<init>:()V
1: putstatic sun.security.ssl.NewSessionTicket.handshakeConsumer:Lsun/security/ssl/SSLConsumer;
2: new sun.security.ssl.NewSessionTicket$T12NewSessionTicketConsumer
dup
invokespecial sun.security.ssl.NewSessionTicket$T12NewSessionTicketConsumer.<init>:()V
3: putstatic sun.security.ssl.NewSessionTicket.handshake12Consumer:Lsun/security/ssl/SSLConsumer;
4: new sun.security.ssl.NewSessionTicket$T13NewSessionTicketProducer
dup
invokespecial sun.security.ssl.NewSessionTicket$T13NewSessionTicketProducer.<init>:()V
5: putstatic sun.security.ssl.NewSessionTicket.t13PosthandshakeProducer:Lsun/security/ssl/SSLProducer;
6: new sun.security.ssl.NewSessionTicket$T12NewSessionTicketProducer
dup
invokespecial sun.security.ssl.NewSessionTicket$T12NewSessionTicketProducer.<init>:()V
7: putstatic sun.security.ssl.NewSessionTicket.handshake12Producer:Lsun/security/ssl/HandshakeProducer;
8: return
LocalVariableTable:
Start End Slot Name Signature
void <init>();
descriptor: ()V
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/security/ssl/NewSessionTicket;
private static javax.crypto.SecretKey derivePreSharedKey(sun.security.ssl.CipherSuite$HashAlg, javax.crypto.SecretKey, byte[]);
descriptor: (Lsun/security/ssl/CipherSuite$HashAlg;Ljavax/crypto/SecretKey;[B)Ljavax/crypto/SecretKey;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=5, args_size=3
start local 0 start local 1 start local 2 0: new sun.security.ssl.HKDF
dup
aload 0
getfield sun.security.ssl.CipherSuite$HashAlg.name:Ljava/lang/String;
invokespecial sun.security.ssl.HKDF.<init>:(Ljava/lang/String;)V
astore 3
start local 3 1: ldc "tls13 resumption"
invokevirtual java.lang.String.getBytes:()[B
aload 2
aload 0
getfield sun.security.ssl.CipherSuite$HashAlg.hashLength:I
2: invokestatic sun.security.ssl.SSLSecretDerivation.createHkdfInfo:([B[BI)[B
astore 4
start local 4 3: aload 3
aload 1
aload 4
4: aload 0
getfield sun.security.ssl.CipherSuite$HashAlg.hashLength:I
ldc "TlsPreSharedKey"
5: invokevirtual sun.security.ssl.HKDF.expand:(Ljavax/crypto/SecretKey;[BILjava/lang/String;)Ljavax/crypto/SecretKey;
6: areturn
end local 4 end local 3 7: StackMap locals:
StackMap stack: java.security.GeneralSecurityException
astore 3
start local 3 8: new javax.net.ssl.SSLHandshakeException
dup
9: ldc "Could not derive PSK"
10: invokespecial javax.net.ssl.SSLHandshakeException.<init>:(Ljava/lang/String;)V
11: aload 3
invokevirtual javax.net.ssl.SSLHandshakeException.initCause:(Ljava/lang/Throwable;)Ljava/lang/Throwable;
12: checkcast javax.net.ssl.SSLHandshakeException
athrow
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 hashAlg Lsun/security/ssl/CipherSuite$HashAlg;
0 13 1 resumptionMasterSecret Ljavax/crypto/SecretKey;
0 13 2 nonce [B
1 7 3 hkdf Lsun/security/ssl/HKDF;
3 7 4 hkdfInfo [B
8 13 3 gse Ljava/security/GeneralSecurityException;
Exception table:
from to target type
0 6 7 Class java.security.GeneralSecurityException
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
hashAlg
resumptionMasterSecret
nonce
}
SourceFile: "NewSessionTicket.java"
NestMembers:
sun.security.ssl.NewSessionTicket$NewSessionTicketMessage sun.security.ssl.NewSessionTicket$T12NewSessionTicketConsumer sun.security.ssl.NewSessionTicket$T12NewSessionTicketMessage sun.security.ssl.NewSessionTicket$T12NewSessionTicketProducer sun.security.ssl.NewSessionTicket$T13NewSessionTicketConsumer sun.security.ssl.NewSessionTicket$T13NewSessionTicketMessage sun.security.ssl.NewSessionTicket$T13NewSessionTicketProducer
InnerClasses:
final HashAlg = sun.security.ssl.CipherSuite$HashAlg of sun.security.ssl.CipherSuite
abstract NewSessionTicketMessage = sun.security.ssl.NewSessionTicket$NewSessionTicketMessage of sun.security.ssl.NewSessionTicket
private final T12NewSessionTicketConsumer = sun.security.ssl.NewSessionTicket$T12NewSessionTicketConsumer of sun.security.ssl.NewSessionTicket
final T12NewSessionTicketMessage = sun.security.ssl.NewSessionTicket$T12NewSessionTicketMessage of sun.security.ssl.NewSessionTicket
private final T12NewSessionTicketProducer = sun.security.ssl.NewSessionTicket$T12NewSessionTicketProducer of sun.security.ssl.NewSessionTicket
private final T13NewSessionTicketConsumer = sun.security.ssl.NewSessionTicket$T13NewSessionTicketConsumer of sun.security.ssl.NewSessionTicket
final T13NewSessionTicketMessage = sun.security.ssl.NewSessionTicket$T13NewSessionTicketMessage of sun.security.ssl.NewSessionTicket
private final T13NewSessionTicketProducer = sun.security.ssl.NewSessionTicket$T13NewSessionTicketProducer of sun.security.ssl.NewSessionTicket