@ThreadSafe public class RSASSAVerifier extends Object implements JWSVerifier
JWS objects. This class is thread-safe.
Supports the following JSON Web Algorithms (JWAs):
JWSAlgorithm.RS256
JWSAlgorithm.RS384
JWSAlgorithm.RS512
JWSAlgorithm.PS256
JWSAlgorithm.PS384
JWSAlgorithm.PS512
Accepts all registered JWS header parameters. Modify the header filter properties to restrict the acceptable JWS algorithms and
header parameters, or to allow custom JWS header parameters.
| Modifier and Type | Field and Description |
|---|---|
static Set<JWSAlgorithm> |
SUPPORTED_ALGORITHMS
The supported JWS algorithms.
|
| Constructor and Description |
|---|
RSASSAVerifier(RSAPublicKey publicKey)
Creates a new RSA Signature-Scheme-with-Appendix (RSASSA) verifier.
|
| Modifier and Type | Method and Description |
|---|---|
JWSHeaderFilter |
getJWSHeaderFilter()
Gets the JWS header filter associated with the verifier.
|
RSAPublicKey |
getPublicKey()
Gets the public RSA key.
|
protected static Signature |
getRSASignerAndVerifier(JWSAlgorithm alg)
Gets a signer and verifier for the specified RSASSA-based JSON Web
Algorithm (JWA).
|
Set<JWSAlgorithm> |
supportedAlgorithms()
Returns the names of the supported JWS algorithms.
|
boolean |
verify(ReadOnlyJWSHeader header,
byte[] signedContent,
Base64URL signature)
Verifies the specified
signature of a
JWS object. |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitsupportedAlgorithmspublic static final Set<JWSAlgorithm> SUPPORTED_ALGORITHMS
public RSASSAVerifier(RSAPublicKey publicKey)
publicKey - The public RSA key. Must not be null.public RSAPublicKey getPublicKey()
public JWSHeaderFilter getJWSHeaderFilter()
JWSVerifiersupported JWS
algorithms and header parameters that the verifier is configured to
accept.
Attempting to verify a JWS object signature with
an algorithm or header parameter that is not accepted must result in
a JOSEException.
getJWSHeaderFilter in interface JWSVerifierpublic boolean verify(ReadOnlyJWSHeader header, byte[] signedContent, Base64URL signature) throws JOSEException
JWSVerifiersignature of a
JWS object.verify in interface JWSVerifierheader - The JSON Web Signature (JWS) header. Must
specify an accepted JWS algorithm, must contain
only accepted header parameters, and must not be
null.signedContent - The signing input. Must not be null.signature - The signature part of the JWS object. Must not
be null.true if the signature was successfully verified,
else false.JOSEException - If the JWS algorithm is not accepted, if a
header parameter is not accepted, or if
signature verification failed for some other
reason.protected static Signature getRSASignerAndVerifier(JWSAlgorithm alg) throws JOSEException
alg - The JSON Web Algorithm (JWA). Must be supported and not
null.JOSEException - If the algorithm is not supported.public Set<JWSAlgorithm> supportedAlgorithms()
JWSAlgorithmProvideralg JWS header parameter.supportedAlgorithms in interface JWSAlgorithmProviderCopyright © 2013 NimbusDS. All Rights Reserved.