Package net.i2p.data
Class SessionKey
java.lang.Object
net.i2p.data.SimpleDataStructure
net.i2p.data.SessionKey
- All Implemented Interfaces:
DataStructure
- Direct Known Subclasses:
SessionKeyAndNonce
Defines the SessionKey as defined by the I2P data structure spec.
A session key is a 32 byte Integer.
To create one with random data, use I2PAppContext.keyGenerator().generateSessionKey().
- Author:
- jrandom
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final SessionKeyA key with all zeroes in the datastatic final intFields inherited from class net.i2p.data.SimpleDataStructure
_data -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionretrieve an internal representation of the session key, as known by the AES engine used.intlength()The legal length of the byte array in this data structurevoidsetData(byte[] data) Sets the data.voidsetPreparedKey(Object obj) Methods inherited from class net.i2p.data.SimpleDataStructure
calculateHash, equals, fromBase64, fromByteArray, getData, hashCode, read, readBytes, toBase64, toByteArray, toString, writeBytes
-
Field Details
-
KEYSIZE_BYTES
public static final int KEYSIZE_BYTES- See Also:
-
INVALID_KEY
A key with all zeroes in the data
-
-
Constructor Details
-
SessionKey
public SessionKey() -
SessionKey
public SessionKey(byte[] data)
-
-
Method Details
-
length
public int length()Description copied from class:SimpleDataStructureThe legal length of the byte array in this data structure- Specified by:
lengthin classSimpleDataStructure
-
setData
public void setData(byte[] data) Sets the data.- Overrides:
setDatain classSimpleDataStructure- Parameters:
data- 32 bytes, or null- Throws:
IllegalArgumentException- if data is not the legal number of bytes (but null is ok)RuntimeException- if data already set.
-
getPreparedKey
retrieve an internal representation of the session key, as known by the AES engine used. this can be reused safely -
setPreparedKey
-