Bouncy Castle Cryptography Library 1.81

org.bouncycastle.crypto.macs
Class SipHash128

java.lang.Object
  extended byorg.bouncycastle.crypto.macs.SipHash
      extended byorg.bouncycastle.crypto.macs.SipHash128
All Implemented Interfaces:
Mac

public class SipHash128
extends SipHash

Implementation of SipHash with 128 bit output.

Based on the SipHash and the C reference implementation https://github.com/veorq/SipHash.


Field Summary
 
Fields inherited from class org.bouncycastle.crypto.macs.SipHash
c, d, k0, k1, m, v0, v1, v2, v3, wordCount, wordPos
 
Constructor Summary
SipHash128()
          SipHash128-2-4
SipHash128(int c, int d)
          SipHash128-c-d
 
Method Summary
 long doFinal()
           
 int doFinal(byte[] out, int outOff)
          Compute the final stage of the MAC writing the output to the out parameter.
 java.lang.String getAlgorithmName()
          Return the name of the algorithm the MAC implements.
 int getMacSize()
          Return the block size for this MAC (in bytes).
 void reset()
          Reset the MAC.
 
Methods inherited from class org.bouncycastle.crypto.macs.SipHash
applySipRounds, init, processMessageWord, rotateLeft, update, update
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SipHash128

public SipHash128()
SipHash128-2-4


SipHash128

public SipHash128(int c,
                  int d)
SipHash128-c-d

Parameters:
c - the number of compression rounds
d - the number of finalization rounds
Method Detail

getAlgorithmName

public java.lang.String getAlgorithmName()
Description copied from interface: Mac
Return the name of the algorithm the MAC implements.

Specified by:
getAlgorithmName in interface Mac
Overrides:
getAlgorithmName in class SipHash

getMacSize

public int getMacSize()
Description copied from interface: Mac
Return the block size for this MAC (in bytes).

Specified by:
getMacSize in interface Mac
Overrides:
getMacSize in class SipHash

doFinal

public long doFinal()
             throws DataLengthException,
                    java.lang.IllegalStateException
Overrides:
doFinal in class SipHash
Throws:
DataLengthException
java.lang.IllegalStateException

doFinal

public int doFinal(byte[] out,
                   int outOff)
            throws DataLengthException,
                   java.lang.IllegalStateException
Description copied from interface: Mac
Compute the final stage of the MAC writing the output to the out parameter.

doFinal leaves the MAC in the same state it was after the last init.

Specified by:
doFinal in interface Mac
Overrides:
doFinal in class SipHash
Throws:
DataLengthException
java.lang.IllegalStateException

reset

public void reset()
Description copied from interface: Mac
Reset the MAC. At the end of resetting the MAC should be in the in the same state it was after the last init (if there was one).

Specified by:
reset in interface Mac
Overrides:
reset in class SipHash

Bouncy Castle Cryptography Library 1.81