public final class SslRsaSignature extends RsaSignature
This is a modified version of the RSA-PKCS1-v1_5 signature algorithm. The
only difference between RSA-PKCS1-v1_5 and the SSL/RSA is the encoding method
employed. For SSL/RSA a 36-byte structure of two hashes (one SHA and one MD5)
is used as the message hash during encoding and a DigestInfo is
not created.
SSL Encoding
M
to produce a hash value H, where
H = SHA1(M) || MD5(M).EM is created as follows, where
EM must be the same number of bytes as the RSA key modulus: EM = 0x00 || 0x01 || 0xff || ... || 0xff || T
This implementation calculates the hash internally, thus it is the message
itself (being signed or verified) that is passed in through the
update() API.
An instance of this algorithm can be obtained using the Java Cryptography
Architecture (JCA), by requesting a 'SSL/RSA' digital signature from the
Entrust cryptographic
service provider. This can be done using the following call:
Signature.getInstance("SSL/RSA", "Entrust");RsaPkcs1v1_5Signature,
The SSL Protocol
Version 3.0| Constructor and Description |
|---|
SslRsaSignature()
The constructor; creates a new instance of the SSL/RSA digital
signature algorithm instance.
|
getDigitalSignatureImplassertParametersValid, engineGetParameter, engineGetParameters, engineInitSign, engineInitSign, engineInitVerify, engineSetParameter, engineSetParameter, engineSign, engineSign, engineUpdate, engineUpdate, engineVerify, engineVerify, generateDefaultParameters, getDigest, getPrng, toAlgorithmParameterspublic SslRsaSignature()
Applications should not use this constructor, instead the signature
algorithm should be requested from the appropriate JCA/JCE cryptographic
service provider as follows:
Signature.getInstance("SSL/RSA", "Entrust")