|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Object
|
+--java.security.AlgorithmParametersSpi
|
+--iaik.pkcs.pkcs1.PKCS1AlgorithmParameters
|
+--iaik.pkcs.pkcs1.RSAOaepParameters
Algorithm parameters for the PKCS#1 RSASES-OAEP encryption scheme.
PKCS#1v2.1 defines the following parameters for the OAEP signature scheme:
RSASES-OAEP-params :: = SEQUENCE {
hashAlgorithm [0] HashAlgorithm DEFAULT sha1,
maskGenerationAlgorithm [1] MaskGenAlgorithm DEFAULT mgf1SHA1,
pSourceAlgorithm [2] PSourceAlgorithm DEFAULT pSpecifiedEmpty,
}
HashAlgorithm ::= AlgorithmIdentifer { {OAEP-PSSDigestAlgorithms} }
MaskGenAlgorithm ::= AlgorithmIdentifier { {PKCS1MGFAlgorithms} }
PSourceAlgorithm ::= AlgorithmIdentifier { {PKCS1PSourceAlgorithms} }
By default OAEP uses SHA-1 as hash function, MGF1 (with SHA-1 as hash function
parameter) as mask generation algorithm, and id-pSpecified as PSourceAlgorithm
(with an empty OCTET STRING as parameter).
RSAOaepParamters can be generated provider independently by calling one of the
AlgorithmParameters.getInstance methods. Subsequently the new
AlgorithmParamters object must be initialized with a proper RSA-OAEP parameter
specification or a DER encoded byte array, e.g.:
RSAOaepParameterSpec oaepParamSpec = ...;
AlgorithmParameters params = AlgorithmParameters.getInstance("RSAES-OAEP", "IAIK");
params.init(oaepParamSpec);
repectively:
byte[] encodedOaepParams = ...;
AlgorithmParameters params = AlgorithmParameters.getInstance("RSAES-OAEP", "IAIK");
params.init(encodedOaepParams);
For obtaining OAEP parameters in transparent representation from an opaque
RSAOaepParamters object, the getParameterSpec method can be used;
for obtaining the parameters as DER encoded ASN.1 object, use method
getEncoded:
RSAOaepParameterSpec oaepParamSpec = (RSAOaepParameterSpec)params.getParameterSpec(RSAOaepParameterSpec.class);repectively
byte[] encodedOaepParams = params.getEncoded();
RSAOaepParameterSpec,
AlgorithmParameters| Constructor Summary | |
RSAOaepParameters()
The default constructor. |
|
| Method Summary | |
void |
decode(ASN1Object asn1Params)
Initializes this RSAOaepParameters object from the given ASN1Object. |
protected byte[] |
engineGetEncoded()
Returns the parameters as DER byte array. |
protected byte[] |
engineGetEncoded(String format)
Returns the parameters as a DER byte array. |
protected AlgorithmParameterSpec |
engineGetParameterSpec(Class paramSpec)
Returns the RSA-OAEP parameters as transparent parameter specification of the given class type. |
protected void |
engineInit(AlgorithmParameterSpec paramSpec)
Initializes this RSAOaepParameters from the given RSAOaepParameterSpec. |
protected void |
engineInit(byte[] params)
Initializes this RSAOaepParameters object from the given DER encoded byte array. |
protected void |
engineInit(byte[] params,
String format)
Inits the parameters from an DER encoded byte array. |
protected String |
engineToString()
Returns a String representation of this object. |
ASN1Object |
toASN1Object()
Gets an ASN.1 representation of this RSA OAEP parameters. |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
public RSAOaepParameters()
RSAOaepParameters object.
Applications shall use one of the AlgorithmParameters.getInstance
factory methods for obtaining RSAOaepParameters.| Method Detail |
protected byte[] engineGetEncoded()
throws IOException
engineGetEncoded in class AlgorithmParametersSpiIOException - if an encoding error occurs
protected byte[] engineGetEncoded(String format)
throws IOException
Format is ignored. Only DER encoding is supported. This method
only calls engineGetEncoded(), regardless of what
is specified in the format string.
engineGetEncoded in class AlgorithmParametersSpiformat - the encoding format; ignoredIOException - if an encoding error occurspublic ASN1Object toASN1Object()
protected AlgorithmParameterSpec engineGetParameterSpec(Class paramSpec)
throws InvalidParameterSpecException
engineGetParameterSpec in class AlgorithmParametersSpiparamSpec - the desired parameter specification class (RSAOaepParameterSpec)InvalidParameterSpecException - if the paramters cannot be converted to
the desired parameter specification
protected void engineInit(AlgorithmParameterSpec paramSpec)
throws InvalidParameterSpecException
engineInit in class AlgorithmParametersSpiparamSpec - the parameter specification, which has to be a RSAOaepParameterSpecInvalidParameterSpecException - if the given parameter specification
is not a or is an invalid RSAOaepParameterSpec
protected void engineInit(byte[] params)
throws IOException
engineInit in class AlgorithmParametersSpiparams - the DER encoded byte arrayIOException - if an error occurs when decoding the given byte array
public void decode(ASN1Object asn1Params)
throws CodingException
params - the OAEP parameters in ASN.1 representationCodingException - if an error occurs when parsing the parameters
protected void engineInit(byte[] params,
String format)
throws IOException
engineInit(params) for initializing this RSAOaepParameters
object from the given DER encoded byte array, regardless of what is specified
in the format string.
engineInit in class AlgorithmParametersSpiparams - the DER encoded byte arrayformat - the encoding format; ignoredIOException - if an error occurs when decoding the given byte arrayprotected String engineToString()
engineToString in class AlgorithmParametersSpi
|
This Javadoc may contain text parts from Internet Standard specifications (RFC 2459, 3280, 3039, 2560, 1521, 821, 822, 2253, 1319, 1321, ,2630, 2631, 2268, 3058, 2984, 2104, 2144, 2040, 2311, 2279, see copyright note) and RSA Data Security Public-Key Cryptography Standards (PKCS#1,3,5,7,8,9,10,12, see copyright note). | ||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
IAIK-JCE 3.1 with IAIK-JCE CC Core 3.1, (c) 1997-2004 IAIK