net.i2p.data
Class PublicKey

java.lang.Object
  extended by net.i2p.data.DataStructureImpl
      extended by net.i2p.data.SimpleDataStructure
          extended by net.i2p.data.PublicKey
All Implemented Interfaces:
Serializable, DataStructure

public class PublicKey
extends SimpleDataStructure

Defines the PublicKey as defined by the I2P data structure spec. A public key is 256byte Integer. The public key represents only the exponent, not the primes, which are constant and defined in the crypto spec.

Author:
jrandom
See Also:
Serialized Form

Field Summary
static int KEYSIZE_BYTES
           
 
Fields inherited from class net.i2p.data.SimpleDataStructure
_data
 
Constructor Summary
PublicKey()
           
PublicKey(byte[] data)
           
PublicKey(String base64Data)
          constructs from base64
 
Method Summary
static void clearCache()
           
static PublicKey create(byte[] data, int off)
          Pull from cache or return new.
static PublicKey create(InputStream in)
          Pull from cache or return new
 int length()
          The legal length of the byte array in this data structure
 
Methods inherited from class net.i2p.data.SimpleDataStructure
calculateHash, equals, fromBase64, fromByteArray, getData, hashCode, readBytes, setData, toBase64, toByteArray, toString, writeBytes
 
Methods inherited from class net.i2p.data.DataStructureImpl
read
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

KEYSIZE_BYTES

public static final int KEYSIZE_BYTES
See Also:
Constant Field Values
Constructor Detail

PublicKey

public PublicKey()

PublicKey

public PublicKey(byte[] data)
Parameters:
data - must be non-null

PublicKey

public PublicKey(String base64Data)
          throws DataFormatException
constructs from base64

Parameters:
base64Data - a string of base64 data (the output of .toBase64() called on a prior instance of PublicKey
Throws:
DataFormatException
Method Detail

create

public static PublicKey create(byte[] data,
                               int off)
Pull from cache or return new. Deprecated - used only by deprecated Destination.readBytes(data, off)

Throws:
AIOOBE - if not enough bytes, FIXME should throw DataFormatException
Since:
0.8.3

create

public static PublicKey create(InputStream in)
                        throws IOException
Pull from cache or return new

Throws:
IOException
Since:
0.8.3

length

public int length()
Description copied from class: SimpleDataStructure
The legal length of the byte array in this data structure

Specified by:
length in class SimpleDataStructure

clearCache

public static void clearCache()
Since:
0.9.17