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

    函数 constantTimeEqual

    • 尽量避免按内容提前返回的字节数组比较。

      用途:MAC / AEAD tag / HMAC / SM2 C3 哈希等敏感值比较。普通 === 或循环早返回会随首个不匹配位置变化执行时间。JavaScript/JIT 运行时不提供 严格恒时保证,本函数只避免显式按内容提前退出。

      语义(与 Java cn.gmkit.core.Bytes.constantTimeEquals 对齐):

      • 任一侧为 null/undefined 返回 false。
      • 长度不同返回 false(长度通常由消息格式公开,非机密)。
      • 两侧均为空数组返回 true。
      • 长度相同时全字节扫描,不因首字节匹配就早返回。

      参数

      • a: Uint8Array<ArrayBufferLike> | null | undefined

        第一个字节数组

      • b: Uint8Array<ArrayBufferLike> | null | undefined

        第二个字节数组

      返回 boolean

      内容相同返回 true