public class AsconHash256
extends java.lang.Object
Additional details and the specification can be found in: NIST SP 800-232 (Initial Public Draft). For reference source code and implementation details, please see: Reference, highly optimized, masked C and ASM implementations of Ascon (NIST SP 800-232).
Modifier and Type | Class and Description |
---|---|
static class |
AsconBaseDigest.Friend |
protected static interface |
BufferBaseDigest.ProcessingBuffer |
protected static class |
BufferBaseDigest.ProcessingBufferType |
Modifier and Type | Field and Description |
---|---|
protected java.lang.String |
algorithmName |
protected int |
ASCON_PB_ROUNDS |
protected int |
BlockSize |
protected int |
DigestSize |
protected byte[] |
m_buf |
protected int |
m_bufPos |
protected BufferBaseDigest.ProcessingBuffer |
processor |
Constructor and Description |
---|
AsconHash256() |
Modifier and Type | Method and Description |
---|---|
int |
doFinal(byte[] output,
int outOff)
close the digest, producing the final digest value.
|
protected void |
ensureSufficientInputBuffer(byte[] input,
int inOff,
int len) |
protected void |
ensureSufficientOutputBuffer(byte[] output,
int outOff) |
protected void |
ensureSufficientOutputBuffer(byte[] output,
int outOff,
int len) |
protected void |
finish(byte[] output,
int outOff) |
java.lang.String |
getAlgorithmName()
return the algorithm name
|
int |
getByteLength()
Return the size in bytes of the internal buffer the digest applies it's compression
function to.
|
int |
getDigestSize()
return the size, in bytes, of the digest produced by this message digest.
|
protected int |
hash(byte[] output,
int outOff,
int outLen) |
protected long |
loadBytes(byte[] bytes,
int inOff) |
protected long |
loadBytes(byte[] bytes,
int inOff,
int n) |
protected long |
pad(int i) |
protected void |
padAndAbsorb() |
protected void |
processBytes(byte[] input,
int inOff) |
void |
reset()
reset the digest back to it's initial state.
|
protected void |
setBytes(long w,
byte[] bytes,
int inOff) |
protected void |
setBytes(long w,
byte[] bytes,
int inOff,
int n) |
protected void |
squeeze(byte[] output,
int outOff,
int len) |
void |
update(byte in)
update the message digest with a single byte.
|
void |
update(byte[] input,
int inOff,
int len)
update the message digest with a block of bytes.
|
protected int ASCON_PB_ROUNDS
protected int DigestSize
protected int BlockSize
protected byte[] m_buf
protected int m_bufPos
protected java.lang.String algorithmName
protected BufferBaseDigest.ProcessingBuffer processor
protected long pad(int i)
protected long loadBytes(byte[] bytes, int inOff)
protected long loadBytes(byte[] bytes, int inOff, int n)
protected void setBytes(long w, byte[] bytes, int inOff)
protected void setBytes(long w, byte[] bytes, int inOff, int n)
public void reset()
Digest
protected void processBytes(byte[] input, int inOff)
protected void finish(byte[] output, int outOff)
protected void padAndAbsorb()
protected void squeeze(byte[] output, int outOff, int len)
protected int hash(byte[] output, int outOff, int outLen)
protected void ensureSufficientOutputBuffer(byte[] output, int outOff, int len)
public java.lang.String getAlgorithmName()
Digest
getAlgorithmName
in interface Digest
public int getDigestSize()
Digest
getDigestSize
in interface Digest
public int getByteLength()
ExtendedDigest
getByteLength
in interface ExtendedDigest
public void update(byte in)
Digest
public void update(byte[] input, int inOff, int len)
Digest
public int doFinal(byte[] output, int outOff)
Digest
protected void ensureSufficientInputBuffer(byte[] input, int inOff, int len)
protected void ensureSufficientOutputBuffer(byte[] output, int outOff)