|
|||||||||
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 AlgorithmParametersSpi
IOException
- if an encoding error occursprotected 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 AlgorithmParametersSpi
format
- the encoding format; ignoredIOException
- if an encoding error occurspublic ASN1Object toASN1Object()
protected AlgorithmParameterSpec engineGetParameterSpec(Class paramSpec) throws InvalidParameterSpecException
engineGetParameterSpec
in class AlgorithmParametersSpi
paramSpec
- the desired parameter specification class (RSAOaepParameterSpec)InvalidParameterSpecException
- if the paramters cannot be converted to
the desired parameter specificationprotected void engineInit(AlgorithmParameterSpec paramSpec) throws InvalidParameterSpecException
engineInit
in class AlgorithmParametersSpi
paramSpec
- the parameter specification, which has to be a RSAOaepParameterSpecInvalidParameterSpecException
- if the given parameter specification
is not a or is an invalid RSAOaepParameterSpecprotected void engineInit(byte[] params) throws IOException
engineInit
in class AlgorithmParametersSpi
params
- the DER encoded byte arrayIOException
- if an error occurs when decoding the given byte arraypublic void decode(ASN1Object asn1Params) throws CodingException
params
- the OAEP parameters in ASN.1 representationCodingException
- if an error occurs when parsing the parametersprotected 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 AlgorithmParametersSpi
params
- 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 |