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
Modifier and TypeFieldDescriptionstatic final SessionKey
A key with all zeroes in the datastatic final int
Fields inherited from class net.i2p.data.SimpleDataStructure
_data
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionretrieve an internal representation of the session key, as known by the AES engine used.int
length()
The legal length of the byte array in this data structurevoid
setData
(byte[] data) Sets the data.void
setPreparedKey
(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:SimpleDataStructure
The legal length of the byte array in this data structure- Specified by:
length
in classSimpleDataStructure
-
setData
public void setData(byte[] data) Sets the data.- Overrides:
setData
in 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
-