org.bouncycastle.jsse.provider.ProvSSLConnection Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of bctls-jdk18on Show documentation
Show all versions of bctls-jdk18on Show documentation
The Bouncy Castle Java APIs for TLS and DTLS, including a provider for the JSSE.
package org.bouncycastle.jsse.provider;
import org.bouncycastle.jsse.BCSSLConnection;
import org.bouncycastle.tls.ChannelBinding;
import org.bouncycastle.tls.TlsContext;
class ProvSSLConnection
implements BCSSLConnection
{
protected final TlsContext tlsContext;
protected final ProvSSLSession session;
ProvSSLConnection(TlsContext tlsContext, ProvSSLSession session)
{
this.tlsContext = tlsContext;
this.session = session;
}
public byte[] exportKeyingMaterial(String asciiLabel, byte[] context_value, int length)
{
return tlsContext.exportKeyingMaterial(asciiLabel, context_value, length);
}
public String getApplicationProtocol()
{
return JsseUtils.getApplicationProtocol(tlsContext.getSecurityParametersConnection());
}
public byte[] getChannelBinding(String channelBinding)
{
if (channelBinding.equals("tls-exporter"))
{
return tlsContext.exportChannelBinding(ChannelBinding.tls_exporter);
}
if (channelBinding.equals("tls-server-end-point"))
{
return tlsContext.exportChannelBinding(ChannelBinding.tls_server_end_point);
}
if (channelBinding.equals("tls-unique"))
{
return tlsContext.exportChannelBinding(ChannelBinding.tls_unique);
}
throw new UnsupportedOperationException();
}
public ProvSSLSession getSession()
{
return session;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy