public class SSL3KeyMaterialParameters extends java.lang.Object implements Parameters
Modifier and Type | Field and Description |
---|---|
protected boolean |
export_
Indicates whether the keys have to be derived for an export version of the protocol.
|
protected long |
initializationVectorSizeInBits_
The length (in bits) of the IV agreed upon during the protocol handshake phase.
|
protected long |
keySizeInBits_
The length (in bits) of the secret keys agreed upon during the protocol handshake phase.
|
protected long |
macSizeInBits_
The length (in bits) of the MACing keys agreed upon during the protocol handshake phase.
|
protected SSL3RandomDataParameters |
randomInfo_
The client's and server's random data information.
|
protected SSL3KeyMaterialOutParameters |
returnedKeyMaterial_
Receives the handles for the keys generated and the IVs.
|
Constructor and Description |
---|
SSL3KeyMaterialParameters(long macSizeInBits,
long keySizeInBits,
long initializationVectorSizeInBits,
boolean export,
SSL3RandomDataParameters randomInfo,
SSL3KeyMaterialOutParameters returnedKeyMaterial)
Create a new SSL3KeyMaterialParameters object with the given parameters.
|
Modifier and Type | Method and Description |
---|---|
java.lang.Object |
clone()
Create a (deep) clone of this object.
|
boolean |
equals(java.lang.Object otherObject)
Compares all member variables of this object with the other object.
|
long |
getInitializationVectorSizeInBits()
Get the length (in bits) of the IV agreed upon during the protocol handshake phase.
|
long |
getKeySizeInBits()
Get the length (in bits) of the secret keys agreed upon during the protocol handshake phase.
|
long |
getMacSizeInBits()
Get the length (in bits) of the MACing keys agreed upon during the protocol handshake phase.
|
java.lang.Object |
getPKCS11ParamsObject()
Get this parameters object as a CK_SSL3_KEY_MAT_PARAMS object.
|
SSL3RandomDataParameters |
getRandomInfo()
Get the client's and server's random data information.
|
SSL3KeyMaterialOutParameters |
getReturnedKeyMaterial()
Get the object that receives the handles for the keys generated and the IVs.
|
int |
hashCode()
The overriding of this method should ensure that the objects of this class work correctly in a
hashtable.
|
boolean |
isExport()
Check whether the keys have to be derived for an export version of the protocol.
|
void |
isExport(boolean export)
Set whether the keys have to be derived for an export version of the protocol.
|
void |
setInitializationVectorSizeInBits(long initializationVectorSizeInBits)
Set the length (in bits) of the IV agreed upon during the protocol handshake phase.
|
void |
setKeySizeInBits(long keySizeInBits)
Set the length (in bits) of the secret keys agreed upon during the protocol handshake phase.
|
void |
setMacSizeInBits(long macSizeInBits)
Set the length (in bits) of the MACing keys agreed upon during the protocol handshake phase.
|
void |
setRandomInfo(SSL3RandomDataParameters randomInfo)
Set the client's and server's random data information.
|
void |
setReturnedKeyMaterial(SSL3KeyMaterialOutParameters returnedKeyMaterial)
Set the object that receives the handles for the keys generated and the IVs.
|
java.lang.String |
toString()
Returns the string representation of this object.
|
protected long macSizeInBits_
protected long keySizeInBits_
protected long initializationVectorSizeInBits_
protected boolean export_
protected SSL3RandomDataParameters randomInfo_
protected SSL3KeyMaterialOutParameters returnedKeyMaterial_
public SSL3KeyMaterialParameters(long macSizeInBits, long keySizeInBits, long initializationVectorSizeInBits, boolean export, SSL3RandomDataParameters randomInfo, SSL3KeyMaterialOutParameters returnedKeyMaterial)
macSizeInBits
- The length (in bits) of the MACing keys agreed upon during the protocol handshake
phase.keySizeInBits
- The length (in bits) of the secret keys agreed upon during the protocol handshake
phase.initializationVectorSizeInBits
- The length (in bits) of the IV agreed upon during the protocol handshake phase. If no
IV is required, the length should be set to 0.export
- Indicates whether the keys have to be derived for an export version of the protocol.randomInfo
- The client's and server's random data information.returnedKeyMaterial
- Receives the handles for the keys generated and the IVs.public java.lang.Object clone()
clone
in class java.lang.Object
public java.lang.Object getPKCS11ParamsObject()
getPKCS11ParamsObject
in interface Parameters
public long getMacSizeInBits()
public long getKeySizeInBits()
public long getInitializationVectorSizeInBits()
public boolean isExport()
public SSL3RandomDataParameters getRandomInfo()
public SSL3KeyMaterialOutParameters getReturnedKeyMaterial()
public void setMacSizeInBits(long macSizeInBits)
macSizeInBits
- The length (in bits) of the MACing keys agreed upon during the protocol handshake
phase.public void setKeySizeInBits(long keySizeInBits)
keySizeInBits
- The length (in bits) of the secret keys agreed upon during the protocol handshake
phase.public void setInitializationVectorSizeInBits(long initializationVectorSizeInBits)
initializationVectorSizeInBits
- The length (in bits) of the IV agreed upon during the protocol handshake phase. If no
IV is required, the length should be set to 0.public void isExport(boolean export)
export
- True, if the keys have to be derived for an export version of the protocol; false,
otherwise.public void setRandomInfo(SSL3RandomDataParameters randomInfo)
randomInfo
- The client's and server's random data information.public void setReturnedKeyMaterial(SSL3KeyMaterialOutParameters returnedKeyMaterial)
returnedKeyMaterial
- The object that receives the handles for the keys generated and the IVs.public java.lang.String toString()
toString
in class java.lang.Object
public boolean equals(java.lang.Object otherObject)
equals
in class java.lang.Object
otherObject
- The other object to compare to.public int hashCode()
hashCode
in class java.lang.Object
IAIK JavaSecurity Website http://jce.iaik.tugraz.at/
IAIK at Graz University of Technology, Austria, Europe
Copyright 2001-2023 IAIK, Graz University of Technology, Inffeldgasse 16a, 8010 Graz, Austria. All Rights Reserved. version 1.6.9