IAIK PKCS#11 Wrapper
version 1.2.16

iaik.pkcs.pkcs11.parameters
Class KEADeriveParameters

java.lang.Object
  extended byiaik.pkcs.pkcs11.parameters.KEADeriveParameters
All Implemented Interfaces:
Cloneable, Parameters

public class KEADeriveParameters
extends Object
implements Parameters

This class encapsulates parameters for the Mechanism.KEA_KEY_DERIVE.

Invariants
(randomA_ <> null) and (randomB_ <> null) and (publicData_ <> null)

Field Summary
protected  boolean isSender_
          Option for generating the key (called a TEK).
protected  byte[] publicData_
          The other party's KEA public key value.
protected  byte[] randomA_
          The Ra data.
protected  byte[] randomB_
          The Rb data.
 
Constructor Summary
KEADeriveParameters(boolean isSender, byte[] randomA, byte[] randomB, byte[] publicData)
          Create a new KEADeriveParameters object with the given attributes.
 
Method Summary
 Object clone()
          Create a (deep) clone of this object.
 boolean equals(Object otherObject)
          Compares all member variables of this object with the other object.
 Object getPKCS11ParamsObject()
          Get this parameters object as an object of the CK_KEA_DERIVE_PARAMS class.
 byte[] getPublicData()
          Get the other party's KEA public key value.
 byte[] getRandomA()
          Get the random data Ra.
 byte[] getRandomB()
          Get the random data Rb.
 int hashCode()
          The overriding of this method should ensure that the objects of this class work correctly in a hashtable.
 boolean isSender()
          Get the option for generating the key (called a TEK).
 void setPublicData(byte[] publicData)
          Set the other party's KEA public key value.
 void setRandomA(byte[] randomA)
          Set the random data Ra.
 void setRandomB(byte[] randomB)
          Set the random data Rb.
 void setSender(boolean isSender)
          Set the option for generating the key (called a TEK).
 String toString()
          Returns the string representation of this object.
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

isSender_

protected boolean isSender_
Option for generating the key (called a TEK). The value is TRUE if the sender (originator) generates the TEK, FALSE if the recipient is regenerating the TEK.


randomA_

protected byte[] randomA_
The Ra data.


randomB_

protected byte[] randomB_
The Rb data.


publicData_

protected byte[] publicData_
The other party's KEA public key value.

Constructor Detail

KEADeriveParameters

public KEADeriveParameters(boolean isSender,
                           byte[] randomA,
                           byte[] randomB,
                           byte[] publicData)
Create a new KEADeriveParameters object with the given attributes.

Parameters:
isSender - Option for generating the key (called a TEK). The value is TRUE if the sender (originator) generates the TEK, FALSE if the recipient is regenerating the TEK.
randomA - The random data Ra.
randomB - The random data Rb.
publicData - The other party's KEA public key value.
Preconditions
(randomA <> null) and (randomB <> null) and (publicData <> null)
Postconditions
Method Detail

clone

public Object clone()
Create a (deep) clone of this object.

Returns:
A clone of this object.
Preconditions
Postconditions
(result <> null) and (result instanceof KEADeriveParameters) and (result.equals(this))

getPKCS11ParamsObject

public Object getPKCS11ParamsObject()
Get this parameters object as an object of the CK_KEA_DERIVE_PARAMS class.

Specified by:
getPKCS11ParamsObject in interface Parameters
Returns:
This object as a CK_KEA_DERIVE_PARAMS object.
Preconditions
Postconditions
(result <> null)

getPublicData

public byte[] getPublicData()
Get the other party's KEA public key value.

Returns:
The other party's KEA public key value.
Preconditions
Postconditions
(result <> null)

getRandomA

public byte[] getRandomA()
Get the random data Ra.

Returns:
The random data Ra.
Preconditions
Postconditions
(result <> null)

getRandomB

public byte[] getRandomB()
Get the random data Rb.

Returns:
The random data Rb.
Preconditions
Postconditions
(result <> null)

isSender

public boolean isSender()
Get the option for generating the key (called a TEK).

Returns:
True if the sender (originator) generates the TEK, false if the recipient is regenerating the TEK.
Preconditions
Postconditions

setPublicData

public void setPublicData(byte[] publicData)
Set the other party's KEA public key value.

Parameters:
publicData - The other party's KEA public key value.
Preconditions
(publicData <> null)
Postconditions

setRandomA

public void setRandomA(byte[] randomA)
Set the random data Ra.

Parameters:
randomA - The random data Ra.
Preconditions
(randomA <> null)
Postconditions

setRandomB

public void setRandomB(byte[] randomB)
Set the random data Rb.

Parameters:
randomB - The random data Rb.
Preconditions
(randomB <> null)
Postconditions

setSender

public void setSender(boolean isSender)
Set the option for generating the key (called a TEK).

Parameters:
isSender - True if the sender (originator) generates the TEK, false if the recipient is regenerating the TEK.
Preconditions
Postconditions

toString

public String toString()
Returns the string representation of this object. Do not parse data from this string, it is for debugging only.

Returns:
A string representation of this object.

equals

public boolean equals(Object otherObject)
Compares all member variables of this object with the other object. Returns only true, if all are equal in both objects.

Parameters:
otherObject - The other object to compare to.
Returns:
True, if other is an instance of this class and all member variables of both objects are equal. False, otherwise.
Preconditions
Postconditions

hashCode

public int hashCode()
The overriding of this method should ensure that the objects of this class work correctly in a hashtable.

Returns:
The hash code of this object.
Preconditions
Postconditions

IAIK PKCS#11 Wrapper
version 1.2.16

IAIK JavaSecurity Website http://jce.iaik.tugraz.at/

IAIK at Graz University of Technology, Austria, Europe
Copyright 2001-2002, IAIK, Graz University of Technology, Inffeldgasse 16a, 8010 Graz, Austria. All Rights Reserved.