Class HmacSHA384

java.lang.Object
javax.crypto.MacSpi
com.ibm.crypto.hdwrCCA.provider.HmacSHA384
All Implemented Interfaces:
Cloneable

public final class HmacSHA384 extends MacSpi
This is an implementation of the HMAC-SHA384 algorithm.
  • Constructor Summary

    Constructors
    Constructor
    Description
    Standard constructor, creates a new HmacSHA384 instance.
  • Method Summary

    Modifier and Type
    Method
    Description
     
    protected byte[]
    computeHMACUsingCCA(byte[] text, int length, com.ibm.crypto.hdwrCCA.provider.HmacSHA.Segment segment)
    This method computes a partial ( or full ) HMACE on a given piece of text with a particular key used to initialize this instance of the HMAC.
    protected byte[]
    Completes the HMAC computation and resets the HMAC for further use, maintaining the secret key that the HMAC was initialized with.
    protected int
    Returns the length of the HMAC in bytes.
    protected void
    Initializes the HMAC with the given secret key and algorithm parameters.
    protected void
    Resets the HMAC for further use, maintaining the secret key that the HMAC was initialized with.
    protected void
    engineUpdate(byte input)
    Processes the given byte.
    protected void
    engineUpdate(byte[] input, int offset, int len)
    Processes the first len bytes in input, starting at offset.

    Methods inherited from class javax.crypto.MacSpi

    engineUpdate

    Methods inherited from class java.lang.Object

    equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

  • Method Details

    • engineGetMacLength

      protected int engineGetMacLength()
      Returns the length of the HMAC in bytes.
      Specified by:
      engineGetMacLength in class MacSpi
      Returns:
      the HMAC length in bytes.
    • engineInit

      protected void engineInit(Key key, AlgorithmParameterSpec params) throws InvalidKeyException, InvalidAlgorithmParameterException
      Initializes the HMAC with the given secret key and algorithm parameters.
      Specified by:
      engineInit in class MacSpi
      Parameters:
      key - the secret key, must be an instance of SecretKey
      params - the algorithm parameters. This parameter is ignored
      Throws:
      InvalidKeyException - if the given key is inappropriate for initializing this MAC.
      InvalidAlgorithmParameterException - if the given algorithm parameters are inappropriate for this MAC. This should not occur, since the params parameter is currently ignored.
    • engineUpdate

      protected void engineUpdate(byte input)
      Processes the given byte.
      Specified by:
      engineUpdate in class MacSpi
      Parameters:
      input - the input byte to be processed.
    • engineUpdate

      protected void engineUpdate(byte[] input, int offset, int len)
      Processes the first len bytes in input, starting at offset.
      Specified by:
      engineUpdate in class MacSpi
      Parameters:
      input - the input buffer.
      offset - the offset in input where the input starts.
      len - the number of bytes to process.
    • engineDoFinal

      protected byte[] engineDoFinal()
      Completes the HMAC computation and resets the HMAC for further use, maintaining the secret key that the HMAC was initialized with.
      Specified by:
      engineDoFinal in class MacSpi
      Returns:
      the HMAC result.
    • engineReset

      protected void engineReset()
      Resets the HMAC for further use, maintaining the secret key that the HMAC was initialized with.
      Specified by:
      engineReset in class MacSpi
    • clone

      public Object clone()
      Overrides:
      clone in class MacSpi
    • computeHMACUsingCCA

      protected byte[] computeHMACUsingCCA(byte[] text, int length, com.ibm.crypto.hdwrCCA.provider.HmacSHA.Segment segment)
      This method computes a partial ( or full ) HMACE on a given piece of text with a particular key used to initialize this instance of the HMAC.
      Parameters:
      text - The clear text you wish to perform a HMAC upon.
      length - The length of clear text you wish to perform a HMAC upon.
      segment - The Segment that you wish to use.
      Returns:
      A byte array containing the computed mac if the segment is LAST or ONLY. A null value will be returned otherwise.