|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--java.security.AlgorithmParametersSpi | +--iaik.security.cipher.IvParameters
This class represents an initialization vector in opaque form and may be used for generating an opaque IV and converting it between various formats.
The initialization vector (IV) represented by this class may be used by any algorithm that needs an IV, e.g. when running a DES, TripleDES, IDEA,... cipher in CBC, PCBC, CFB or OFB mode.
IvParamters 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 IV parameter specification or a DER encoded byte array. If the first
way is chosen, the IV value for initializing the new AlgorithmParameters object
immediately is taken from the given IV parameter specification; if the parameters are given
as DER encoded byte array, an ASN.1 OCTET_STRING is created from this byte
array for subsequently parsing the IV value, e.g.:
IvParameterSpec ivParamSpec = ...; AlgorithmParameters params = AlgorithmParameters.getInstance("DES", "IAIK"); params.init(ivParamSpec);
For obtaining IV parameters in transparent representation from an opaque
IvParamters object, the getParameterSpec
method can be used;
for obtaining the parameters as DER encoded ASN.1 object, use
getEncoded
.
Constructor Summary | |
IvParameters()
The default constructor. |
Method Summary | |
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 IV parameters as transparent IV parameter specification of the given class type. |
protected void |
engineInit(AlgorithmParameterSpec paramSpec)
Initializes this IvParameters with the IV value from a given IvParameterspec. |
protected void |
engineInit(byte[] params)
Initializes this IvParameters 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 the parameters. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
public IvParameters()
IvParameters
object.
Applications shall use one of the AlgorithmParameters.getInstance
factory methods for obtaining IvParameters.Method Detail |
protected byte[] engineGetEncoded() throws IOException
Encodes the IV value as ASN.1 OCTET STRING.
engineGetEncoded
in class AlgorithmParametersSpi
IOException
- if an encoding error occursprotected byte[] engineGetEncoded(String format) throws IOException
Format is ignored. Only DER encoding is supported at this time. This method
only calls engineGetEncoded()
for encoding the IV value as ASN.1 OCTET STRING, regardless of what
is specified in the format
string.
engineGetEncoded
in class AlgorithmParametersSpi
format
- the encoding format; ignoredIOException
- if an encoding error occursprotected AlgorithmParameterSpec engineGetParameterSpec(Class paramSpec) throws InvalidParameterSpecException
engineGetParameterSpec
in class AlgorithmParametersSpi
paramSpec
- the desired parameter specification class (IvParameterSpec)InvalidParameterSpecException
- if the paramters cannot be converted to
the desired parameter specificationprotected void engineInit(AlgorithmParameterSpec paramSpec) throws InvalidParameterSpecException
Attention! No check is performed if the length of the IV value (derived from the IvParameterSpec) is suitable for the algorithm this IvParameters is used for.
engineInit
in class AlgorithmParametersSpi
paramSpec
- the parameter specification, which has to be a IvParameterSpecInvalidParameterSpecException
- if the given parameter specification
is not a IvParameterSpecprotected void engineInit(byte[] params) throws IOException
From the given byte array an ASN.1 object is created and parsed for the required IV value.
Attention! No check is performed if the length of the IV value (derived from the encoding) is suitable for the algorithm this IvParameters is used for.
engineInit
in class AlgorithmParametersSpi
params
- the DER encoded byte arrayIOException
- if an error occurs when decoding the given byte arrayprotected void engineInit(byte[] params, String format) throws IOException
engineInit(params)
for initializing this IvParamters
object from the given DER encoded byte array, regardless of what is specified
in the format
string.
Attention! No check is performed if the length of the IV value (derived from the encoding) is suitable for the algorithm this IvParameters is used for.
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 |