For the latest news and information visit
The GNU Crypto project

gnu.crypto.jce.mac
Class HMacHavalSpi

java.lang.Object
  |
  +--javax.crypto.MacSpi
        |
        +--gnu.crypto.jce.mac.MacAdapter
              |
              +--gnu.crypto.jce.mac.HMacHavalSpi

public class HMacHavalSpi
extends gnu.crypto.jce.mac.MacAdapter

The implementation of the HMAC-HAVAL Service Provider Interface (SPI) Adapter.


Field Summary
protected  java.util.Map attributes
          Our MAC attributes.
protected  IMac mac
          Our MAC instance.
 
Constructor Summary
HMacHavalSpi()
           
 
Method Summary
 java.lang.Object clone()
          Returns a clone if the implementation is cloneable.
protected  byte[] engineDoFinal()
          Completes the MAC computation and resets the MAC for further use, maintaining the secret key that the MAC was initialized with.
protected  int engineGetMacLength()
          Returns the length of the MAC in bytes.
protected  void engineInit(java.security.Key key, java.security.spec.AlgorithmParameterSpec params)
          Initializes the MAC with the given (secret) key and algorithm parameters.
protected  void engineReset()
          Resets the MAC for further use, maintaining the secret key that the MAC was initialized with.
protected  void engineUpdate(byte b)
          Processes the given byte.
protected  void engineUpdate(byte[] in, int off, int len)
          Processes the first len bytes in input, starting at offset inclusive.
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

mac

protected IMac mac
Our MAC instance.


attributes

protected java.util.Map attributes
Our MAC attributes.

Constructor Detail

HMacHavalSpi

public HMacHavalSpi()
Method Detail

clone

public java.lang.Object clone()
Description copied from class: MacSpi
Returns a clone if the implementation is cloneable.

Overrides:
clone in class MacSpi
Returns:
a clone if the implementation is cloneable.

engineDoFinal

protected byte[] engineDoFinal()
Description copied from class: MacSpi
Completes the MAC computation and resets the MAC for further use, maintaining the secret key that the MAC was initialized with.

Specified by:
engineDoFinal in class MacSpi
Returns:
the MAC result.

engineGetMacLength

protected int engineGetMacLength()
Description copied from class: MacSpi
Returns the length of the MAC in bytes.

Specified by:
engineGetMacLength in class MacSpi
Returns:
the MAC length in bytes.

engineInit

protected void engineInit(java.security.Key key,
                          java.security.spec.AlgorithmParameterSpec params)
                   throws java.security.InvalidKeyException,
                          java.security.InvalidAlgorithmParameterException
Description copied from class: MacSpi
Initializes the MAC with the given (secret) key and algorithm parameters.

Specified by:
engineInit in class MacSpi
Parameters:
key - - the (secret) key.
params - - the algorithm parameters.
Throws:
java.security.InvalidKeyException - if the given key is inappropriate for initializing this MAC.
java.security.InvalidAlgorithmParameterException - - if the given algorithm parameters are inappropriate for this MAC.

engineReset

protected void engineReset()
Description copied from class: MacSpi
Resets the MAC for further use, maintaining the secret key that the MAC was initialized with.

Specified by:
engineReset in class MacSpi

engineUpdate

protected void engineUpdate(byte b)
Description copied from class: MacSpi
Processes the given byte.

Specified by:
engineUpdate in class MacSpi
Parameters:
b - - the input byte to be processed.

engineUpdate

protected void engineUpdate(byte[] in,
                            int off,
                            int len)
Description copied from class: MacSpi
Processes the first len bytes in input, starting at offset inclusive.

Specified by:
engineUpdate in class MacSpi
Parameters:
in - the input buffer.
off - the offset in input where the input starts.
len - the number of bytes to process.

For the latest news and information visit
The GNU Crypto project

Copyright © 2001, 2002, 2003, 2004 Free Software Foundation, Inc.