@bitgo/blake2b

中文文档
3.2.4发布于 2023/08/05ISCCommonJS近 30 天下载 40.3万

纯 JavaScript 中的 Blake2b( 64- bit 版本)

中文使用文档
文档目录9 节
  1. 使用量
  2. API 密码
  3. var hash = blake2b(outLength, [key], [salt], [personal], [n…
  4. var hash = hash.update(input)
  5. var out = hash.digest(out)
  6. 常数
  7. 安装
  8. 测试向量
  9. 许可证

@bitgo/blake2b

Build Status

纯 JavaScript 中的 Blake2b( 64- bit 版本)

此模块基于 @ dcposch b. 实施《布拉克2》b,经过一些修改:

  • 这个模块需要您在 out 缓冲,保存分配
  • 此模块允许您设置 salt 财务报告和审定财务报表 personal 参数
  • 此模块导出 libsodium 样式参数的常数
  • 使用 WASM 版本( 在支持的情况下) 进行大规模性能提升

所有功劳都归于@dcposch ,因为做了艰苦的工作 移植 从 C 到 JavaScript 执行 .

使用量

var blake2b = require('@bitgo/blake2b');

var output = new Uint8Array(64);
var input = Buffer.from('hello world');

console.log('hash:', blake2b(output.length).update(input).digest('hex'));

API 密码

var hash = blake2b(outLength, [key], [salt], [personal], [noAssert = false])

创建新散列实例, 可选择使用 key, (中文(简体) ), salt 财务报告和审定财务报表 personal设置旁通输入断言 noAssert 改为 true。 。 。 .

所有参数必须是 Uint8Array, (中文(简体) ), Buffer 或具有兼容性的另一个对象 API (英语). 所有参数还必须满足下列限制,或 AssertionError 将被抛出(除非 noAssert = true:

  • outLength 必须在以下常数定义的字节范围内.
  • key 是可选的,但必须在常数定义的字节范围内 如果给出,则在下文。 此值必须保密,并可用于创建 前缀-MAC.
  • salt 是可选的,但必须准确 SALTBYTES,如果给出。 你用得着 此参数为每个用户 ID,或本地版本方案的一种。 这个 值不需要保密.
  • personal 是可选的,但必须准确 PERSONALBYTES,如果给出。 你们可以 使用此参数作为类app id,或全局版本方案. 这个 值不需要保密.

var hash = hash.update(input)

以新方式更新散列 input后调用此方法 .digest 将投出 错误.

var out = hash.digest(out)

完成散列并将摘要写给 out。 。 。 . out 必须完全平等 改为 outLength 输入 blake2b 方法.

也可以通过 hex 将散列作为十六进制字符串或没有参数 将散列带回新的Uint8箭头.

常数

  • blake2b.BYTES_MIN 最小长度 out
  • blake2b.BYTES_MAX 最长长度 out
  • blake2b.BYTES 建议的默认长度 out
  • blake2b.KEYBYTES_MIN 最小长度 key
  • blake2b.KEYBYTES_MAX 最长长度 key
  • blake2b.KEYBYTES 建议的默认长度 key
  • blake2b.SALTBYTES 所需长度 salt
  • blake2b.PERSONALBYTES 所需长度 personal

安装

npm install @bitgo/blake2b

测试向量

此寄存器包括测试向量 {outlen, out, input, key, salt, personal} 测试符合性的对象 违反《公约》和其他规定:

许可证

公务员制度委员会

版本与发布记录

@bitgo/blake2b 共发布 17 个版本,首次发布于 2021/04/13;过去 12 个月发布了 0 个版本。

版本发布日期距今
3.2.4latest2023/08/053 年前
3.2.32023/07/293 年前
3.2.22023/07/193 年前
3.2.12022/11/303 年前
3.2.02022/10/194 年前
3.0.42022/10/014 年前

其他发布通道:dev → 3.1.0-dev.0,rc → 3.0.4-rc.0。

关于 @bitgo/blake2b 的常见问题

@bitgo/blake2b 是什么?

纯 JavaScript 中的 Blake2b( 64- bit 版本)

如何安装 @bitgo/blake2b?

在项目目录运行 npm install @bitgo/blake2b,或使用 pnpm add / yarn add / bun add。

@bitgo/blake2b 支持 TypeScript 吗?

该包的 package.json 没有声明类型入口。需要类型提示时,可以在 npm 上查找社区维护的 @types/bitgo__blake2b 是否存在。

@bitgo/blake2b 支持 ESM 还是 CommonJS?

以 CommonJS 形式发布,可以直接 require();在 ES Module 项目中也可以用 import 引入(Node.js 会把 module.exports 作为默认导出)。

@bitgo/blake2b 可以商用吗?

@bitgo/blake2b 使用 ISC 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@bitgo/blake2b 的下载量有多少?

根据 npm 官方下载统计,@bitgo/blake2b 在 2026/10/08 – 2026/11/06 这 30 天内被下载 403,400 次,日均约 13,447 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@bitgo/blake2b 还在维护吗?

最新版本 3.2.4 发布于 2023/08/05(3 年前);至今共发布 17 个版本,其中过去 12 个月发布了 0 个;首次发布于 2021/04/13。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。