如何解决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 举报,一经查实,本站将立刻删除。