Class GOST3411_2012Digest

  • All Implemented Interfaces:
    io.anyline.nfc.bouncycastle.crypto.Digest , io.anyline.nfc.bouncycastle.crypto.ExtendedDigest , io.anyline.nfc.bouncycastle.util.Memoable

    
    public abstract class GOST3411_2012Digest
     implements ExtendedDigest, Memoable
                        

    Base class for GOST3411-2012 256-bit and GOST3411-2012 512-bit digests.

    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
    • Field Summary

      Fields 
      Modifier and Type Field Description
    • Enum Constant Summary

      Enum Constants 
      Enum Constant Description
    • Method Summary

      Modifier and Type Method Description
      int getByteLength() Return the size in bytes of the internal buffer the digest applies it's compression function to.
      abstract String getAlgorithmName() return the algorithm name
      abstract int getDigestSize() return the size, in bytes, of the digest produced by this message digest.
      void update(byte in) update the message digest with a single byte.
      void update(Array<byte> in, int inOff, int len) update the message digest with a block of bytes.
      int doFinal(Array<byte> out, int outOff) close the digest, producing the final digest value.
      void reset() reset the digest back to it's initial state.
      abstract Memoable copy() Produce a copy of this object with its configuration and in its current state.
      void reset(Memoable other) Restore a copied object state into this object.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • GOST3411_2012Digest

        GOST3411_2012Digest(Array<byte> IV)
    • Method Detail

      • getByteLength

         int getByteLength()

        Return the size in bytes of the internal buffer the digest applies it's compression function to.

        Returns:

        byte length of the digests internal buffer.

      • getDigestSize

         abstract int getDigestSize()

        return the size, in bytes, of the digest produced by this message digest.

        Returns:

        the size, in bytes, of the digest produced by this message digest.

      • update

         void update(byte in)

        update the message digest with a single byte.

        Parameters:
        in - the input byte to be entered.
      • update

         void update(Array<byte> in, int inOff, int len)

        update the message digest with a block of bytes.

        Parameters:
        in - the byte array containing the data.
        inOff - the offset into the byte array where the data starts.
        len - the length of the data.
      • doFinal

         int doFinal(Array<byte> out, int outOff)

        close the digest, producing the final digest value. The doFinal call leaves the digest reset.

        Parameters:
        out - the array the digest is to be copied into.
        outOff - the offset into the out array the digest is to start at.
      • reset

         void reset()

        reset the digest back to it's initial state.

      • copy

         abstract Memoable copy()

        Produce a copy of this object with its configuration and in its current state.

        The returned object may be used simply to store the state, or may be used as a similar object starting from the copied state.

      • reset

         void reset(Memoable other)

        Restore a copied object state into this object.

        Implementations of this method should try to avoid or minimise memory allocation to perform the reset.

        Parameters:
        other - an object originally copied from an object of the same type as this instance.