NodeJS: crypto-js输出的md5哈希值与bash不同



所以我有以下JS代码:

const Crypto = require("crypto-js");
const jsonFile = require('path/to/file.json');

console.log(Crypto.MD5(JSON.stringify(jsonFile)).toString());

问题是这个console.log产生的哈希值与我在bash中md5文件时产生的哈希值不同:

md5sum /path/to/file.json

我试过在toString中传递不同的编码,对javascript对象本身进行哈希等,但到目前为止我无法获得哈希匹配。

我怀疑导入,然后重新格式化您的内容没有帮助。我可以通过简单地将文件作为字符串读取来获得相同的哈希值:

const fs = require('fs');
const Crypto = require("crypto-js");
const data = fs.readFileSync('./input', 'utf8')
console.log(Crypto.MD5(data).toString())

相关内容

  • 没有找到相关文章