public class PWRIKekWrapParameters
extends java.security.AlgorithmParametersSpi
The parameters specified for the CMS PWRI-KEK key wrap algorithm in RFC 3211 consist of an OID specifying the algorithm to use to wrap the content encryption key:
KeyEncryptionAlgorithmIdentifier ::= AlgorithmIdentifier {{ KeyEncryptionAlgorithms }}
KeyEncryptionAlgorithms ALGORITHM ::= {
{ OID id-alg-PWRI-KEK PARMS
AlgorithmIdentifier {{ PWRIAlgorithms }} },
...
}
PWRIKekWrapParamters can be generated provider independently by calling one
of the AlgorithmParameters.getInstance methods for the algorithm
in mind. Subsequently the new AlgorithmParamters object must be initialized
with a proper PWRI-KEK Wrap parameter specification or a DER encoded byte
array, e.g.:
PWRIKekWrapParameterSpec paramSpec = ...;
AlgorithmParameters params = AlgorithmParameters.getInstance("CMS-PWRI-KEK");
params.init(paramsSpec);
For obtaining PWRI-KEK parameters in transparent representation from an
opaque PWRIKekWrapParamters object, the getParameterSpec method
can be used; for obtaining the parameters as DER encoded ASN.1 object, use
getEncoded.
| Constructor and Description |
|---|
PWRIKekWrapParameters()
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 PWRI-KEK parameters as transparent PWRI-KEK parameter
specification of the given class type.
|
protected void |
engineInit(java.security.spec.AlgorithmParameterSpec paramSpec)
Initializes this PWRIKekWrapParameters with the parameter values from a
given PWRIKekWrapParametersSpec.
|
protected void |
engineInit(byte[] params)
Initializes this PWRIKekWrapParameters object from the given DER encoded
byte array.
|
protected void |
engineInit(byte[] params,
java.lang.String format)
Initializes the parameters from an DER encoded byte array.
|
protected java.lang.String |
engineToString()
Returns a String representation of the parameters.
|
AlgorithmID |
getEncryptionAlgorithm() |
public PWRIKekWrapParameters()
PWRIKekWrapParameters object. Applications shall use one of
the AlgorithmParameters.getInstance factory methods for
obtaining PWRIKekWrapParameters.protected byte[] engineGetEncoded()
throws java.io.IOException
engineGetEncoded in class java.security.AlgorithmParametersSpijava.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 java.security.AlgorithmParametersSpiformat - 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 java.security.AlgorithmParametersSpiparamSpec - the desired parameter specification class
(PWRIKekWrapParameterSpec)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 java.security.AlgorithmParametersSpiparamSpec - the parameter specification, which has to be a
PWRIKekWrapParameterSpecjava.security.spec.InvalidParameterSpecException - if the given parameter specification is not a
PWRIKekWrapParameterSpec or the included parameters are
invalidpublic AlgorithmID getEncryptionAlgorithm()
protected void engineInit(byte[] params)
throws java.io.IOException
engineInit in class java.security.AlgorithmParametersSpiparams - 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 PWRIKekParameters object from the given DER encoded byte array,
regardless of what is specified in the format string.
engineInit in class java.security.AlgorithmParametersSpiparams - 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 java.security.AlgorithmParametersSpi