未存档的值与原始值不匹配

时间:2019-07-19 03:27:33

标签: node.js compression adm-zip

我正在归档要发送的文档及其签名以进行签名验证。当我取消存档数据时,它看起来一样,但是验证失败,并且当我与'==='进行比较时,它返回false。

这是我的签名功能,还可以压缩值。

const signDoc = async (input) => {
  const signer = crypto.createSign('RSA-SHA256');
  const pem = privateKey.toString('ascii')
  signer.update(input);
  const signedDoc = signer.sign(pem, 'hex');

  fs.writeFileSync('./signeddocument/signeddoc.txt', signedDoc);

  var zip = new azip();
  zip.addLocalFile('./signeddocument/signeddoc.txt');

  zip.addLocalFile("./Good1.txt");

  zip.writeZip(archivePath + '/Archive.zip');
};

这将创建签名,然后将要签名的文件和签名都存档,并将其写入本地目录。

但是当我运行它时,它们都返回false

 const efile = fs.readFileSync(unarchivePath + 'Archive/Good1.txt');
 const file = fs.readFileSync('./Good1.txt');

  if (efile === file) {
    console.log(true);
  } else {
    console.log(false);
  }

  const esig = fs.readFileSync(unarchivePath +'Archive/signeddoc.txt');
  const sig = fs.readFileSync('./signeddocument/signeddoc.txt');

  if (esig === sig){
    console.log(true);
  } else {
    console.log(false);
  }

它们都返回false,导致我的公钥签名验证失败。

预期结果应返回true。

实际结果是错误的。

0 个答案:

没有答案