布莱克2b - 瓦姆
Blake2b 在WASM中执行
npm install @bitgo/blake2b-wasm
在支持WASM和Node.js 8+的浏览器中工作.
使用量
var blake2b = require('@bitgo/blake2b-wasm');
if (!blake2b.SUPPORTED) {
console.log('WebAssembly not supported by your runtime');
}
blake2b.ready(function (err) {
if (err) throw err;
var hash = blake2b()
.update(Buffer.from('hello')) // pass in a buffer or uint8array
.update(Buffer.from(' '))
.update(Buffer.from('world'))
.digest('hex');
console.log('Blake2b hash of "hello world" is %s', hash);
});
API 密码
var hash = blake2b([digestLength], [key], [salt], [personal])
创建新散列实例 . digestLength 默认为 32。 。 。 .
hash.update(data)
用新数据更新散列 . data 应该是缓冲器或金8阵列.
var digest = hash.digest([enc])
消化散装.
var promise = blake2b.ready([cb])
等待WASM代码加载. 为方便起见,返回WebAssembly实例承诺. 在即兴演奏之前,你必须至少叫一次这个.
浏览器演示
包含一个浏览器示例 实例.html 财务报告和审定财务报表 实例.js。 。 。 .
捐款
本单元大部分是在2008年12月31日WebAssembly实施的 blake2b.wat (英语) 文档. 此文件的格式是 S- Expressions, 可以通过做来编译到其二进制的 WASM 表达式
wat2wasm blake2b.wat -o blake2b.wasm
用于 WASM 模块的薄 JavaScript 包装器 wat2js数字 :
# also available as `npm run compile`
wat2js blake2b.wat -o blake2b.js
如果你没有 wat2wasm 在此安装的指令, https://github.com/Web Assembly/wabt 页面存档备份,存于互联网档案馆
许可证
麻省理工学院