微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Nodejs Tar然后加密丢失的大部分文件

如何解决Nodejs Tar然后加密丢失的大部分文件

我正在尝试使用 nodejs tar 然后加密文件,目前使用模块“fs”、“tar”和“createCipheriv”。我有一个 tar 函数,它在没有伴随的加密流和一个加密写入/读取流的情况下工作,它将接受它得到的任何东西并对其进行加密,但是当顺序使用时,tar 完成它的第一个“块”(大约 5mb)并继续开始加密未能对文件的其余部分进行 tar。

如何强制写入流在开始加密之前等待整个 tar.c 完成?

下面的代码

const filePath = `./${name}`; // This can also be an array of paths.
const tarFile = `${filePath}.tar`
await tar.c(
  {
    gzip: {
     sync: true,},file: tarFile
  },[filePath]
)

let fileOriginal = `./${name}.tar`
let fileEncoded = `./${name}.enc`
var cipher = crypto.createCipheriv('aes-256-cbc',key,iv);
var input = fs.createReadStream(fileOriginal);
var output = fs.createWriteStream(fileEncoded);

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。