Module bus.crypto

Class SM4

All Implemented Interfaces:
Serializable, Decryptor, Encryptor

public class SM4 extends Crypto
国密对称堆成加密算法SM4实现

国密算法包括:

  1. 非对称加密和签名:SM2,asymmetric
  2. 摘要签名算法:SM3,digest
  3. 对称加密:SM4,symmetric
Since:
Java 17+
Author:
Kimi Liu
See Also:
  • Constructor Details

    • SM4

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

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

      public SM4(org.miaixz.bus.core.lang.Algorithm.Mode mode, Padding padding)
      构造,使用随机密钥
      Parameters:
      mode - 模式Algorithm.Mode
      padding - Padding补码方式
    • SM4

      public SM4(org.miaixz.bus.core.lang.Algorithm.Mode mode, Padding padding, byte[] key)
      构造
      Parameters:
      mode - 模式Algorithm.Mode
      padding - Padding补码方式
      key - 密钥,支持密钥长度:128位
    • SM4

      public SM4(org.miaixz.bus.core.lang.Algorithm.Mode mode, Padding padding, byte[] key, byte[] iv)
      构造
      Parameters:
      mode - 模式Algorithm.Mode
      padding - Padding补码方式
      key - 密钥,支持密钥长度:128位
      iv - 偏移向量,加盐
    • SM4

      public SM4(org.miaixz.bus.core.lang.Algorithm.Mode mode, Padding padding, SecretKey key)
      构造
      Parameters:
      mode - 模式Algorithm.Mode
      padding - Padding补码方式
      key - 密钥,支持密钥长度:128位
    • SM4

      public SM4(org.miaixz.bus.core.lang.Algorithm.Mode mode, Padding padding, SecretKey key, byte[] iv)
      构造
      Parameters:
      mode - 模式Algorithm.Mode
      padding - Padding补码方式
      key - 密钥,支持密钥长度:128位
      iv - 偏移向量,加盐
    • SM4

      public SM4(org.miaixz.bus.core.lang.Algorithm.Mode mode, Padding padding, SecretKey key, IvParameterSpec iv)
      构造
      Parameters:
      mode - 模式Algorithm.Mode
      padding - Padding补码方式
      key - 密钥,支持密钥长度:128位
      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位
    • SM4

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

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

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