
org.spongycastle.crypto.tls.TlsContext Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of core Show documentation
Show all versions of core Show documentation
Spongy Castle is a package-rename (org.bouncycastle.* to org.spongycastle.*) of Bouncy Castle
intended for the Android platform. Android unfortunately ships with a stripped-down version of
Bouncy Castle, which prevents easy upgrades - Spongy Castle overcomes this and provides a full,
up-to-date version of the Bouncy Castle cryptographic libs.
The newest version!
package org.spongycastle.crypto.tls;
import java.security.SecureRandom;
import org.spongycastle.crypto.prng.RandomGenerator;
public interface TlsContext
{
RandomGenerator getNonceRandomGenerator();
SecureRandom getSecureRandom();
SecurityParameters getSecurityParameters();
boolean isServer();
ProtocolVersion getClientVersion();
ProtocolVersion getServerVersion();
/**
* Used to get the resumable session, if any, used by this connection. Only available after the
* handshake has successfully completed.
*
* @return A {@link TlsSession} representing the resumable session used by this connection, or
* null if no resumable session available.
* @see TlsPeer#notifyHandshakeComplete()
*/
TlsSession getResumableSession();
Object getUserObject();
void setUserObject(Object userObject);
/**
* Export keying material according to RFC 5705: "Keying Material Exporters for TLS".
*
* @param asciiLabel indicates which application will use the exported keys.
* @param context_value allows the application using the exporter to mix its own data with the TLS PRF for
* the exporter output.
* @param length the number of bytes to generate
* @return a pseudorandom bit string of 'length' bytes generated from the master_secret.
*/
byte[] exportKeyingMaterial(String asciiLabel, byte[] context_value, int length);
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy