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