Class SM4

java.lang.Object
org.aoju.bus.crypto.symmetric.Crypto
org.aoju.bus.crypto.symmetric.SM4
All Implemented Interfaces:
Serializable, Decryptor, Encryptor

public class SM4 extends Crypto
国密对称堆成加密算法SM4实现 国密算法包括:
  1. 非对称加密和签名:SM2
  2. 摘要签名算法:SM3
  3. 对称加密:SM4
Since:
Java 17+
Author:
Kimi Liu
See Also:
  • Field Details

    • ALGORITHM_NAME

      public static final String ALGORITHM_NAME
  • Constructor Details

    • SM4

      public SM4()
      构造,使用随机密钥
    • SM4

      public SM4(byte[] key)
      构造
      Parameters:
      key - 密钥
    • SM4

      public SM4(Mode mode, Padding padding)
      构造,使用随机密钥
      Parameters:
      mode - 模式Mode
      padding - Padding补码方式
    • SM4

      public SM4(Mode mode, Padding padding, byte[] key)
      构造
      Parameters:
      mode - 模式Mode
      padding - Padding补码方式
      key - 密钥,支持三种密钥长度:128、192、256位
    • SM4

      public SM4(Mode mode, Padding padding, byte[] key, byte[] iv)
      构造
      Parameters:
      mode - 模式Mode
      padding - Padding补码方式
      key - 密钥,支持三种密钥长度:128、192、256位
      iv - 偏移向量,加盐
    • SM4

      public SM4(Mode mode, Padding padding, SecretKey key)
      构造
      Parameters:
      mode - 模式Mode
      padding - Padding补码方式
      key - 密钥,支持三种密钥长度:128、192、256位
    • SM4

      public SM4(Mode mode, Padding padding, SecretKey key, byte[] iv)
      构造
      Parameters:
      mode - 模式Mode
      padding - Padding补码方式
      key - 密钥,支持三种密钥长度:128、192、256位
      iv - 偏移向量,加盐
    • SM4

      public SM4(Mode mode, Padding padding, SecretKey key, IvParameterSpec iv)
      构造
      Parameters:
      mode - 模式Mode
      padding - Padding补码方式
      key - 密钥,支持三种密钥长度:128、192、256位
      iv - 偏移向量,加盐
    • SM4

      public SM4(String mode, String padding)
      构造
      Parameters:
      mode - 模式
      padding - 补码方式
    • SM4

      public SM4(String mode, String padding, byte[] key)
      构造
      Parameters:
      mode - 模式
      padding - 补码方式
      key - 密钥,支持三种密钥长度:128、192、256位
    • SM4

      public SM4(String mode, String padding, byte[] key, byte[] iv)
      构造
      Parameters:
      mode - 模式
      padding - 补码方式
      key - 密钥,支持三种密钥长度:128、192、256位
      iv - 加盐
    • SM4

      public SM4(String mode, String padding, SecretKey key)
      构造
      Parameters:
      mode - 模式
      padding - 补码方式
      key - 密钥,支持三种密钥长度:128、192、256位
    • SM4

      public SM4(String mode, String padding, SecretKey key, IvParameterSpec iv)
      构造
      Parameters:
      mode - 模式
      padding - 补码方式
      key - 密钥,支持三种密钥长度:128、192、256位
      iv - 加盐