public class TLSUniqueChannelBinding extends ChannelBinding
tls-unique
channel binding
according to RFC 5929.
RFC 5929 specifies the tls-unique
channel binding as the first Finished message verify data in the
most recent handshake.
An application that is interested to capture the tls-unique
channel binding
value has to announce its interest by adding
a ChannelBindings
containing the TLSUniqueChannelBinding
to the SSLContext object, e.g.:
ChannelBindings channelBindings = new ChannelBindings(); channelBindings.addChannelBinding(new TLSServerEndPointChannelBinding()); context.setChannelBindings(channelBindings);After having completed the handshake the
tls-unique
channel binding value
can be obtained
from the SSLSocket:
ChannelBindings chBndgs = socket.getChannelBindings(); if (chBndgs != null) { TLSUniqueChannelBinding tlsUnique = (TLSUniqueChannelBinding)chBndgs.getChannelBinding(TLSUniqueChannelBinding.TYPE); if (tlsUnique != null) { System.out.println("tls-unique: " + Util.toString(tlsUnique.getData())); } TLSServerEndPointChannelBinding tlsServerEndPoint = (TLSServerEndPointChannelBinding)chBndgs.getChannelBinding(TLSServerEndPointChannelBinding.TYPE); if (tlsServerEndPoint != null) { System.out.println("tls-server-end-point: " + Util.toString(tlsServerEndPoint.getData())); } }
ChannelBinding
,
ChannelBindings
,
ChannelBindingType
Modifier and Type | Field and Description |
---|---|
static ChannelBindingType |
TYPE |
Constructor and Description |
---|
TLSUniqueChannelBinding()
Default constructor.
|
TLSUniqueChannelBinding(byte[] data)
Creates a TLSUniqueChannelBinding object with the given Finished verify data.
|
clone, equals, getChannelBindingType, getData, getName, getType, hashCode, toString, toString
public static final ChannelBindingType TYPE