public class SignatureSchemeList extends SignatureAndHashAlgorithmList
SignatureAlgorithms
extension as specified by
RFC
8446.
Note that the TLS 1.3 SignatureSchemeList
replaces the TLS 1.2
the SignatureAndHashAlgorithmList
.
For compatibility reasons iSaSiLk can be used with both, SignatureAndHashAlgorithmList and
SignatureSchemeList.
A TLS client/server may use the SignatureAndHashAlgorithm structure to
announce the signature/hash algorithms it is able to support to the peer.
The client, for instance, may send a SignatureAlgorithms
extension with the ClientHello extension list to tell
the server which SignatureSchemes the client can process to, e.g.,
verify the server certificates or, e.g., sign the CertificateVerify message.
The server, for instance, will specify a list of expected
SignatureSchemes when sending the CertificateRequest message.
SignatureAlgorithms
,
SignatureScheme
,
Serialized FormL_ALL, L_DEFAULT, L_DSA, L_ECDSA, L_EDDSA, L_NONE, L_RSA, L_RSA_PKCS15, L_RSA_PSS, L_RSA_PSS_PSS, L_RSA_PSS_RSAE
Constructor and Description |
---|
SignatureSchemeList()
Creates an empty signature scheme list.
|
SignatureSchemeList(int which)
Creates a new signature scheme list with the contents determined by the selection
value.
|
SignatureSchemeList(SignatureScheme signatureScheme)
Creates a new signature scheme list with the specified signature scheme as its only element.
|
SignatureSchemeList(SignatureScheme[] signatureSchemes)
Creates a new signature scheme list from the contents of the given array.
|
SignatureSchemeList(SignatureSchemeList signatureSchemeList)
Creates a copy of the given signature scheme list.
|
SignatureSchemeList(java.lang.String[] signatureSchemes)
Create a new SignatureSchemeList from an array of signature scheme
names.
|
Modifier and Type | Method and Description |
---|---|
java.lang.Object |
clone()
Returns a clone of this signature scheme list.
|
java.lang.Object |
clone(int version)
Returns a clone of this signature scheme list for the given
protocol version.
|
add, add, clear, contains, ensureAvailable, equals, get, getAll, getDefault, hashCode, insertAt, intersectWith, iterator, remove, remove, size, toArray, toString
public SignatureSchemeList()
public SignatureSchemeList(int which)
L_NONE (1)
creates an empty list
L_DEFAULT (2)
creates a list with the default signature algorithms.
L_ALL (3)
creates a list with all implemented signature algorithms.
Note that
is automatically called on the created list.ensureAvailable()
which
- the selection value deciding which type of list shall be
created (L_NONE, L_DEFAULT, or L_ALL)IllegalParameterException
- if the selection value is not one ofpublic SignatureSchemeList(SignatureScheme signatureScheme)
signatureScheme
- the signature schemepublic SignatureSchemeList(SignatureScheme[] signatureSchemes)
signatureSchemes
- the array of signature schemespublic SignatureSchemeList(SignatureSchemeList signatureSchemeList)
signatureSchemeList
- the signature scheme list to be copiedpublic SignatureSchemeList(java.lang.String[] signatureSchemes) throws java.lang.IllegalArgumentException
signatureSchemes
- the signature scheme namesjava.lang.IllegalArgumentException
- if the list of signature scheme names refers a
signature scheme that is not supportedpublic java.lang.Object clone()
clone
in class SignatureAndHashAlgorithmList
public java.lang.Object clone(int version)
clone
in class SignatureAndHashAlgorithmList
version
- the protocol version