Package cn.gmkit.sm4

Class SM4Options

java.lang.Object
cn.gmkit.sm4.SM4Options

public final class SM4Options extends Object
SM4 配置项。

同一对象同时用于加密和解密。对 GCM/CCM 解密,认证标签通过 tag() 提供。

  • Method Details

    • builder

      public static SM4Options.Builder builder()
      创建构建器。
      Returns:
      构建器实例
    • mode

      public SM4CipherMode mode()
      获取工作模式,默认值为 ECB
      Returns:
      SM4 工作模式
    • padding

      public SM4Padding padding()
      获取填充模式,默认值为 PKCS7
      Returns:
      填充策略
    • iv

      public byte[] iv()
      获取 IV 或 nonce。
      Returns:
      IV/nonce 的防御性拷贝,未设置时返回 null
    • aad

      public byte[] aad()
      获取 AEAD 附加认证数据。
      Returns:
      AAD 的防御性拷贝,未设置时返回 null
    • tagLength

      public Integer tagLength()
      获取认证标签长度,单位为字节。
      Returns:
      标签长度,未显式配置时返回 null
    • tag

      public byte[] tag()
      获取解密使用的认证标签。
      Returns:
      标签的防御性拷贝,未设置时返回 null
    • securityContext

      public GmSecurityContext securityContext()
      获取安全上下文。
      Returns:
      加密 Provider 与随机源配置
    • hasTag

      public boolean hasTag()
      是否显式配置了认证标签。
      Returns:
      配置了标签时返回 true