net.i2p.data
Class KeysAndCert
java.lang.Object
net.i2p.data.DataStructureImpl
net.i2p.data.KeysAndCert
- All Implemented Interfaces:
- DataStructure
- Direct Known Subclasses:
- Destination, RouterIdentity
public class KeysAndCert
- extends DataStructureImpl
KeysAndCert has a public key, a signing key, and a certificate.
In that order.
We also store a cached Hash.
Implemented in 0.8.2 and retrofitted over Destination and RouterIdentity.
There's actually no difference between the two of them.
- Since:
- 0.8.2
- Author:
- zzz
_publicKey
protected PublicKey _publicKey
_signingKey
protected SigningPublicKey _signingKey
_certificate
protected Certificate _certificate
__calculatedHash
protected Hash __calculatedHash
KeysAndCert
public KeysAndCert()
getCertificate
public Certificate getCertificate()
setCertificate
public void setCertificate(Certificate cert)
getPublicKey
public PublicKey getPublicKey()
setPublicKey
public void setPublicKey(PublicKey key)
getSigningPublicKey
public SigningPublicKey getSigningPublicKey()
setSigningPublicKey
public void setSigningPublicKey(SigningPublicKey key)
readBytes
public void readBytes(InputStream in)
throws DataFormatException,
IOException
- Description copied from interface:
DataStructure
- Load up the current object with data from the given stream. Data loaded
this way must match the I2P data structure specification.
- Parameters:
in
- stream to read from
- Throws:
DataFormatException
- if the data is improperly formatted
IOException
- if there was a problem reading the stream
writeBytes
public void writeBytes(OutputStream out)
throws DataFormatException,
IOException
- Description copied from interface:
DataStructure
- Write out the data structure to the stream, using the format defined in the
I2P data structure specification.
- Parameters:
out
- stream to write to
- Throws:
DataFormatException
- if the data was incomplete or not yet ready to be written
IOException
- if there was a problem writing to the stream
equals
public boolean equals(Object object)
- Overrides:
equals
in class Object
hashCode
public int hashCode()
- the public key has enough randomness in it to use it by itself for speed
- Overrides:
hashCode
in class Object
toString
public String toString()
- Overrides:
toString
in class Object
calculateHash
public Hash calculateHash()
- Description copied from interface:
DataStructure
- Calculate the SHA256 value of this object (useful for a few scenarios)
- Specified by:
calculateHash
in interface DataStructure
- Overrides:
calculateHash
in class DataStructureImpl
- Returns:
- SHA256 hash, or null if there were problems (data format or io errors)
getHash
public Hash getHash()