public class KeccakDigest extends java.lang.Object implements ExtendedDigest
Following the naming conventions used in the C source code to enable easy review of the implementation.
Modifier and Type | Field and Description |
---|---|
protected int |
bitsAvailableForSqueezing |
protected int |
bitsInQueue |
protected byte[] |
chunk |
protected byte[] |
dataQueue |
protected int |
fixedOutputLength |
protected byte[] |
oneByte |
protected int |
rate |
protected boolean |
squeezing |
protected byte[] |
state |
Constructor and Description |
---|
KeccakDigest() |
KeccakDigest(int bitLength) |
KeccakDigest(KeccakDigest source) |
Modifier and Type | Method and Description |
---|---|
protected void |
absorb(byte[] data,
int off,
long databitlen) |
int |
doFinal(byte[] out,
int outOff)
close the digest, producing the final digest value.
|
protected int |
doFinal(byte[] out,
int outOff,
byte partialByte,
int partialBits) |
java.lang.String |
getAlgorithmName()
return the algorithm name
|
int |
getByteLength()
Return the size of block that the compression function is applied to in bytes.
|
int |
getDigestSize()
return the size, in bytes, of the digest produced by this message digest.
|
void |
reset()
reset the digest back to it's initial state.
|
protected void |
squeeze(byte[] output,
int offset,
long outputLength) |
void |
update(byte in)
update the message digest with a single byte.
|
void |
update(byte[] in,
int inOff,
int len)
update the message digest with a block of bytes.
|
protected byte[] state
protected byte[] dataQueue
protected int rate
protected int bitsInQueue
protected int fixedOutputLength
protected boolean squeezing
protected int bitsAvailableForSqueezing
protected byte[] chunk
protected byte[] oneByte
public KeccakDigest()
public KeccakDigest(int bitLength)
public KeccakDigest(KeccakDigest source)
public java.lang.String getAlgorithmName()
Digest
getAlgorithmName
in interface Digest
public int getDigestSize()
Digest
getDigestSize
in interface Digest
public void update(byte in)
Digest
public void update(byte[] in, int inOff, int len)
Digest
public int doFinal(byte[] out, int outOff)
Digest
protected int doFinal(byte[] out, int outOff, byte partialByte, int partialBits)
public void reset()
Digest
public int getByteLength()
getByteLength
in interface ExtendedDigest
protected void absorb(byte[] data, int off, long databitlen)
protected void squeeze(byte[] output, int offset, long outputLength)