keccak256 不返回缓冲区



我有以下内容:

static combinedHash(first: Buffer, second: Buffer): Buffer {
if (!first) {
return second
}
if (!second) {
return first
}
return keccak256(MerkleTree.sortAndConcat(first, second))
}

keccak256是从ethereumjs-utils导入的

似乎keccak256返回Buffer

我想做的是我想改变keccak256ethereumjs-utilsethers/lib/utils,但新的keccak256不返回缓冲区。我尝试了很多东西,但结果都不一样。有什么想法吗?最后的结果应该是combinedHash函数返回相同的东西,所以它应该返回Buffer

有什么想法吗?

ethers/lib/utilsfunctionkeccak256()返回以0x为前缀的十六进制字符串表示的哈希值

所以你需要从这个十六进制中创建一个没有0x前缀的缓冲区。

const keccakString = keccak256(MerkleTree.sortAndConcat(first, second))
return Buffer.from(keccakString.slice('0x'.length), 'hex')

最新更新