java.lang.Object
org.miaixz.bus.core.lang.wrapper.SimpleWrapper<Mac>
org.miaixz.bus.crypto.builtin.digest.mac.JCEMac
All Implemented Interfaces:
org.miaixz.bus.core.lang.Wrapper<Mac>, Mac

public class JCEMac extends org.miaixz.bus.core.lang.wrapper.SimpleWrapper<Mac> implements Mac
JDK提供的的MAC算法实现引擎,使用Mac 实现摘要 当引入BouncyCastle库时自动使用其作为Provider
Since:
Java 17+
Author:
Kimi Liu
  • Constructor Details

    • JCEMac

      public JCEMac(String algorithm, byte[] key)
      构造
      Parameters:
      algorithm - 算法
      key - 密钥
    • JCEMac

      public JCEMac(String algorithm, Key key)
      构造
      Parameters:
      algorithm - 算法
      key - 密钥
    • JCEMac

      public JCEMac(String algorithm, Key key, AlgorithmParameterSpec spec)
      构造
      Parameters:
      algorithm - 算法
      key - 密钥
      spec - AlgorithmParameterSpec
  • Method Details

    • update

      public void update(byte[] in)
      Description copied from interface: Mac
      加入需要被摘要的内容
      Specified by:
      update in interface Mac
      Parameters:
      in - 内容
    • update

      public void update(byte[] in, int inOff, int len)
      Description copied from interface: Mac
      加入需要被摘要的内容
      Specified by:
      update in interface Mac
      Parameters:
      in - 内容
      inOff - 内容起始位置
      len - 内容长度
    • doFinal

      public byte[] doFinal()
      Description copied from interface: Mac
      结束并生成摘要
      Specified by:
      doFinal in interface Mac
      Returns:
      摘要内容
    • reset

      public void reset()
      Description copied from interface: Mac
      重置
      Specified by:
      reset in interface Mac
    • getMacLength

      public int getMacLength()
      Description copied from interface: Mac
      获取MAC算法块大小
      Specified by:
      getMacLength in interface Mac
      Returns:
      MAC算法块大小
    • getAlgorithm

      public String getAlgorithm()
      Description copied from interface: Mac
      获取当前算法
      Specified by:
      getAlgorithm in interface Mac
      Returns:
      算法