Class CBCBlockCipherMac

java.lang.Object
org.miaixz.bus.core.lang.wrapper.SimpleWrapper<org.bouncycastle.crypto.Mac>
org.miaixz.bus.crypto.builtin.digest.mac.BCMac
org.miaixz.bus.crypto.builtin.digest.mac.CBCBlockCipherMac
All Implemented Interfaces:
org.miaixz.bus.core.lang.Wrapper<org.bouncycastle.crypto.Mac>, Mac
Direct Known Subclasses:
SM4Mac

public class CBCBlockCipherMac extends BCMac
CBCBlockCipherMac实现的MAC算法,使用CBC Block方式
Since:
Java 17+
Author:
Kimi Liu
  • Field Summary

    Fields inherited from class org.miaixz.bus.core.lang.wrapper.SimpleWrapper

    raw
  • Constructor Summary

    Constructors
    Constructor
    Description
    CBCBlockCipherMac(org.bouncycastle.crypto.BlockCipher cipher, int macSizeInBits, byte[] key)
    构造
    CBCBlockCipherMac(org.bouncycastle.crypto.BlockCipher digest, int macSizeInBits, byte[] key, byte[] iv)
    构造
    CBCBlockCipherMac(org.bouncycastle.crypto.BlockCipher cipher, int macSizeInBits, Key key)
    构造
    CBCBlockCipherMac(org.bouncycastle.crypto.BlockCipher digest, int macSizeInBits, Key key, byte[] iv)
    构造
    CBCBlockCipherMac(org.bouncycastle.crypto.BlockCipher cipher, int macSizeInBits, org.bouncycastle.crypto.CipherParameters params)
    构造
    CBCBlockCipherMac(org.bouncycastle.crypto.macs.CBCBlockCipherMac mac, org.bouncycastle.crypto.CipherParameters params)
    构造
  • Method Summary

    Methods inherited from class org.miaixz.bus.crypto.builtin.digest.mac.BCMac

    doFinal, getAlgorithm, getMacLength, reset, update

    Methods inherited from class org.miaixz.bus.core.lang.wrapper.SimpleWrapper

    getRaw

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface org.miaixz.bus.crypto.builtin.digest.mac.Mac

    digest, update
  • Constructor Details

    • CBCBlockCipherMac

      public CBCBlockCipherMac(org.bouncycastle.crypto.BlockCipher digest, int macSizeInBits, Key key, byte[] iv)
      构造
      Parameters:
      digest - 摘要算法,为Digest 的接口实现
      macSizeInBits - mac结果的bits长度,必须为8的倍数
      key - 密钥
      iv - 加盐
    • CBCBlockCipherMac

      public CBCBlockCipherMac(org.bouncycastle.crypto.BlockCipher digest, int macSizeInBits, byte[] key, byte[] iv)
      构造
      Parameters:
      digest - 摘要算法,为Digest 的接口实现
      macSizeInBits - mac结果的bits长度,必须为8的倍数
      key - 密钥
      iv - 加盐
    • CBCBlockCipherMac

      public CBCBlockCipherMac(org.bouncycastle.crypto.BlockCipher cipher, int macSizeInBits, Key key)
      构造
      Parameters:
      cipher - 算法,为BlockCipher 的接口实现
      macSizeInBits - mac结果的bits长度,必须为8的倍数
      key - 密钥
    • CBCBlockCipherMac

      public CBCBlockCipherMac(org.bouncycastle.crypto.BlockCipher cipher, int macSizeInBits, byte[] key)
      构造
      Parameters:
      cipher - 算法,为BlockCipher 的接口实现
      macSizeInBits - mac结果的bits长度,必须为8的倍数
      key - 密钥
    • CBCBlockCipherMac

      public CBCBlockCipherMac(org.bouncycastle.crypto.BlockCipher cipher, int macSizeInBits, org.bouncycastle.crypto.CipherParameters params)
      构造
      Parameters:
      cipher - 算法,为BlockCipher 的接口实现
      macSizeInBits - mac结果的bits长度,必须为8的倍数
      params - 参数,例如密钥可以用KeyParameter
    • CBCBlockCipherMac

      public CBCBlockCipherMac(org.bouncycastle.crypto.macs.CBCBlockCipherMac mac, org.bouncycastle.crypto.CipherParameters params)
      构造
      Parameters:
      mac - CBCBlockCipherMac
      params - 参数,例如密钥可以用KeyParameter