将64位带符号整数转换为Node.js中的16字节缓冲区

时间:2018-09-24 20:05:57

标签: javascript node.js 64-bit

我正在寻找一种将以另一种语言生成的64位带符号整数转换为Node中的16字节缓冲区的方法。这与加密模块一起使用,因此缓冲区长度需要为16。

我知道Node本身不支持使用64位整数,因此我尝试使用一个名为int64-buffer的npm模块进行此操作,

var Int64BE = require("int64-buffer").Int64BE;
var big = new Int64BE(1966151284357350418);
var iv = big.toBuffer();
console.log('IV Length', iv.length);

这会生成一个缓冲区,但只有8个字节长。我已经在其他语言(例如C#)中看到了此操作,但是我不知道如何在Node中完成此操作。

C#示例:

long ivInt = long.Parse('1966151284357350418');
byte[] iv = BitConverter.GetBytes(ivInt);

这将产生一个16字节的数组,可用于解密。

0 个答案:

没有答案
相关问题