org.bouncycastle.crypto

Interface Mac

public interface Mac

The base interface for implementations of message authentication codes (MACs).
Method Summary
intdoFinal(byte[] out, int outOff)
Compute the final statge of the MAC writing the output to the out parameter.
StringgetAlgorithmName()
Return the name of the algorithm the MAC implements.
intgetMacSize()
Return the block size for this MAC (in bytes).
voidinit(CipherParameters params)
Initialise the MAC.
voidreset()
Reset the MAC.
voidupdate(byte in)
add a single byte to the mac for processing.
voidupdate(byte[] in, int inOff, int len)

Method Detail

doFinal

public int doFinal(byte[] out, int outOff)
Compute the final statge of the MAC writing the output to the out parameter.

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

Parameters: out the array the MAC is to be output to. outOff the offset into the out buffer the output is to start at.

Throws: DataLengthException if there isn't enough space in out. IllegalStateException if the MAC is not initialised.

getAlgorithmName

public String getAlgorithmName()
Return the name of the algorithm the MAC implements.

Returns: the name of the algorithm the MAC implements.

getMacSize

public int getMacSize()
Return the block size for this MAC (in bytes).

Returns: the block size for this MAC in bytes.

init

public void init(CipherParameters params)
Initialise the MAC.

Parameters: params the key and other data required by the MAC.

Throws: IllegalArgumentException if the params argument is inappropriate.

reset

public void reset()
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).

update

public void update(byte in)
add a single byte to the mac for processing.

Parameters: in the byte to be processed.

Throws: IllegalStateException if the MAC is not initialised.

update

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

Parameters: in the array containing the input. inOff the index in the array the data begins at. len the length of the input starting at inOff.

Throws: IllegalStateException if the MAC is not initialised. DataLengthException if there isn't enough data in in.