public class RC2WrapParameters extends RC2Parameters
Wrap parameters specified for the RC2 key wrap algorithm given in RFC2630 (Cryptographic Message Syntax) represent the RC2ParameterVersion for indicating the number of effective key bits:
RC2wrapParameter :: RC2ParameterVersion RC2ParameterVersion ::= INTEGERThe RC2 effective-key-bits (key size) greater than 32 and less than 256 is encoded in the RC2ParameterVersion. For the effective-key- bits of 40, 64, and 128, the rc2ParameterVersion values are 160, 120, and 58 respectively. These values are not simply the RC2 key length.
RC2WrapParameters can be generated provider independently by calling one of the
AlgorithmParameters.getInstance
methods for the algorithm in
mind. Subsequently the new AlgorithmParameters object must be initialized with
a proper RC2 wrap parameter specification or a DER encoded byte array. If the first
way is chosen, the parameter version for initializing the new AlgorithmParameters
object immediately must be derived from the given RC2 wrap parameter specification;
if the parameters are given as DER encoded byte array, the values are parsed from
the derived ASN.1 object,
e.g.:
RC2WrapParameterSpec rc2WrapParamSpec = ...; AlgorithmParameters params = AlgorithmParameters.getInstance("RC2WrapRC2", "IAIK"); params.init(rc2WrapParamsSpec);
For obtaining RC2 wrap parameters in transparent representation from an opaque
RC2WrapParameters object, the getParameterSpec
method can be used;
for obtaining the parameters as DER encoded ASN.1 object, use
getEncoded
.
Constructor and Description |
---|
RC2WrapParameters()
The default constructor.
|
Modifier and Type | Method and Description |
---|---|
protected byte[] |
engineGetEncoded()
Returns the parameters as DER byte array.
|
protected byte[] |
engineGetEncoded(java.lang.String format)
Returns the parameters as a DER byte array.
|
protected java.security.spec.AlgorithmParameterSpec |
engineGetParameterSpec(java.lang.Class paramSpec)
Returns the RC2 wrap parameters as transparent RC2 parameter specification of
the given class type.
|
protected void |
engineInit(java.security.spec.AlgorithmParameterSpec paramSpec)
Initializes this RC2WrapParameters with the effective key bits from the
given RC2WrapParameterSpec.
|
protected void |
engineInit(byte[] params)
Initializes this RC2WrapParameters object from the given DER encoded byte array.
|
protected void |
engineInit(byte[] params,
java.lang.String format)
Inits the parameters from an DER encoded byte array.
|
protected java.lang.String |
engineToString()
Returns a String representation of the parameters.
|
public RC2WrapParameters()
RC2WrapParameters
object.
Applications shall use one of the AlgorithmParameters.getInstance
factory methods for obtaining RC2WrapParameters.protected byte[] engineGetEncoded() throws java.io.IOException
engineGetEncoded
in class RC2Parameters
java.io.IOException
- if an encoding error occursprotected byte[] engineGetEncoded(java.lang.String format) throws java.io.IOException
Format is ignored. Only DER encoding is supported at this time. This method
only calls engineGetEncoded()
, regardless of what
is specified in the format
string.
engineGetEncoded
in class RC2Parameters
format
- the encoding format; ignoredjava.io.IOException
- if an encoding error occursprotected java.security.spec.AlgorithmParameterSpec engineGetParameterSpec(java.lang.Class paramSpec) throws java.security.spec.InvalidParameterSpecException
engineGetParameterSpec
in class RC2Parameters
paramSpec
- the desired parameter specification class (RC2WrapParameterSpec)java.security.spec.InvalidParameterSpecException
- if the parameters cannot be converted to
the desired parameter specificationprotected void engineInit(java.security.spec.AlgorithmParameterSpec paramSpec) throws java.security.spec.InvalidParameterSpecException
engineInit
in class RC2Parameters
paramSpec
- the parameter specification, which has to be a RC2WrapParameterSpecjava.security.spec.InvalidParameterSpecException
- if the given parameter specification
is not a RC2WrapParameterSpec or the included
parameters are invalidprotected void engineInit(byte[] params) throws java.io.IOException
engineInit
in class RC2Parameters
params
- the DER encoded byte arrayjava.io.IOException
- if an error occurs when decoding the given byte array or
the derived parameter values are invalidprotected void engineInit(byte[] params, java.lang.String format) throws java.io.IOException
engineInit(params)
for initializing this RC2WrapParameters
object from the given DER encoded byte array, regardless of what is specified
in the format
string.
engineInit
in class RC2Parameters
params
- the DER encoded byte arrayformat
- the encoding format; ignoredjava.io.IOException
- if an error occurs when decoding the given byte arrayprotected java.lang.String engineToString()
engineToString
in class RC2Parameters