net.i2p.data
public class Certificate extends DataStructureImpl
Modifier and Type | Field and Description |
---|---|
protected byte[] |
_payload |
protected int |
_type |
static int |
CERTIFICATE_LENGTH_SIGNED_WITH_HASH |
static int |
CERTIFICATE_TYPE_HASHCASH
specifies a Hashcash style certificate
|
static int |
CERTIFICATE_TYPE_HIDDEN
we should not be used for anything (don't use us in the netDb, in tunnels, or tell others about us)
|
static int |
CERTIFICATE_TYPE_MULTIPLE
Contains multiple certs
|
static int |
CERTIFICATE_TYPE_NULL
Specifies a null certificate type with no payload
|
static int |
CERTIFICATE_TYPE_SIGNED
Signed with 40-byte Signature and (optional) 32-byte hash
|
static Certificate |
NULL_CERT |
Constructor and Description |
---|
Certificate() |
Certificate(int type,
byte[] payload) |
Modifier and Type | Method and Description |
---|---|
static Certificate |
create(byte[] data,
int off)
If null cert, return immutable static instance, else create new
|
static Certificate |
create(InputStream in)
If null cert, return immutable static instance, else create new
|
boolean |
equals(Object object) |
int |
getCertificateType() |
byte[] |
getPayload() |
int |
hashCode() |
int |
readBytes(byte[] source,
int offset) |
void |
readBytes(InputStream in)
Load up the current object with data from the given stream.
|
void |
setCertificateType(int type) |
void |
setPayload(byte[] payload) |
int |
size() |
String |
toString() |
int |
writeBytes(byte[] target,
int offset) |
void |
writeBytes(OutputStream out)
Write out the data structure to the stream, using the format defined in the
I2P data structure specification.
|
calculateHash, fromBase64, fromByteArray, read, toBase64, toByteArray
public static final Certificate NULL_CERT
protected int _type
protected byte[] _payload
public static final int CERTIFICATE_TYPE_NULL
public static final int CERTIFICATE_TYPE_HASHCASH
public static final int CERTIFICATE_TYPE_HIDDEN
public static final int CERTIFICATE_TYPE_SIGNED
public static final int CERTIFICATE_LENGTH_SIGNED_WITH_HASH
public static final int CERTIFICATE_TYPE_MULTIPLE
public Certificate()
public Certificate(int type, byte[] payload)
public static Certificate create(byte[] data, int off)
AIOOBE
- if not enough bytespublic static Certificate create(InputStream in) throws DataFormatException, IOException
DataFormatException
IOException
public int getCertificateType()
public void setCertificateType(int type)
public byte[] getPayload()
public void setPayload(byte[] payload)
public void readBytes(InputStream in) throws DataFormatException, IOException
DataStructure
in
- stream to read fromDataFormatException
- if the data is improperly formattedIOException
- if there was a problem reading the streampublic void writeBytes(OutputStream out) throws DataFormatException, IOException
DataStructure
out
- stream to write toDataFormatException
- if the data was incomplete or not yet ready to be writtenIOException
- if there was a problem writing to the streampublic int writeBytes(byte[] target, int offset)
public int readBytes(byte[] source, int offset) throws DataFormatException
DataFormatException
public int size()