net.i2p.crypto
Class SHA1Hash
java.lang.Object
net.i2p.data.DataStructureImpl
net.i2p.data.SimpleDataStructure
net.i2p.crypto.SHA1Hash
- All Implemented Interfaces:
- DataStructure
- Direct Known Subclasses:
- InfoHash, NID, TokenKey
public class SHA1Hash
- extends SimpleDataStructure
Because DSAEngine was abusing Hash for 20-byte hashes
- Since:
- 0.8.1
- Author:
- zzz
Constructor Summary |
SHA1Hash(byte[] data)
|
Method Summary |
int |
hashCode()
a Hash is a hash, so just use the first 4 bytes for speed |
int |
length()
The legal length of the byte array in this data structure |
void |
readBytes(InputStream in)
Sets the data. |
void |
setData(byte[] data)
Sets the data. |
HASH_LENGTH
public static final int HASH_LENGTH
- See Also:
- Constant Field Values
SHA1Hash
public SHA1Hash(byte[] data)
- Throws:
IllegalArgumentException
- if data is not 20 bytes (null is ok)
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
setData
public void setData(byte[] data)
- Description copied from class:
SimpleDataStructure
- Sets the data.
- Overrides:
setData
in class SimpleDataStructure
- Parameters:
data
- of correct length, or null
- Throws:
IllegalArgumentException
- if data is not 20 bytes (null is ok)
readBytes
public void readBytes(InputStream in)
throws DataFormatException,
IOException
- Description copied from class:
SimpleDataStructure
- Sets the data.
- Specified by:
readBytes
in interface DataStructure
- Overrides:
readBytes
in class SimpleDataStructure
- Parameters:
in
- the stream to read
- Throws:
DataFormatException
- if the data is improperly formatted
IOException
- if there was a problem reading the stream
hashCode
public int hashCode()
- a Hash is a hash, so just use the first 4 bytes for speed
- Overrides:
hashCode
in class SimpleDataStructure