|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectnet.i2p.data.DataStructureImpl
net.i2p.data.SimpleDataStructure
net.i2p.data.SigningPublicKey
public class SigningPublicKey
Defines the SigningPublicKey as defined by the I2P data structure spec. A signing public key is by default 128 byte Integer. The public key represents only the exponent, not the primes, which are constant and defined in the crypto spec. This key varies from the PrivateKey in its usage (verifying signatures, not encrypting) As of release 0.9.8, keys of arbitrary length and type are supported. See SigType.
Field Summary | |
---|---|
static int |
KEYSIZE_BYTES
|
Fields inherited from class net.i2p.data.SimpleDataStructure |
---|
_data |
Constructor Summary | |
---|---|
SigningPublicKey()
|
|
SigningPublicKey(byte[] data)
|
|
SigningPublicKey(SigType type)
|
|
SigningPublicKey(SigType type,
byte[] data)
|
|
SigningPublicKey(String base64Data)
constructs from base64 |
Method Summary | |
---|---|
static void |
clearCache()
|
static SigningPublicKey |
create(byte[] data,
int off)
Pull from cache or return new. |
static SigningPublicKey |
create(InputStream in)
Pull from cache or return new |
boolean |
equals(Object obj)
Warning - this returns true for two different classes with the same size and same data, e.g. |
byte[] |
getPadding(KeyCertificate kcert)
Get the portion of this (type 0) SPK that is really padding based on the Key Cert type given, if any |
SigType |
getType()
|
int |
hashCode()
We assume the data has enough randomness in it, so use the first 4 bytes for speed. |
int |
length()
The legal length of the byte array in this data structure |
String |
toString()
|
SigningPublicKey |
toTypedKey(KeyCertificate kcert)
Up-convert this from an untyped (type 0) SPK to a typed SPK based on the Key Cert given. |
void |
writeTruncatedBytes(OutputStream out)
Write the data up to a max of 128 bytes. |
Methods inherited from class net.i2p.data.SimpleDataStructure |
---|
calculateHash, fromBase64, fromByteArray, getData, readBytes, setData, toBase64, toByteArray, 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 |
---|
public static final int KEYSIZE_BYTES
Constructor Detail |
---|
public SigningPublicKey()
public SigningPublicKey(SigType type)
type
- if null, type is unknownpublic SigningPublicKey(byte[] data)
public SigningPublicKey(SigType type, byte[] data)
type
- if null, type is unknownpublic SigningPublicKey(String base64Data) throws DataFormatException
base64Data
- a string of base64 data (the output of .toBase64() called
on a prior instance of SigningPublicKey
DataFormatException
Method Detail |
---|
public static SigningPublicKey create(byte[] data, int off)
AIOOBE
- if not enough bytes, FIXME should throw DataFormatExceptionpublic static SigningPublicKey create(InputStream in) throws IOException
IOException
public int length()
SimpleDataStructure
length
in class SimpleDataStructure
public SigType getType()
public SigningPublicKey toTypedKey(KeyCertificate kcert)
IllegalArgumentException
- if this is already typed to a different typepublic byte[] getPadding(KeyCertificate kcert)
IllegalArgumentException
- if this is already typed to a different typepublic void writeTruncatedBytes(OutputStream out) throws DataFormatException, IOException
DataFormatException
IOException
public String toString()
toString
in class SimpleDataStructure
public static void clearCache()
public int hashCode()
SimpleDataStructure
hashCode
in class SimpleDataStructure
public boolean equals(Object obj)
SimpleDataStructure
equals
in class SimpleDataStructure
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |