public class TlsExtensionsUtils
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
static java.lang.Integer |
EXT_application_layer_protocol_negotiation |
static java.lang.Integer |
EXT_client_certificate_type |
static java.lang.Integer |
EXT_client_certificate_url |
static java.lang.Integer |
EXT_ec_point_formats |
static java.lang.Integer |
EXT_encrypt_then_mac |
static java.lang.Integer |
EXT_extended_master_secret |
static java.lang.Integer |
EXT_heartbeat |
static java.lang.Integer |
EXT_max_fragment_length |
static java.lang.Integer |
EXT_padding |
static java.lang.Integer |
EXT_record_size_limit |
static java.lang.Integer |
EXT_server_certificate_type |
static java.lang.Integer |
EXT_server_name |
static java.lang.Integer |
EXT_signature_algorithms |
static java.lang.Integer |
EXT_signature_algorithms_cert |
static java.lang.Integer |
EXT_status_request |
static java.lang.Integer |
EXT_supported_groups |
static java.lang.Integer |
EXT_supported_versions |
static java.lang.Integer |
EXT_truncated_hmac |
static java.lang.Integer |
EXT_trusted_ca_keys |
Constructor and Description |
---|
TlsExtensionsUtils() |
Modifier and Type | Method and Description |
---|---|
static void |
addALPNExtensionClient(java.util.Hashtable extensions,
java.util.Vector protocolNameList) |
static void |
addALPNExtensionServer(java.util.Hashtable extensions,
ProtocolName protocolName) |
static void |
addClientCertificateTypeExtensionClient(java.util.Hashtable extensions,
short[] certificateTypes) |
static void |
addClientCertificateTypeExtensionServer(java.util.Hashtable extensions,
short certificateType) |
static void |
addClientCertificateURLExtension(java.util.Hashtable extensions) |
static void |
addEncryptThenMACExtension(java.util.Hashtable extensions) |
static void |
addExtendedMasterSecretExtension(java.util.Hashtable extensions) |
static void |
addHeartbeatExtension(java.util.Hashtable extensions,
HeartbeatExtension heartbeatExtension) |
static void |
addMaxFragmentLengthExtension(java.util.Hashtable extensions,
short maxFragmentLength) |
static void |
addPaddingExtension(java.util.Hashtable extensions,
int dataLength) |
static void |
addRecordSizeLimitExtension(java.util.Hashtable extensions,
int recordSizeLimit) |
static void |
addServerCertificateTypeExtensionClient(java.util.Hashtable extensions,
short[] certificateTypes) |
static void |
addServerCertificateTypeExtensionServer(java.util.Hashtable extensions,
short certificateType) |
static void |
addServerNameExtension(java.util.Hashtable extensions,
ServerNameList serverNameList)
Deprecated.
Use
addServerNameExtensionClient(Hashtable, Vector) instead. |
static void |
addServerNameExtensionClient(java.util.Hashtable extensions,
java.util.Vector serverNameList) |
static void |
addServerNameExtensionServer(java.util.Hashtable extensions) |
static void |
addSignatureAlgorithmsCertExtension(java.util.Hashtable extensions,
java.util.Vector supportedSignatureAlgorithms) |
static void |
addSignatureAlgorithmsExtension(java.util.Hashtable extensions,
java.util.Vector supportedSignatureAlgorithms) |
static void |
addStatusRequestExtension(java.util.Hashtable extensions,
CertificateStatusRequest statusRequest) |
static void |
addSupportedGroupsExtension(java.util.Hashtable extensions,
java.util.Vector namedGroups) |
static void |
addSupportedPointFormatsExtension(java.util.Hashtable extensions,
short[] ecPointFormats) |
static void |
addSupportedVersionsExtensionClient(java.util.Hashtable extensions,
ProtocolVersion[] versions) |
static void |
addSupportedVersionsExtensionServer(java.util.Hashtable extensions,
ProtocolVersion selectedVersion) |
static void |
addTruncatedHMacExtension(java.util.Hashtable extensions) |
static void |
addTrustedCAKeysExtensionClient(java.util.Hashtable extensions,
java.util.Vector trustedAuthoritiesList) |
static void |
addTrustedCAKeysExtensionServer(java.util.Hashtable extensions) |
static byte[] |
createALPNExtensionClient(java.util.Vector protocolNameList) |
static byte[] |
createALPNExtensionServer(ProtocolName protocolName) |
static byte[] |
createCertificateTypeExtensionClient(short[] certificateTypes) |
static byte[] |
createCertificateTypeExtensionServer(short certificateType) |
static byte[] |
createClientCertificateURLExtension() |
static byte[] |
createEmptyExtensionData() |
static byte[] |
createEncryptThenMACExtension() |
static byte[] |
createExtendedMasterSecretExtension() |
static byte[] |
createHeartbeatExtension(HeartbeatExtension heartbeatExtension) |
static byte[] |
createMaxFragmentLengthExtension(short maxFragmentLength) |
static byte[] |
createPaddingExtension(int dataLength) |
static byte[] |
createRecordSizeLimitExtension(int recordSizeLimit) |
static byte[] |
createServerNameExtension(ServerNameList serverNameList)
Deprecated.
Use
createServerNameExtensionClient(Vector) instead. |
static byte[] |
createServerNameExtensionClient(java.util.Vector serverNameList) |
static byte[] |
createServerNameExtensionServer() |
static byte[] |
createSignatureAlgorithmsCertExtension(java.util.Vector supportedSignatureAlgorithms) |
static byte[] |
createSignatureAlgorithmsExtension(java.util.Vector supportedSignatureAlgorithms) |
static byte[] |
createStatusRequestExtension(CertificateStatusRequest statusRequest) |
static byte[] |
createSupportedGroupsExtension(java.util.Vector namedGroups) |
static byte[] |
createSupportedPointFormatsExtension(short[] ecPointFormats) |
static byte[] |
createSupportedVersionsExtensionClient(ProtocolVersion[] versions) |
static byte[] |
createSupportedVersionsExtensionServer(ProtocolVersion selectedVersion) |
static byte[] |
createTruncatedHMacExtension() |
static byte[] |
createTrustedCAKeysExtensionClient(java.util.Vector trustedAuthoritiesList) |
static byte[] |
createTrustedCAKeysExtensionServer() |
static java.util.Hashtable |
ensureExtensionsInitialised(java.util.Hashtable extensions) |
static java.util.Vector |
getALPNExtensionClient(java.util.Hashtable extensions) |
static ProtocolName |
getALPNExtensionServer(java.util.Hashtable extensions) |
static short[] |
getClientCertificateTypeExtensionClient(java.util.Hashtable extensions) |
static short |
getClientCertificateTypeExtensionServer(java.util.Hashtable extensions) |
static HeartbeatExtension |
getHeartbeatExtension(java.util.Hashtable extensions) |
static short |
getMaxFragmentLengthExtension(java.util.Hashtable extensions) |
static int |
getPaddingExtension(java.util.Hashtable extensions) |
static int |
getRecordSizeLimitExtension(java.util.Hashtable extensions) |
static short[] |
getServerCertificateTypeExtensionClient(java.util.Hashtable extensions) |
static short |
getServerCertificateTypeExtensionServer(java.util.Hashtable extensions) |
static ServerNameList |
getServerNameExtension(java.util.Hashtable extensions)
Deprecated.
Use
getServerNameExtensionClient(Hashtable) instead. |
static java.util.Vector |
getServerNameExtensionClient(java.util.Hashtable extensions) |
static java.util.Vector |
getSignatureAlgorithmsCertExtension(java.util.Hashtable extensions) |
static java.util.Vector |
getSignatureAlgorithmsExtension(java.util.Hashtable extensions) |
static CertificateStatusRequest |
getStatusRequestExtension(java.util.Hashtable extensions) |
static int[] |
getSupportedGroupsExtension(java.util.Hashtable extensions) |
static short[] |
getSupportedPointFormatsExtension(java.util.Hashtable extensions) |
static ProtocolVersion[] |
getSupportedVersionsExtensionClient(java.util.Hashtable extensions) |
static ProtocolVersion |
getSupportedVersionsExtensionServer(java.util.Hashtable extensions) |
static java.util.Vector |
getTrustedCAKeysExtensionClient(java.util.Hashtable extensions) |
static boolean |
hasClientCertificateURLExtension(java.util.Hashtable extensions) |
static boolean |
hasEncryptThenMACExtension(java.util.Hashtable extensions) |
static boolean |
hasExtendedMasterSecretExtension(java.util.Hashtable extensions) |
static boolean |
hasServerNameExtensionServer(java.util.Hashtable extensions) |
static boolean |
hasTruncatedHMacExtension(java.util.Hashtable extensions) |
static boolean |
hasTrustedCAKeysExtensionServer(java.util.Hashtable extensions) |
static java.util.Vector |
readALPNExtensionClient(byte[] extensionData) |
static ProtocolName |
readALPNExtensionServer(byte[] extensionData) |
static short[] |
readCertificateTypeExtensionClient(byte[] extensionData) |
static short |
readCertificateTypeExtensionServer(byte[] extensionData) |
static boolean |
readClientCertificateURLExtension(byte[] extensionData) |
static boolean |
readEncryptThenMACExtension(byte[] extensionData) |
static boolean |
readExtendedMasterSecretExtension(byte[] extensionData) |
static HeartbeatExtension |
readHeartbeatExtension(byte[] extensionData) |
static short |
readMaxFragmentLengthExtension(byte[] extensionData) |
static int |
readPaddingExtension(byte[] extensionData) |
static int |
readRecordSizeLimitExtension(byte[] extensionData) |
static ServerNameList |
readServerNameExtension(byte[] extensionData)
Deprecated.
Use
readServerNameExtensionClient(byte[]) instead. |
static java.util.Vector |
readServerNameExtensionClient(byte[] extensionData) |
static boolean |
readServerNameExtensionServer(byte[] extensionData) |
static java.util.Vector |
readSignatureAlgorithmsCertExtension(byte[] extensionData) |
static java.util.Vector |
readSignatureAlgorithmsExtension(byte[] extensionData) |
static CertificateStatusRequest |
readStatusRequestExtension(byte[] extensionData) |
static int[] |
readSupportedGroupsExtension(byte[] extensionData) |
static short[] |
readSupportedPointFormatsExtension(byte[] extensionData) |
static ProtocolVersion[] |
readSupportedVersionsExtensionClient(byte[] extensionData) |
static ProtocolVersion |
readSupportedVersionsExtensionServer(byte[] extensionData) |
static boolean |
readTruncatedHMacExtension(byte[] extensionData) |
static java.util.Vector |
readTrustedCAKeysExtensionClient(byte[] extensionData) |
static boolean |
readTrustedCAKeysExtensionServer(byte[] extensionData) |
public static final java.lang.Integer EXT_application_layer_protocol_negotiation
public static final java.lang.Integer EXT_client_certificate_type
public static final java.lang.Integer EXT_client_certificate_url
public static final java.lang.Integer EXT_ec_point_formats
public static final java.lang.Integer EXT_encrypt_then_mac
public static final java.lang.Integer EXT_extended_master_secret
public static final java.lang.Integer EXT_heartbeat
public static final java.lang.Integer EXT_max_fragment_length
public static final java.lang.Integer EXT_padding
public static final java.lang.Integer EXT_record_size_limit
public static final java.lang.Integer EXT_server_certificate_type
public static final java.lang.Integer EXT_server_name
public static final java.lang.Integer EXT_signature_algorithms
public static final java.lang.Integer EXT_signature_algorithms_cert
public static final java.lang.Integer EXT_status_request
public static final java.lang.Integer EXT_supported_groups
public static final java.lang.Integer EXT_supported_versions
public static final java.lang.Integer EXT_truncated_hmac
public static final java.lang.Integer EXT_trusted_ca_keys
public static java.util.Hashtable ensureExtensionsInitialised(java.util.Hashtable extensions)
public static void addALPNExtensionClient(java.util.Hashtable extensions, java.util.Vector protocolNameList) throws java.io.IOException
protocolNameList
- a Vector
of ProtocolName
java.io.IOException
public static void addALPNExtensionServer(java.util.Hashtable extensions, ProtocolName protocolName) throws java.io.IOException
java.io.IOException
public static void addClientCertificateTypeExtensionClient(java.util.Hashtable extensions, short[] certificateTypes) throws java.io.IOException
java.io.IOException
public static void addClientCertificateTypeExtensionServer(java.util.Hashtable extensions, short certificateType) throws java.io.IOException
java.io.IOException
public static void addClientCertificateURLExtension(java.util.Hashtable extensions)
public static void addEncryptThenMACExtension(java.util.Hashtable extensions)
public static void addExtendedMasterSecretExtension(java.util.Hashtable extensions)
public static void addHeartbeatExtension(java.util.Hashtable extensions, HeartbeatExtension heartbeatExtension) throws java.io.IOException
java.io.IOException
public static void addMaxFragmentLengthExtension(java.util.Hashtable extensions, short maxFragmentLength) throws java.io.IOException
java.io.IOException
public static void addPaddingExtension(java.util.Hashtable extensions, int dataLength) throws java.io.IOException
java.io.IOException
public static void addRecordSizeLimitExtension(java.util.Hashtable extensions, int recordSizeLimit) throws java.io.IOException
java.io.IOException
public static void addServerCertificateTypeExtensionClient(java.util.Hashtable extensions, short[] certificateTypes) throws java.io.IOException
java.io.IOException
public static void addServerCertificateTypeExtensionServer(java.util.Hashtable extensions, short certificateType) throws java.io.IOException
java.io.IOException
public static void addServerNameExtension(java.util.Hashtable extensions, ServerNameList serverNameList) throws java.io.IOException
addServerNameExtensionClient(Hashtable, Vector)
instead.java.io.IOException
public static void addServerNameExtensionClient(java.util.Hashtable extensions, java.util.Vector serverNameList) throws java.io.IOException
java.io.IOException
public static void addServerNameExtensionServer(java.util.Hashtable extensions) throws java.io.IOException
java.io.IOException
public static void addSignatureAlgorithmsExtension(java.util.Hashtable extensions, java.util.Vector supportedSignatureAlgorithms) throws java.io.IOException
java.io.IOException
public static void addSignatureAlgorithmsCertExtension(java.util.Hashtable extensions, java.util.Vector supportedSignatureAlgorithms) throws java.io.IOException
java.io.IOException
public static void addStatusRequestExtension(java.util.Hashtable extensions, CertificateStatusRequest statusRequest) throws java.io.IOException
java.io.IOException
public static void addSupportedGroupsExtension(java.util.Hashtable extensions, java.util.Vector namedGroups) throws java.io.IOException
java.io.IOException
public static void addSupportedPointFormatsExtension(java.util.Hashtable extensions, short[] ecPointFormats) throws java.io.IOException
java.io.IOException
public static void addSupportedVersionsExtensionClient(java.util.Hashtable extensions, ProtocolVersion[] versions) throws java.io.IOException
java.io.IOException
public static void addSupportedVersionsExtensionServer(java.util.Hashtable extensions, ProtocolVersion selectedVersion) throws java.io.IOException
java.io.IOException
public static void addTruncatedHMacExtension(java.util.Hashtable extensions)
public static void addTrustedCAKeysExtensionClient(java.util.Hashtable extensions, java.util.Vector trustedAuthoritiesList) throws java.io.IOException
java.io.IOException
public static void addTrustedCAKeysExtensionServer(java.util.Hashtable extensions)
public static java.util.Vector getALPNExtensionClient(java.util.Hashtable extensions) throws java.io.IOException
Vector
of ProtocolName
java.io.IOException
public static ProtocolName getALPNExtensionServer(java.util.Hashtable extensions) throws java.io.IOException
java.io.IOException
public static short[] getClientCertificateTypeExtensionClient(java.util.Hashtable extensions) throws java.io.IOException
java.io.IOException
public static short getClientCertificateTypeExtensionServer(java.util.Hashtable extensions) throws java.io.IOException
java.io.IOException
public static HeartbeatExtension getHeartbeatExtension(java.util.Hashtable extensions) throws java.io.IOException
java.io.IOException
public static short getMaxFragmentLengthExtension(java.util.Hashtable extensions) throws java.io.IOException
java.io.IOException
public static int getPaddingExtension(java.util.Hashtable extensions) throws java.io.IOException
java.io.IOException
public static int getRecordSizeLimitExtension(java.util.Hashtable extensions) throws java.io.IOException
java.io.IOException
public static short[] getServerCertificateTypeExtensionClient(java.util.Hashtable extensions) throws java.io.IOException
java.io.IOException
public static short getServerCertificateTypeExtensionServer(java.util.Hashtable extensions) throws java.io.IOException
java.io.IOException
public static ServerNameList getServerNameExtension(java.util.Hashtable extensions) throws java.io.IOException
getServerNameExtensionClient(Hashtable)
instead.java.io.IOException
public static java.util.Vector getServerNameExtensionClient(java.util.Hashtable extensions) throws java.io.IOException
java.io.IOException
public static java.util.Vector getSignatureAlgorithmsExtension(java.util.Hashtable extensions) throws java.io.IOException
java.io.IOException
public static java.util.Vector getSignatureAlgorithmsCertExtension(java.util.Hashtable extensions) throws java.io.IOException
java.io.IOException
public static CertificateStatusRequest getStatusRequestExtension(java.util.Hashtable extensions) throws java.io.IOException
java.io.IOException
public static int[] getSupportedGroupsExtension(java.util.Hashtable extensions) throws java.io.IOException
java.io.IOException
public static short[] getSupportedPointFormatsExtension(java.util.Hashtable extensions) throws java.io.IOException
java.io.IOException
public static ProtocolVersion[] getSupportedVersionsExtensionClient(java.util.Hashtable extensions) throws java.io.IOException
java.io.IOException
public static ProtocolVersion getSupportedVersionsExtensionServer(java.util.Hashtable extensions) throws java.io.IOException
java.io.IOException
public static java.util.Vector getTrustedCAKeysExtensionClient(java.util.Hashtable extensions) throws java.io.IOException
java.io.IOException
public static boolean hasClientCertificateURLExtension(java.util.Hashtable extensions) throws java.io.IOException
java.io.IOException
public static boolean hasEncryptThenMACExtension(java.util.Hashtable extensions) throws java.io.IOException
java.io.IOException
public static boolean hasExtendedMasterSecretExtension(java.util.Hashtable extensions) throws java.io.IOException
java.io.IOException
public static boolean hasServerNameExtensionServer(java.util.Hashtable extensions) throws java.io.IOException
java.io.IOException
public static boolean hasTruncatedHMacExtension(java.util.Hashtable extensions) throws java.io.IOException
java.io.IOException
public static boolean hasTrustedCAKeysExtensionServer(java.util.Hashtable extensions) throws java.io.IOException
java.io.IOException
public static byte[] createALPNExtensionClient(java.util.Vector protocolNameList) throws java.io.IOException
protocolNameList
- a Vector
of ProtocolName
java.io.IOException
public static byte[] createALPNExtensionServer(ProtocolName protocolName) throws java.io.IOException
java.io.IOException
public static byte[] createCertificateTypeExtensionClient(short[] certificateTypes) throws java.io.IOException
java.io.IOException
public static byte[] createCertificateTypeExtensionServer(short certificateType) throws java.io.IOException
java.io.IOException
public static byte[] createClientCertificateURLExtension()
public static byte[] createEmptyExtensionData()
public static byte[] createEncryptThenMACExtension()
public static byte[] createExtendedMasterSecretExtension()
public static byte[] createHeartbeatExtension(HeartbeatExtension heartbeatExtension) throws java.io.IOException
java.io.IOException
public static byte[] createMaxFragmentLengthExtension(short maxFragmentLength) throws java.io.IOException
java.io.IOException
public static byte[] createPaddingExtension(int dataLength) throws java.io.IOException
java.io.IOException
public static byte[] createRecordSizeLimitExtension(int recordSizeLimit) throws java.io.IOException
java.io.IOException
public static byte[] createServerNameExtension(ServerNameList serverNameList) throws java.io.IOException
createServerNameExtensionClient(Vector)
instead.java.io.IOException
public static byte[] createServerNameExtensionClient(java.util.Vector serverNameList) throws java.io.IOException
java.io.IOException
public static byte[] createServerNameExtensionServer()
public static byte[] createSignatureAlgorithmsExtension(java.util.Vector supportedSignatureAlgorithms) throws java.io.IOException
java.io.IOException
public static byte[] createSignatureAlgorithmsCertExtension(java.util.Vector supportedSignatureAlgorithms) throws java.io.IOException
java.io.IOException
public static byte[] createStatusRequestExtension(CertificateStatusRequest statusRequest) throws java.io.IOException
java.io.IOException
public static byte[] createSupportedGroupsExtension(java.util.Vector namedGroups) throws java.io.IOException
java.io.IOException
public static byte[] createSupportedPointFormatsExtension(short[] ecPointFormats) throws java.io.IOException
java.io.IOException
public static byte[] createSupportedVersionsExtensionClient(ProtocolVersion[] versions) throws java.io.IOException
java.io.IOException
public static byte[] createSupportedVersionsExtensionServer(ProtocolVersion selectedVersion) throws java.io.IOException
java.io.IOException
public static byte[] createTruncatedHMacExtension()
public static byte[] createTrustedCAKeysExtensionClient(java.util.Vector trustedAuthoritiesList) throws java.io.IOException
java.io.IOException
public static byte[] createTrustedCAKeysExtensionServer()
public static java.util.Vector readALPNExtensionClient(byte[] extensionData) throws java.io.IOException
Vector
of ProtocolName
java.io.IOException
public static ProtocolName readALPNExtensionServer(byte[] extensionData) throws java.io.IOException
java.io.IOException
public static short[] readCertificateTypeExtensionClient(byte[] extensionData) throws java.io.IOException
java.io.IOException
public static short readCertificateTypeExtensionServer(byte[] extensionData) throws java.io.IOException
java.io.IOException
public static boolean readClientCertificateURLExtension(byte[] extensionData) throws java.io.IOException
java.io.IOException
public static boolean readEncryptThenMACExtension(byte[] extensionData) throws java.io.IOException
java.io.IOException
public static boolean readExtendedMasterSecretExtension(byte[] extensionData) throws java.io.IOException
java.io.IOException
public static HeartbeatExtension readHeartbeatExtension(byte[] extensionData) throws java.io.IOException
java.io.IOException
public static short readMaxFragmentLengthExtension(byte[] extensionData) throws java.io.IOException
java.io.IOException
public static int readPaddingExtension(byte[] extensionData) throws java.io.IOException
java.io.IOException
public static int readRecordSizeLimitExtension(byte[] extensionData) throws java.io.IOException
java.io.IOException
public static ServerNameList readServerNameExtension(byte[] extensionData) throws java.io.IOException
readServerNameExtensionClient(byte[])
instead.java.io.IOException
public static java.util.Vector readServerNameExtensionClient(byte[] extensionData) throws java.io.IOException
java.io.IOException
public static boolean readServerNameExtensionServer(byte[] extensionData) throws java.io.IOException
java.io.IOException
public static java.util.Vector readSignatureAlgorithmsExtension(byte[] extensionData) throws java.io.IOException
java.io.IOException
public static java.util.Vector readSignatureAlgorithmsCertExtension(byte[] extensionData) throws java.io.IOException
java.io.IOException
public static CertificateStatusRequest readStatusRequestExtension(byte[] extensionData) throws java.io.IOException
java.io.IOException
public static int[] readSupportedGroupsExtension(byte[] extensionData) throws java.io.IOException
java.io.IOException
public static short[] readSupportedPointFormatsExtension(byte[] extensionData) throws java.io.IOException
java.io.IOException
public static ProtocolVersion[] readSupportedVersionsExtensionClient(byte[] extensionData) throws java.io.IOException
java.io.IOException
public static ProtocolVersion readSupportedVersionsExtensionServer(byte[] extensionData) throws java.io.IOException
java.io.IOException
public static boolean readTruncatedHMacExtension(byte[] extensionData) throws java.io.IOException
java.io.IOException
public static java.util.Vector readTrustedCAKeysExtensionClient(byte[] extensionData) throws java.io.IOException
java.io.IOException
public static boolean readTrustedCAKeysExtensionServer(byte[] extensionData) throws java.io.IOException
java.io.IOException