gmkitx API - v0.10.1
    正在准备搜索索引...

    类 SM3

    SM3 哈希算法的面向对象封装

    SM3 是中国国家密码管理局发布的密码杂凑算法, 输出长度为 256 位(32 字节)。

    支持两种使用方式:

    1. 静态方法:一次性计算哈希
    2. 实例方法:增量哈希(适合大数据量分块处理)
    // 静态方法
    const hash = SM3.digest('abc');

    // 增量哈希
    const sm3 = new SM3();
    sm3.update('a').update('bc');
    const result = sm3.digest();
    索引
    • 完成哈希计算并返回摘要 注意:调用此方法后会清空内部状态

      参数

      • 可选options: SM3Options

        哈希选项(可覆盖实例的输出格式)

      返回 string

      哈希摘要

      输出格式无效时抛出错误;失败时当前增量状态不会被重置

    • 重置哈希器状态

      返回 this

      当前实例(便于链式调用)

    • 更新哈希状态(增量哈希)

      参数

      • data: string | Uint8Array<ArrayBufferLike>

        要追加的数据

      返回 this

      当前实例(便于链式调用)

    • 计算 SM3 哈希摘要(静态方法)

      参数

      • data: string | Uint8Array<ArrayBufferLike>

        要哈希的数据

      • 可选options: SM3Options

        哈希选项

      返回 string

      哈希摘要(默认返回十六进制字符串)

      输入类型或输出格式无效时抛出错误

    • 计算 SM3-HMAC(静态方法)

      参数

      • key: string | Uint8Array<ArrayBufferLike>

        HMAC 密钥

      • data: string | Uint8Array<ArrayBufferLike>

        要认证的数据

      • 可选options: SM3Options

        哈希选项

      返回 string

      HMAC 值(默认返回十六进制字符串)

      key、消息类型或输出格式无效时抛出错误