Overview | Package | Class | Tree | Deprecated | Index | Help
| Bouncy Castle Cryptography Library 1.85
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.bouncycastle.crypto.digests
Class AsconXof128

    java.lang.Object
      org.bouncycastle.crypto.digests.BufferBaseDigest
          org.bouncycastle.crypto.digests.AsconBaseDigest
              org.bouncycastle.crypto.digests.AsconXofBase
                  org.bouncycastle.crypto.digests.AsconXof128

All Implemented Interfaces:
  Digest, ExtendedDigest, Xof

public class AsconXof128
extends org.bouncycastle.crypto.digests.AsconXofBase

Ascon-XOF128 was introduced in NIST Special Publication (SP) 800-232

Additional details and the specification can be found in: NIST SP 800-232 Ascon-Based Lightweight Cryptography Standards for Constrained Devices. For reference source code and implementation details, please see: Reference, highly optimized, masked C and ASM implementations of Ascon (NIST SP 800-232).

Nested Class Summary
`static class` | `AsconBaseDigest.Friend`
`protected static interface` | `BufferBaseDigest.ProcessingBuffer`
`protected static class` | `BufferBaseDigest.ProcessingBufferType`

Field Summary
`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 Summary
`AsconXof128()`

Method Summary
`int` | `doFinal(byte[] output, int outOff)` close the digest, producing the final digest value.
`int` | `doFinal(byte[] output, int outOff, int outLen)` Output the results of the final calculation for this digest to outLen number of bytes.
`int` | `doOutput(byte[] output, int outOff, int outLen)` Start outputting the results of the final calculation for this digest.
`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.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Methods inherited from interface org.bouncycastle.crypto.ExtendedDigest
`getByteLength`

Methods inherited from interface org.bouncycastle.crypto.Digest
`doFinal, getAlgorithmName, getDigestSize`

Field Detail

### ASCON_PB_ROUNDS

    protected int ASCON_PB_ROUNDS

### DigestSize

    protected int DigestSize

### BlockSize

    protected int BlockSize

### m_buf

    protected byte[] m_buf

### m_bufPos

    protected int m_bufPos

### algorithmName

    protected java.lang.String algorithmName

### processor

    protected BufferBaseDigest.ProcessingBuffer processor

Constructor Detail

### AsconXof128

    public AsconXof128()

Method Detail

### pad

    protected long pad(int i)

### loadBytes

    protected long loadBytes(byte[] bytes,
                             int inOff)

### loadBytes

    protected long loadBytes(byte[] bytes,
                             int inOff,
                             int n)

### setBytes

    protected void setBytes(long w,
                            byte[] bytes,
                            int inOff)

### setBytes

    protected void setBytes(long w,
                            byte[] bytes,
                            int inOff,
                            int n)

### reset

    public void reset()

  Description copied from interface: `Digest`
  reset the digest back to it's initial state.

### update

    public void update(byte in)

  Description copied from interface: `Digest`
  update the message digest with a single byte.

  Specified by:
    `update` in interface `Digest`

### update

    public void update(byte[] input,
                       int inOff,
                       int len)

  Description copied from interface: `Digest`
  update the message digest with a block of bytes.

  Specified by:
    `update` in interface `Digest`

### doOutput

    public int doOutput(byte[] output,
                        int outOff,
                        int outLen)

  Description copied from interface: `Xof`
  Start outputting the results of the final calculation for this digest. Unlike doFinal, this method will continue producing output until the Xof is explicitly reset, or signals otherwise.

  Specified by:
    `doOutput` in interface `Xof`
  Parameters:
    `output` - output array to write the output bytes to.
    `outOff` - offset to start writing the bytes at.
    `outLen` - the number of output bytes requested.
  Returns:
    the number of bytes written

### doFinal

    public int doFinal(byte[] output,
                       int outOff,
                       int outLen)

  Description copied from interface: `Xof`
  Output the results of the final calculation for this digest to outLen number of bytes.

  Specified by:
    `doFinal` in interface `Xof`
  Parameters:
    `output` - output array to write the output bytes to.
    `outOff` - offset to start writing the bytes at.
    `outLen` - the number of output bytes requested.
  Returns:
    the number of bytes written

### padAndAbsorb

    protected void padAndAbsorb()

### processBytes

    protected void processBytes(byte[] input,
                                int inOff)

### finish

    protected void finish(byte[] output,
                          int outOff)

### squeeze

    protected void squeeze(byte[] output,
                           int outOff,
                           int len)

### hash

    protected int hash(byte[] output,
                       int outOff,
                       int outLen)

### ensureSufficientOutputBuffer

    protected void ensureSufficientOutputBuffer(byte[] output,
                                                int outOff,
                                                int len)

### getAlgorithmName

    public java.lang.String getAlgorithmName()

  Description copied from interface: `Digest`
  return the algorithm name

  Specified by:
    `getAlgorithmName` in interface `Digest`
  Returns:
    the algorithm name

### getDigestSize

    public int getDigestSize()

  Description copied from interface: `Digest`
  return the size, in bytes, of the digest produced by this message digest.

  Specified by:
    `getDigestSize` in interface `Digest`
  Returns:
    the size, in bytes, of the digest produced by this message digest.

### getByteLength

    public int getByteLength()

  Description copied from interface: `ExtendedDigest`
  Return the size in bytes of the internal buffer the digest applies it's compression function to.

  Specified by:
    `getByteLength` in interface `ExtendedDigest`
  Returns:
    byte length of the digests internal buffer.

### doFinal

    public int doFinal(byte[] output,
                       int outOff)

  Description copied from interface: `Digest`
  close the digest, producing the final digest value. The doFinal call leaves the digest reset.

  Specified by:
    `doFinal` in interface `Digest`
  Parameters:
    `output` - the array the digest is to be copied into.
    `outOff` - the offset into the out array the digest is to start at.

### ensureSufficientInputBuffer

    protected void ensureSufficientInputBuffer(byte[] input,
                                               int inOff,
                                               int len)

### ensureSufficientOutputBuffer

    protected void ensureSufficientOutputBuffer(byte[] output,
                                                int outOff)

Overview | Package | Class | Tree | Deprecated | Index | Help
| Bouncy Castle Cryptography Library 1.85
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD