Class CBCBlockCipher

java.lang.Object
org.aoju.bus.crypto.digest.mac.BCMacEngine
org.aoju.bus.crypto.digest.mac.CBCBlockCipher
All Implemented Interfaces:
MacEngine
Direct Known Subclasses:
SM4

public class CBCBlockCipher extends BCMacEngine
CBCBlockCipherMac实现的MAC算法,使用CBC Block方式
Since:
Java 17+
Author:
Kimi Liu
  • Constructor Details

    • CBCBlockCipher

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

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

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

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

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

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

    • init

      public CBCBlockCipher init(org.bouncycastle.crypto.BlockCipher cipher, org.bouncycastle.crypto.CipherParameters params)
      初始化
      Parameters:
      cipher - BlockCipher
      params - 参数,例如密钥可以用KeyParameter
      Returns:
      this
      See Also: