跳到正文
豫言包管理
← 全部包

豫言操作系统密码摘要适配 0.2.0

豫言 · 库

以云工密码原语计算 SHA-256 摘要,并以豫言实现尽力恒时的文字比较。

密码摘要云工适配

把 UTF-8 字符串或字节串交给云工 SHA-256 原语(Web Crypto digest),逐字节转换为小写十六进制,转换共用 云工宿主 字节。豫 的 字节串转小写十六进制;文字摘要就是字符串的原字节交给字节摘要,二者结果恒同。输入超过宿主值桥的 16 MiB 交换上限时先在豫言里抛出异常,避免宿主 JS 错误穿出 Wasm。应用只接收摘要文字,不接收宿主密码对象。

恒时相等文字 完全用豫言写成,不依赖宿主:长度相同的两个字符串逐字节取整数差、把差的平方累加,最后比较累计值是否为零;循环体没有依赖数据的分支,也不提前退出。Node 测试用 64 KiB 的两个字符串比较首字节相异与末字节相异的耗时,二者同量级(提前退出的实现会相差数百倍)。

依赖

查看包配置

上传历史

当前上传修订:1 ·

  1. 上传修订 1
    下载 ZIP

包层级

父包:豫言操作系统适配

没有子包。